티스토리

1D1C
검색하기
블로그 홈

블로그 홈

1D1C

1d1cblog.tistory.com/m
신고

개인공부 정리 블로그

구독자
104
방명록 방문하기
구독하기

주요 글 목록

  • PCAN ISOTP 송신 시 루프백 이용해서 처리 PCAN ISOTP API Write 호출 시 비동기 처리가 되기 때문에 loop back을 이용해서 제대로 모든 데이터가 처리가 되었는지 확인할 수 있습니다. void PCANISOTP::Write(const char *pData, int nSize) { cantp_msg message = {}; cantp_can_msgtype msgtype = PCANTP_CAN_MSGTYPE_EXTENDED | PCANTP_CAN_MSGTYPE_FD | PCANTP_CAN_MSGTYPE_BRS; cantp_netaddrinfo isotp_nai = {}; isotp_nai.source_addr = N_SA; isotp_nai.target_addr = N_TA_PHYS; isotp_nai.target_type = P.. 공감수 0 댓글수 0 2024. 3. 22.
  • PCAN ISOTP 데이터 모두 수신 됐는지 체크 하는 방법 PCAN ISOTP API를 이용해서 데이터를 수신할 때 단순히 Read하는 것이 아니라 ISOTP Read 과정이 모두 완료 되었는지 확인하고 Read를 진행할 수 있는 방법이 있습니다. int PCANISOTP::read_segmented_message(cantp_handle channel, int &nbMsgRead) { cantp_msg rx_msg; cantp_msgprogress progress; // ISO-TP 메시지가 다 들어왔는지 체크하기 위함 memset(&progress, 0, sizeof(cantp_msgprogress)); status = CANTP_Read_2016(channel, &rx_msg, NULL, PCANTP_MSGTYPE_NONE); if (CANTP_StatusI.. 공감수 0 댓글수 0 2024. 3. 22.
  • PCAN ISO-TP Mapping 관련 정리 글 PEAK CAN ISO-TP API를 사용하면 PC에서도 USB 등을 이용하여 ISO-TP 통신을 사용할 수 있습니다. PCAN-ISO-TP API: PEAK-System Description ISO-TP (ISO 15765-2) is an international standard for the transfer of data packages via CAN. Above CAN (OSI layers 1 and 2), the protocol covers the OSI layers 3 (Network Layer) and 4 (Transport Layer). It can transmit data packages of up to 4 www.peak-system.com 이 API를 사용하면서 가장 헷갈리는 부분 중 .. 공감수 0 댓글수 1 2024. 3. 22.
  • 윈도우 내부망 서버 시간 동기화 처리(NTP) 보안이나 특정 상황에 의해서 외부망에 연결하지 않는 내부 서버들이 있습니다. 이럴 경우 시간 동기화에 문제가 발생할 수 있는데 윈도우 NTP 서버 / 클라이언트 기능을 이용하여 위 문제를 해결할 수 있습니다. 하지만 이 해결 방법은 하나의 인터넷에 연결된 서버가 같은 망에 적어도 1개는 존재해야 가능합니다. 구성은 아래와 같습니다. 외부망과 연결된 서버는 time.windows.com 같은 Time Server와 시간을 동기화 해주고 그 동기화 된 시간을 내부서버가 Windows NTP 기능을 이용해 다시 동기화 합니다. 먼저 외부와 연결된 서버에 설정을 해줍니다. [Windows 방화벽] > [고급 설정] > [인바인드 규칙] > [새 규칙] 으로 들어가 규칙을 추가합니다. NTP의 경우 123번 포트.. 공감수 8 댓글수 0 2023. 5. 18.
  • 리눅스 명령 결과 변수에 저장하기 명령 결과를 변수에 저장하고 싶을 때 아래처럼 사용합니다. 예를 들어 특정 프로세스의 PID 값을 활용하고 싶을 때 아래처럼 popen을 통해 값을 저장합니다. void GetCommandResult() { char buf[512]; FILE* pCmd = popen("pidof -s Process","r"); fgets(buf, 512, pCmd); pid_t pid = strtoul(buf, NULL, 10); } 공감수 0 댓글수 0 2023. 4. 4.
  • Wayland 상단 툴바 없애기 https://stackoverflow.com/questions/30605949/is-it-possible-to-remove-weston-toolbar Is it possible to remove Weston toolbar? Is it possible to have weston run without the toolbar at the top and change the background to black. So that when i have a script in init.d it calls weston first than my qt5 app? such as: weston &... stackoverflow.com 공감수 0 댓글수 0 2022. 12. 8.
  • 리눅스 ftp 전송 쉘 스크립트 #!/bin/sh USER="계정이름" PW="패스워드" IP="FTP 클라이언트 IP" FILE "FILE 경로" cd $1 ftp -n $IP 공감수 0 댓글수 1 2022. 10. 5.
  • 리눅스 프로세스 이름으로 Kill 리눅스에서 kill 명령어를 사용하려면 기본적으로 pid를 넘겨서 종료시킵니다. 이럴때마다 내가 종료시킬 프로세스의 PID를 ps 명령어를 통해 확인하고 넘겨주는게 귀찮다면 아래 명령으로 프로세스 이름만으로 종료시킬 수 있습니다. kill `ps -C ProcessName | grep ProcessName | gawk '{print$1}'` 명령어를 앞에서부터 짤라서 보면 ps -C ProcessName은 ProcessName 프로세스의 정보를 출력해줍니다. grep을 통해 해당 문자에 대한 정보를 파싱하고 gawk (awk) 를 통해 원하는 필드(데이터)만을 추출합니다. gawk (awk)에 대한 자세한 내용은 https://recipes4dev.tistory.com/171 를 참고하시면 도움이 되실거.. 공감수 0 댓글수 0 2022. 10. 5.
    문의안내
    • 티스토리
    • 로그인
    • 고객센터

    티스토리는 카카오에서 사랑을 담아 만듭니다.

    © Kakao Corp.