자동차 임베디드 SW120 J1979 개요 및 obd on uds https://www.vector.com/int/en/products/solutions/diagnostic-standards/obdonuds/ 벡터 홈피 참조 J1979는 OBD-II 표준이다. OBD 통신에서 사용되던 여러가지 서비스들을 Uds통신 기반으로 구현되도록 정의하는 표준이 J1979-2 (obd on uds)이다. 기존 uds통신 구현된 것 건드리지않고 obd 기능 추가로 확장해서 구현하면 된다. J1979-3은 전기차용 obd on uds라 할 수 있다. ZEV On Uds 라고 부른다. Z는 Zero Emission 을 의미함(전기차니까) J1979-2는 J1979-3 을 포함한다. J1979-2 , J1979-3 에서는 3Byte의 DTC를 사용한다. 정확히 말하면 기존 uds에서 사용.. 2023. 8. 28. 진단통신 Snapshot Data, Extended Data Snapshot data : 고장이 발생했을때. 고장 발생 당시의 여러가지 데이터를 Snapshot처럼 찍어서 기록해두는 데이터 ex) 차속, 엔진 RPM, 조향각, 배터리전압 , 배터리 온도 등등 Extended Data : 주로 고장발생과 관련된 통계정보를 담고 있는 데이터 ex) 고장 발생 누적횟수 Snapshot Data에 포함되는 데이터들은 모두 진단통신의 DID를 갖는 데이터로 구성됨 각 DTC(Event) 마다 Snapshot data의 형태를 달리 할 수 있다. 예를 들어 DTC Code1번에 대한 Snapshot Data에는 차속, 배터리 전압 을 저장 DTC Code2번에 대한 Snapshot Data에는 엔진 RPM,배터리온도 를 저장 이런식으로 DTC 마다 매핑되는 Snapshot .. 2023. 8. 2. Autosar DEM. Event Memory 개요 StorageTrigger Freeze Frame - Did를 갖는 데이터들로 구성 - 각 DTC마다 서로 다른 형태의 스냅샷으로 구성 가능 - 스냅샷 데이터 여러개 저장하는 것도 가능한데, 이것은 Calculated냐 Configured냐에 따라 동작컨셉이 조금 다르다. - 저장된 Freeze frame에 붙이는 번호가 record number 인데 , 이 record number 를 붙이는 규칙은 Calculated 냐 Configured 냐에 따라 달라진다. Calculated type인 경우 스냅샷이 찍힐때마다 레코드넘버가 1.2.3 이런식으로 1씩 증가하면서 할당된다. 참고로 레코드넘버는 각각의 이벤트마다 독립적으로 관리된다. 한편, Snapshot data를 capture하는 조건. 다시 말하.. 2023. 8. 2. AURIX MCMCAN 모듈4 -Tx Handling 노드마다 총 32개의 Tx Buffer를 가진다. Tx Buffer는 Dedicated Buffer , Tx FIFO , Tx Queue 3가지 타입으로 나뉜다. 32개의 Tx Buffer를 얘네가 나눠서 쓰는 컨셉이다. 이때, Tx FIFO랑 Tx Queue 는 동시에 사용할 수는 없다. Dedicated Buffer + Tx FIFO 또는 Dedicated Buffer + Tx Queue 조합으로 사용가능하다. 별도의 레지스터를 통해서 각 타입의 버퍼를 몇개 사용할지 정해야한다. 예를 들면 dedicated Buffer 10개, TX FIFO 5개 이런식으로 정해서 쓴다. 두 버퍼의 총합은 최대 32개이다. 각 버퍼에 송신하려는 Tx message의 ID값과 데이터 영역 등을 셋팅하고 해당 버퍼와 매.. 2023. 7. 18. AURIX MCMCAN 모듈3 - Rx Handling 수신된 메세지를 담고 있는 공간은 총 3가지 타입이 존재한다. RX FIFO0 ,RX FIFO1, Dedicated Buffer 각 타입 모두 최대 64개의 메세지 정보를 저장할 수 있다. 한편 특정 메세지를 수신했을때 해당 메세지를FIFO로 보낼건지 Dedicated Buffer로 보낼건지 셋팅하는 부분은 필터이다. 노드별로 standard id용 필터 128개 extended id용 필터 64개가 존재한다. 각 필터에서는 필터,마스크에 대해 셋팅을 하고, 필터 마스크와 매핑되는 ID를 가진 메세지를 수신했을때 그 결과를 RXFIFO0 , RXFIFO1, Dedicated Buffer 중에 어디에 저장할지를 지정한다. 여기서 필터와 마스크란 수신된 메세지의 ID와 마스크를 AND 연산한 결과와 필터 값.. 2023. 7. 18. AURIX MCMCAN 모듈2 2023. 7. 18. Aurix MCMCAN 모듈 1 2023. 7. 18. T32 멀티코어 디버깅 명령 System down 상태에서 수행해야 함 core.number 3 코어갯수 셋팅(예시의 경우 3개 셋팅)core.list셋팅한 코어목록 나열됨 여기서 마우스 더블클릭해서 디버깅하려는 코어 선택하면 된다. 2023. 5. 12. NVM Write All 그리고Changed State Nvm_WriteAll 이라는 함수는 ECU Shutdown 시퀀스에서 불리는 함수로, 제어기가 shutdown 되기전에 여러가지 nvm data를 write 한다. 이 때 모든 nvm을 싹 다 write 하는건 아니고 write all 대상에 포함되는 블록만 한다. 그리고 그 중에서도 블록의 state가 Changed 인것만 write 한다. 해당 state를 CHANGED 로 변경하는 함수가 SetRamBlockStatus 함수인데 이걸 호출해서 write 될지말지를 정한다. 근데 알고보니 SetRamBlockStatus 함수호출 이외에도 State를 Changed로 변경하는 case가 여럿있었다. 정확한 내용은 Autosar sws 표준문서에 나와있는데 그 중에 하나가, nvm read 했을때 De.. 2023. 5. 4. 이전 1 2 3 4 5 6 7 8 ··· 14 다음