라벨이 Programming인 게시물 표시

STM32 Study (1) Install Compiler IAR

이미지
 I will explain installing and download the compiler before starting the STM study. 이번 스터디는 컴파일러는 IAR을 사용하고 하드웨어는 요즘 핫한 STM32G070RB가 장착된 NUCLEO보드를 사용합니다. 사용해보면 알겠지만 상용컴파일러와 무료컴파일러는 차이가 있습니다. 오늘은 STM 스터티 첫번째 시간으로 개발환경 구축에 있어 IAR 컴파일러 다운로드와 설치를 설명합니다. 1. IAR compiler Download (https://www.iar.com/kr/) - 인터넷 주소창에 IAR 사이트로 이동 - 메뉴바의 PRODUCTS 를 눌러 나오는 하단메뉴에서 아키텍처 메뉴 아래에 있는 ST 를 클릭 - 마우스 휠을 돌려 페이지 중간쯤가면 Supported architectures 라는 글과 박스 3개가 보임. - 보이는 박스에서 Arm 을 클릭합니다. - 마우스 휠을 돌려 페이지 중간쯤가면 보이는 화면의 Get Trial version 을 클릭합니다. - 우리는 풀 어플리케이션을 개발할게 아니라 MCU기능별 활용법을 공부할거라 코드사이즈 32Kbyte로 사이즈가 제한된 킥스타트 평가판을 사용합니다. - 설치프로그램은 30일 평가판과 킥스타트 평가판이 동일하고 설치시 둘중 하나를 선택하게 되어 있습니다. - 설치 중간 과정에서 반드시 킥스타트 평가판을 선택하고 설치하도록 합니다. - 설치방법은 일반적으로 NEXT, NEXT, NEXT로 진행하면 됩니다. - 중간에 설치버전을 결정할때 30일버전 말고, 용량제한 버전인 킥스타트를 선택합니다. 다음 시간에는 ST관련 소프트웨어(CubeMX)를 설치해 보겠습니다.

Modbus RTU 및 CRC 계산 검증하기 (CRC calculation)

이미지
펌웨어를 개발하다보면 CRC 계산을 해야되는 경우가 종종 있습니다. 필자가 즐겨쓰는 CRC 계산 사이트를 소개하고 값을 입력해보며 설명 해보겠습니다. https://www.lammertbies.nl/comm/info/crc-calculation?crc=8005&method=hex 위의 그림은 해당사이트의 CRC 계산 데이터를 입력하는 창입니다. 저는 주로 modbus rtu 데이터를 검증할때 사용하며 위에서 3번째에 있는 CRC16(Modbus) 가 모드버스 CRC 값이 됩니다. [사용방법] Input type을 ASCII와 HEX중 선택하고, 그 위 입력창에 계산을 원하는 데이터를 모두 입력후  Calculate CRC 버튼을 누르면 위 박스 데이터에 패킷 형태에 맞게 CRC가 자동계산됩니다. 예제 데이터를 입력해보며 같이 확인해 보겠습니다. 필자의 경우 modbus rtu 데이터 패킷을 master에 아래와 같이 보내려고 합니다. 이때 CRC값을 데이터끝에 2byte로 보내야 하는데 이럴때 이 계산기가 유용하게 사용됩니다. 펌웨어를 통해 내가 계산한 CRC값과 검증이 필요할때도 사용하면 유용합니다. 자~!! 데이터를 한번 보낸다고 가정하고 CRC를 계산해보겠습니다.  Read temperature data of Modbus RTU (Master to Slave) Modbus Slave ID Function Code Start Protocol Address Quantity of Registers CRC16 Hi Lo Hi Lo Lo Hi C0 03 9C 40 00 02 ?? ?? ...