TLC5947 Adafruit 24-Channel 12-bit PWM LED Driver (feat. Open103V) TLC5947 많은 수의 LED를 제어하기 위해서는 MCU의 GPIO포트가 많이 필요하다. GPIO포트 사용을 줄이기 위해 PWM을 확장할 수 있는 Driver칩이 TLC5947칩이다. Tip : TLC5947로 LED를 제어할 경우 Anode 타입의 LED를 제어할 수 있다. DataSheet : TLC5947과 MCU의 연결방법은 아래와 같다. DataSheet 1page. TLC5947은 SPI인터페이스를 지원하며, 아래와 같이 Controller에 연결하면 된다. Controller TLC5947 SPIx_MOSI SIN SPIx_SCK SCLKGPIOxXLAT GPIOx BLA..
애노드와 캐소드 차이점 Ancode & Cathod Anode : (+)극으로 전자를 방출하거나 산화(oxidation) 반응이 일어나는 전극 Cathod : (-)극으로 전자가 들어오가나 환원(reduction) 반응이 일어나는 전극 Anode : 양극이 모두 묶여 한꺼번에 전원을 주면 반대 방향의 캐소드에 MCU 포트가 물려 LOW 신호를 주면 동작하는 방식 Cathod : 음극이 모두 묶여 그라운드로 향하게 되는데 MCU에서 HIGH 신호를 주면 동작하는 방식 📌 LED를 여러개 사용할 경우 보통은 Anode방식을 사용하게 된다. 보통 MCU에서 +5V나 3.3V를 내보내게 되는데 LED의 수가 많아질수록 전류 소모량도 많아지고, 제한된 전류로 인해 LED밝기가 줄어들거나 때때로 LED가 동작하지 ..
비트맵 파일 포맷 개요 Open103V 패키지의 TFT(ILI9325) LCD에 비트맵 이미지를 출력하기 위해 16-bit Interface를 지원하는 TFT에 맞게 16비트 비트맵에 대하여 알아볼 필요가 있다. 비트맵 파일 포맷 비트맵 파일은 픽셀 하나를 몇 비트로 저장하느냐에 따라 구조가 달라진다. TFT에 출력을 위하여 16비트 비트맵을 사용하였다. 아래는 비트맵 파일의 구조이다. 비트맵 파일 헤더는 비트맵 파일 식별 정보, 파일 크기, 데이터 위치 등의 정보를 담고 있으며 DIB(Device Independent Bitmap) 헤더는 가로, 세로 크기, 해상도, 픽셀의 비트 수 등 그림의 자세한 정보를 담고 있다. 픽셀 데이터에는 그림 파일의 실제 색상 정보가 들어간다. 단, 픽셀당 색상 수가 1..
STM32CubeMX 설치 설치 파일 다운로드 STM32CubeMX 개발 툴을 설치 하기위해서 아래의 링크로 ST 공식 홈페이지에 접속한다. https://www.st.com/en/development-tools/stm32cubemx.html 홈페이지에 접속을 한 후 아래와 같은 화면에서 상단의 "GET SOFTWARE"를 클릭하면 Download 할 수 있다. 아래 화면과 같이 "Get Software"를 클릭한다. 아래와 같은 화면이 나타나면 이름과 이메일 정보를 입력한다. 정보 입력 후 "Download"를 클릭하면 아래와 같은 문구가 나오는데 e-mail에 로그인해서 링크에 접속하라는 문구이다. 이메일에 접속한 후 아래의 "Download now"를 클릭하면 자동으로 STM32CubeMX 설치 파..
SPI 통신 개념 연결 방법 SPI 1:1 통신 선 연결 SCLK - 클럭 전송 라인 MOSI - Master Out Slave In MISO - Master In Slave Out /CS - Chip Select (Active Low:Low 상태에 동작하는 것을 의미) ※ 슬레이브의 경우 - MOSI 핀은 SDI 또는 DI - MISO 핀은 SDO 또는 DO 로 표기되는 경우도 있음. SPI 1:N 통신 선 연결 3 + N개(/CS)의 핀 필요 SCLK을 통해 동기식 통신을 하며 SCLK는 Master 장치만 발생시킬 수 있다. SPI는 동시에 1개의 장치와 통신할 수 있으며 다수의 장치와 통신할 경우 CS핀을 통신할 대상 장치만 Low로 신호를 보내고 통신하지 않는 장치들은 High로 신호를 출력해야..
PWM (Pulse Width Modulation) 펄스 폭 변조 Enhanced PWM Module SyncWorks TR28335 LAB1_A.c /*============================================================================================ 헤더파일 선언 및 선행처리 지시구문 정의 ============================================================================================*/ #include "DSP28x_Project.h" /* Device Headerfile and Examples Include File */ #define BUFF 1024 /* 0x..
FLASH API FLASH API 란 무엇인가? 📌 Flash API (Flash Application Program Interface) TI에서 제공하는 라이브러리와 함수들의 집합 사용자 Application 상에서 프로세서의 내부 플래시를 사용할 수 있음 📌 Flash API가 제공하는 함수들 함수명 설명 Flash_Erase() Flash 에서 선택한 섹터를 Erase 해주는 함수 Flash_Program() Flash 에서 데이터를 Program해주는 함수 Flash_Verify() Flash 에서 데이터가 올바로Program 됐는지 검증해주는 함수 Flash_ToggleTest() 프로그램의 Flash API 사용을 위한 클럭 설정이 올바로 됐는지 테스트 해주는 함수 Flash_DepRecov..
RFID(UID/Write Multiple Blocks/Read Multiple Blocks) NFC 패시브 태그(수동적 태그) : 리더기가 전기를 보내지 않으면 죽어있는 일반카드 액티브 태그 : 밧데리가 들어 있고 전류가 흐르는 태그 NFC(근거리 무선 통신)란?NFC는 일반적으로 13.56M이다.NFC는 리더기 간의 통신이 가능하다. UID 같은 모양의 카드일지라도 고유 카드넘버가 존재한다. 두가지 카드를 이용하여 카드넘버를 출력하는 프로그램을 제작해 보자.UID는 스펙에서 다음과 같이 설명되어 있다. UID는 8 ~ 15번 bit로 8개의 bit가 존재한다. UID1234567891011121314151617181920212223242526272829303132333435363738394041424..