STM32CubeMX로 코드를 생성하고 Linux Machine 과 연결한 뒤 HAL_I2C_Slave_Receive_DMA 으로 읽기를 시작한다.
Linux Machine에서 i2cdetect 명령을 실행하면 STM32에서는 Hard Fault가 발생한다.
비슷한 문제인거 같다.
stm32f1xx_hal_i2c.c의 I2C_DMAAbort에서
/* Clear Complete callback */
hi2c->hdmatx->XferCpltCallback = NULL;
hi2c->hdmarx->XferCpltCallback = NULL;
RX에만 DMA를 활성화 시킨 경우 hdmatx가 NULL이기 때문이다..
반응형
'임베디드기기' 카테고리의 다른 글
Installing OpenWRT on the eMMC of BPI-R4 (0) | 2024.07.27 |
---|---|
Orange PI Zero LTS 온도 음수로 나올 때 (0) | 2021.07.20 |
ERROR: Cannot read register while CPU is running 디버깅 오류 (0) | 2020.08.29 |
아두이노 부트로더 이용해서 펌웨어 업로드하기 (0) | 2016.01.30 |
Orange Pi - Allwinner H3 커널 컴파일 1 [실패] (0) | 2015.07.31 |
댓글