TMS320F28388D DSP DMA 사용법: DriverLib API로 DMA 설정 및 코드(수정)
1. TMS320F28388D DMA 개요TMS320F28388D는 Texas Instruments의 C2000 시리즈 32비트 마이크로컨트롤러로, 최대 6개의 DMA(Direct Memory Access) 채널을 제공합니다. DMA 모듈은 CPU 개입 없이 메모리 간 데이터 전송을 처리하여 실시간 애플리케이션에서 효율적인 데이터 이동을 가능하게 합니다. 모터 제어, 데이터 로깅, ADC 결과 처리 등에 적합합니다.DMA 모듈의 주요 특징채널: 6개의 독립적인 DMA 채널 제공.트리거 소스: ePWM, ADC, SPI, McBSP, 외부 인터럽트 등 다양한 트리거 소스 지원.전송 모드: 단일 전송, 블록 전송, 버스트 전송 지원.데이터 크기: 16비트 또는 32비트 단위 전송.메모리 액세스: RAM, F..
2025. 8. 17.
STM32로 Modbus RTU Slave 코드 구현: DMA와 저전력 최적화
모드버스 RTU는 산업 자동화에서 널리 사용되는 통신 프로토콜입니다. 이 글에서는 STM32L432KC 마이크로컨트롤러를 사용해 Modbus RTU 슬레이브를 구현하는 방법을 설명합니다. DMA, 링버퍼, 저전력 모드, 80MHz 클럭을 활용해 최적화된 코드를 제공하며, 초보자와 숙련자 모두를 위해 상세한 주석과 설명을 포함하였습니다.1. 모드버스 RTU 개요모드버스 RTU(Remote Terminal Unit)는 모드버스 프로토콜의 바이너리 기반 변형으로, 주로 시리얼 통신(RS-232, RS-485, RS-422)을 통해 산업 자동화 환경에서 장치 간 데이터를 교환하는 데 사용됩니다. 모드버스 RTU는 마스터-슬레이브 구조를 따르며, 간단하고 효율적인 데이터 전송으로 인해 PLC, SCADA, HMI..
2025. 8. 13.
STM32H503RB I3C 통신 코드 구현: 초보자를 위한 상세 가이드
MIPI I3C(Improved Inter-Integrated Circuit)는 I2C의 후속 프로토콜로, 최대 12.5MHz의 데이터 전송 속도, 저전력 설계, 동적 주소 지정, 인-밴드 인터럽트(IBI)를 제공합니다. STM32H5 시리즈는 I3C 하드웨어 컨트롤러를 내장하여 센서, 메모리, 카메라 등과 효율적으로 통신할 수 있습니다. 이 가이드는 STM32H5(NUCLEO-H503RB)와 LSM6DSO 센서(X-NUCLEO-IKS01A3)를 사용해 I3C 통신을 구현하는 방법을 단계별로 설명합니다. 동적 주소 지정, 가속도 데이터 읽기, IBI 처리, UART 디버깅을 포함하며, STM32CubeMX와 STM32CubeIDE를 활용합니다. 모든 코드에는 이해를 돕도록 상세 주석을 추가하였습니다.키워..
2025. 8. 10.