목차 TMS320F281x ADC 특징 두개의 Sample/Hold (S/H) 탑제된 파이프란인 방식(4 Stage)의 12bit ADC Simultaneous sampling, Sequential sampling modes 두가지 샘플링 모드 지원 입력 허용 전압: 0V ~ 3V 샘플/홀드의 신호 획득 시간(S/H acquisition time window) 조절용 클럭 분주 회로 탑재 아날로그 먹스가 탑재된 16채널 입력 16개의 결과 저장용 버퍼 (ADCRESULT0 ~ 15) 두가지 인터럽트 모드 제공 every end of sequence(EOS) : 신퀀스 동작 매 완료시 마다 every other EOS : 시퀀스 동작 매 두 번째 완료 시 마다 오토 시퀀스 탑재 최대 16채널 순서 임의 조..
CCS 버전이 12.x 버전으로 변경됨에 따라 사용하던 11.x 버전 및 관련 SDK를 삭제하고, 새롭게 개발환경 구축을 하면서 그 과정에 대해 기록해본다. C2000WARE SDK 설치 사용할 MCU는 TMS203F2811PBKA로 C2000 계열에 포함됨으로 C2000WARE SDK를 설치한다. 아래 링크로 TI 공홈의 C2000WARE SDK를 설치한다. (23-12 기준 version: 5.01.00.00) ControlSUITE 라는 SDK가 있는데 업데이트지원은 중단되고, C2000WARE로 대체되었기 때문에 필요에 따라 설치를 고려할 수 있다. C2000WARE Software development kit (SDK) | TI.com lock Windows Installer for C2000W..
목차 STM32 개발 환경 정보 STM32F103VGT6 (LQFP100) 사용 STM32CubeMX Version 6.1.2 사용 STM32CubeIDE Version 1.10.0 사용 테스트 목적 회로카드에 Ethernet 케이블만을 을 사용하여 어플리케이션을 다운로드 하기위해 테스트 하였으며, W5500칩 라이브러리의 FTP Client를 수정하여 사용하였다. STM32F103VGT6 Flash 메모리 정보 아래 데이터시트 내용에 따르면 STM32F103xG 모델은 XL-density devices 1024 Kbytes 크기의 내장 Flash 메모리를 탑제하고 있음을 알 수 있다. PM0068 STM32F10xxx XL-density Flash programming (version 2.3) Flas..
사용 MCU: STM32F103 프로젝트명: WHITE BOX-스위치 박스 [상황] 메인보드에서 여섯개의 스위치 박스를 SPI 통신으로 컨트롤 하며 스위치 박스는 컨트롤에 따라 16x16 DOT-Matrix를 TLC5955 LED 드라이버를 이용해 출력한다. 스위치 박스 6개 동시에 전원을 넣었지만 DOT-Matrix 밝기가 각각 다르게 출력되었다. 밝기 오류가 나는 버전에서는 MCU 초기화 부분에 TLC5955_Init 함수를 사용하여 1회 초기화 하였다. 그러나 밝기가 일정치 않아 TLC5955_Refresh 함수(초기화 함수의 일부분)를 추가 하고, TLC5955에 컨트롤 데이터를 LATCH 시킬때마다 TLC5955_Refresh 함수를 호출하여 밝기 설정을 다시 하도록 하였다.
사용 MCU : STM32F103 프로젝트명 : WHITE BOX-스위치 박스 [상황] 메인 보드는 SPI-Master로 동작하고 스위치 박스는 SPI-Slave로 동작한다. 메인보드와 SPI 통신중에 통신에러가 빈번하게 발생하여 도트메트릭스가 번쩍되는 오류를 발생시켜 STM32 커뮤니티에서 구글링 결과 SPI BSY Flag 체크 하는 부분에 레지스트 오류가 있다는 글을 보게되었다. STM32 SPI HAL 라이브러리 에서 위와 같이 SPI_CheckFlag_BSY 함수의 내용을 주석처리 하였다. BSY Flag 감시를 하지 않지만 SPI 통신 동작에는 아무런 영향이 없었다. 에러가 사라지고 앞서 언급한 오류를 해결하였다.
STM32 PWM 모드 사용 (feat. open103V) PWM 이란 ? PWM(Pulse Width Modulation)이란, 펄스폭 변조로 만들어지는 신호로서, 한 주기동안 H와 L의 비율(Duty rate)을 변화시켜 변조하는 방식이다. PWM은 신호의 주기, 펄스 폭(Duty rate), 전압 레벨로 정의 할 수 있다. PWM 모드 PA0 핀에 1kHz 에 듀티비 50%의 PWM 파형을 생성한다. TIM2는 APB1 Clock에 따라서 72MHz를 Source로 입력받고 Counter Period 가 999이고 Prescaler가 71이기때문에 1kHz로 동작한다. Pulse 값을 500으로 설정하였기 때문에 Duty Ratio는 500/(999+1) = 50%가 된다. 주기설정 계산은 아래와 ..
STM32F103 Timer(Counter Mode) (feat. open103V) TIMER (TIM2) DataSheet 분석 STM32F103 칩 안에는 여러개의 타이머가 있다. 각 타이머는 아래 DataSheet의 내용과 같이 16bit로 동작한다. 타이머의 기능을 살펴보면 여러가지 모드가 있는데 가장 기본적인 Counter Mode(Upcounting & Downcounting)에 대하여 살펴본다. 1초 단위로 카운터를 세는 일부 코드는 아래와 같다. static void MX_TIM2_Init(void) { TIM_ClockConfigTypeDef sClockSourceConfig = {0}; TIM_MasterConfigTypeDef sMasterConfig = {0}; htim2.Insta..
Flash Loader Demonstrator 사용법 (feat. Open103V) 목차 Flash Loader Demonstrator 설치 FLASHER-STM32 - STMicroelectronics FLASHER-STM32 - STM32 Flash loader demonstrator (UM0462) (replaced by STM32CubeProgrammer), FLASHER-STM32, STMicroelectronics www.st.com 위의 링크에 접속한 뒤 아래의 그림과 같이 Download 를 클릭하여 최신버전의 Flash Loader Software를 받는다. 이러한 부트 프로그램이 필요한 이유는 JTAG 디버거는 고가이기도 하고 커넥터 핀 수를 많이 필요로 하기때문에 개발중에는 이와 같이..