일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- YMODEM
- 전기차
- IOT Core
- thread
- 펌웨어
- OCPP
- 플라스크
- 파이썬
- esp8266
- raspberry
- homeassistant
- 홈어시스턴트
- Android
- 라즈베리파이
- 전기차충전
- 안드로이드
- flask
- lambda
- 서버리스
- 에버온
- 보안
- 완속충전기
- everon
- dynamodb
- 디자인패턴
- 충전기
- STM32
- AWS
- 급속충전기
- 전기차충전기
- Today
- Total
목록전기차충전기 (218)
Louie NRT Story

작성일: 21년 1월 10일 수정일: 21년 6월 1일 - STM32 CAN 통신 설정 내용 추가 Index 1. CAN 통신 설명 2. CAN 통신 설정 3. 프로그래밍 1. CAN 통신 설명 - 캔통신은 여러대의 장치와 두개의 선만으로 통신가능하며 에러처리까지 가능함 - CAN HIGH CAN LOW로 CAN BUS에 연결만 하면 됨 - 차동신호로 하므로 GND가 없으며 외부 노이즈에 강함 - CAN HIGH CAN LOW가 전기적신호가 STM 전기적 신호가 달라서 Transceiver를 설치해여야함 - 비동기식은 클럭없이 통신하는 방식 - 멀티마스터는 마스터는 통신을 관장하는 장치인데 누구나 마스터가 될 수 있음 - UART, I2C, SPI 같은 경우 Baud Rate로써 초당 하나의 Symbol..

Index 1. ADC와 DMA 설명 2. ADC, DMA 설정 3. 프로그래밍 1. ADC와 DMA 설명 1) ADC(Analog to Digital Converter) 계산방법 - STM32는 Reference 전압이 3.3v 임 - ADC 1당 전압[V[ = VREF(Voltage Reference) / Bit Resolution = 3.3v / 2^12 = 3.3v / 4096 = 0.806mV ex) ADC 값이 1500 이라면 0.000806 x 1500 = 1.209v 가 측정된 전압임 2) DMA(Direct Memory Access) 설명 - 측정된 값이 자동으로 특정 메모리에 복사되는 것 - 약간 설정으로 자동 복사되어 코딩할 필요가 없음 3) 프로그래밍 하고 하는 방식 - 기존에는 A..

Index 1. 기본적인 스위치 구성 회로 2. GPIO 외부 인터럽트 설정 3. 외부 인터럽트 코드 작성 1. 기본적인 스위치 구성 회로 - 위의 콘덴서가 없을 경우 아래와 같이 노이즈가 발생하게 됨 2. GPIO 외부 인터럽트 설정 - NVIC에서 외부 인터럽트를 활성화 시켜줌 - 인터럽트 발생시 Rising Edge 즉 버튼을 눌렀을때 인터럽트가 발생하도록 설정함. 3. 외부 인터럽트 코드 작성 - 아래의 함수를 따라가면 HAL_GPIO_EXTI_Callback 함수를 재정의 해주면 됨. - EXTI3_IRQHandler -> HAL_GPIO_EXTI_IRQHandler -> HAL_GPIO_EXTI_Callback Referece: www.youtube.com/watch?v=t9nuAqMAR6c&..

Index 1. Timer 기본 설정 2. 타이머 인터럽트 코드 작성 1. Timer 기본 설정 - 설정 전에 기존의 HCLK 값이 100MHz 임을 확인함 - TIM7 활성화함 - Prescaler와 Auto-Reload 값을 변경함 ※ 강의 예제 Auto Reload Register = Period HCLK = 168MHZ APB1 TIM CLK = HCLK / 2 = 84MHz APB2 TIM CLK = HCLK = 168MHZ 즉 한번 올라가는데 1/84,000,000[s] Prescaler: 클럭을 천천히 사용하도록함 최대 2^16 - 1 까지 샐 수 있음 한번 증가할때 다음과 같이 설정 할 수 있음 TIM CLK = APM1 TIM CLK / Prescaler ex) Prescaler를 10,..
보호되어 있는 글입니다.

Index 1. UART 설정 2. 간단한 테스트 3. printf 설정 4. float 변수 출력 5. UART 인터럽트 설정 6. 인터럽트 코드 생성 7. 배열로 수신 인터럽트 코드 생성 1. UART 설정 동기식 - 데이터를 클럭에 동기화 시켜서 한비트씩 보냄 - 물리적 클럭 전송라인 필요함 비동기식 - 시간간격으로 비트를 보냄 - 초당비트 전송 보레이트가 동 - 둘다 보레이트가 일치해야 함 - 9600 baudrate는 1초에 9600개의 Symbol(ex. 8bit - ASCII 코드)를 보낼 수 있음 - UART를 비동기식으로 설정하여 사용 할 수 있도록 설정함 - 통신의 설정들을 확인 2. 간단한 테스트 - 데이터가 들어오면 1byte씩 'a'라는 변수에 넣음 - 'a'라는 변수의 값을 1b..

Index 1. 사용하는 MCU 2. STM32CubeIDE 설치 3. STM32CubeIDE 사용법 4. 코드 작성할 때 주의 사항 5. 과거 코드 실행 6. 참고사항 1. 사용하는 MCU 1) MUC 회사 - STMicroelectronics은 스위스 제네바에 본사를 두고 이탈리아와 프랑스에 다수의 공장을 소유하고 있는 전자제품과 반도체 생산 회사임 2) 사용할 제품 - STMicroelectronics 회사의 제품으로 STM32F4 시리즈 제품을 사용 2. STM32CubeIDE 설치 - STM 공식 사이트에 접속하여 개발툴 다운로드 ※ 추가설명 - 기존에는 TrueSTUDIO와 STM32CubeMX를 따로 설치해주어야 했지만 현재는 통합되어 있음 - STM32CubeMX는 GUI를 통하여 RCC,..
보호되어 있는 글입니다.
보호되어 있는 글입니다.

Index 1. Clock 설정 2. GPIO In/Out 설정 3. 설정 내용 코드 생성하기 4. 테스트 코드 작성 1. Clock 설정 - 처음 Default로는 HSI(High Speed Internal Clock) 내부 클럭으로 설정되어 있음(정확도가 많이 떨어짐) - 사용할 보드는 외부 8MHz의 크리스탈을 사용하기 때문에 그에 맞에 설정함 - HCLK의 최대 클럭인 100MHz로 설정함. 2. GPIO In/Out 설정 - 각 Pin의 설정에 맞도록 In/Out을 설정함 3. 설정 내용 코드 생성하기 - GPIO 설정 코드는 다음과 같이 생성되었음을 알 수 있음 4. 테스트 코드 작성 - GPIO를 In/Out 할 수 있는 함수는 Driver에 모두 구현되어 있음 - 1초마다 LED가 깜빡이도..