본문 바로가기

STM32   ( 101 )


STM32. L4x6. DAC (Digital to Analog Converter) 개요. STM32L4x6 DAC 2개의 DAC 출력가능. 8/9/12 bit, 전압출력형 주요특징. • One DAC interface, maximum two output channels • Left or right data alignment in 12-bit mode • Synchronized update capability • Noise-wave and Triangular-wave generation • Dual DAC channel for independent or simultaneous conversions • DMA capability for each channel including DMA underrun error detection • External triggers for conversion.. 2018. 12. 8.
STM32. L4x6. ADC ( Analog to Digital Converter ) 개요. STM32L4x6 ADC 3개의 ADC : ADC1, ADC2, ADC3 ADC 타입, 해상도 : SAR, 12bit. ADC 채널 : 20 multiplexed channels. 특징들. • High-performance features – Up to 3 ADCs, out of which two of them can operate in dual mode: ADC1 is connected to 16 external channels + 3 internal channels ADC2 is connected to 16 external channels + 2 internal channels ADC3 is connected to 12 external channels + 4 internal channels –.. 2018. 12. 8.
SW4STM32. 사용자 정의 소스 경로 추가방법. SW4STM32 에서 사용자 정의 소스 경로 추가 방법. SW4STM32 프로젝트 에서 기본 설정된 소스 경로외에 사용자 정의 소스 경로 추가 방법. 상황예. 1. 프로젝트 폴더에 사용자 추가한 LXSL 폴더가 있고 하위에 LXSL_SET0, 1, 2 .. 등의 폴더 있는 구조. 2. 상기1의 폴더에도 소스가 있음을 SW4STM32 에서 설정하는 것. 3. 메인폴더인 LXSL 만 추가하면 하위 폴더는 컴파이일시 자동포함된다. 결론적으로 아래 그림 처럼 프로젝트 속성에서 Source Location 이라는 곳에 LXSL 경로 추가되면된다. 동영상. - 상기 상황예의 설정과정을 보이고 있다. ///1929 2018. 11. 28.
STM32 개발시 SW4STM32 / KEIL MDK-ARM 멀티 개발 환경 개요 타겟 MCU STM32 펌웨어 프로젝트 생성시 SW4STM32 에서도 작업가능하고 , 동일 프로젝트를 KEIL MDK-ARM 에서도 작업가능하게 프로젝트 멀티 IDE 환경( 폴더 및 STM32CubeMX 에서 프로젝트 생성등 ) 구축 방법 정리. SW4STM32, KEIL MDK-ARM 동시 개발환경 필요성. - SW4STM32의 컴파일러와 KEIL MDK-ARM 의 컴파일러가 다르고, 동일 소스임에도 컴파일러에 따라 다른 작동을 보여주는 경우도 간혹 있다. 2개 컴파일러 중 더 만족스러운 동작을 보이는것을 최종 활용할 목적 혹은 2개 IDE모두 오류없는 소스코드의 완성도 높일 목적.- KEIL MDK-ARM 은 유료 툴이고 가격도 비싼 편이다. 팀내 다른 사람이 이미 MDK-ARM 라이센스 모두 .. 2018. 11. 27.
STM32.L4x6시리즈 내장 플래시 개요 STM32L4x6 내장 플래시 메모리. 메모리 용량 : STM32L4x6 계열의 내장 플래시 메모리 용량 256kbyte, 512kbyte, 1Mbyte 지원.메모리 구성 : main memory 2 banks (Bank1, Bank2), Information Bblock 32kbyte per bank. erase 특성 : Page erase 2kbyte, Bank erase and Mass erase 본 글의 정보 from STM32L4x6 TRM pdf 페이지 96 부터. 플래시 메모리 맵 512kbyte 인 경우. 주의사항. - Size 2k byte는 정확하게는 2048 byte임. - Bank2 의 Page 번호는 Page 256으로 시작하고 있지만 코드내에서 접근시 Page 256이 Pa.. 2018. 11. 12.
STM32CubeMX. USB (HID) 첫 등록 : 2018.04.29 최종 수정 : 2023.07.12 단축 주소 : https://igotit.tistory.com/1640 2018. 4. 29.
LoRa. 모듈조합 LoRa + STM32 2개 보드 조합 1. LoRa 보드 : I-NUCLEO-LRWAN12. STM32 보드 : NUCLEO-L476RG 외형. ///1603. 2018. 1. 4.
ST-LINK V2. firmware update. ST-LINK/V2 펌웨어 업데이트 ST-LINK V2 내장된 MCU 의 펌웨어 업데이트 위한 방법 정리. 방법1. STM32 ST-LINK Utility S/W 를 이용하는 방법. - 본 프로그램에서 실제 펌웨어 업데이트 하는 기능은 하기 2의 ST-Link Upgrade S/W 를 실행하고 있음. 방법2. ST-Link Upgrade S/W 를 이용하는 방법. 방법3. STM32CubeIDE 실행하여 메뉴 : Help -> ST-Link Upgrade 이용하는 방법. 방법1. STM32 ST-LINK Utility S/W 를 이용하는 방법. STM32 ST-LINK Utility 다운로드 / 기본 사용법 : http://igotit.tistory.com/901 STM32 ST-LINK Utility .. 2016. 7. 16.
STM32L4x6. SPI 개요. STM32L4x6 SPI 3개의 SPI : SPI1, SPI2, SPI3.SPI 최대 클럭 : fpclk / 2. 80MHz 시스템 클럭인경우 최대 40MHz.가능. 4bit~16bit data sizeNSS pulse mode 가능.Rx FIFO : 32bit. DMA 가능.Tx FIFO : 32bit. DMA 가능.Master or Slave / Multi master mode 가능. Function Block MOSI : Master out slave in. MISO : Master in slave outSCK : SPI clock out.NSS : Slave selection pin.설정에 따라 아래와 같은 3개중의 하나로 동작. 1. slave select. 2. synchronize t.. 2016. 7. 15.
STM32. SPI 인터럽트 방식. 개요 STM32의 SPI 로 읽기,쓰기 처리시 인터럽트 방식 구현. SPI 인터럽트 방식 읽기 코딩방식 요점.1. SPI 읽기 함수 호출시 Non-Blocking 함수인 HAL_SPI_TransmitReceive_IT 호출. 2. 상기1 의 명령에 의하여 SPI 읽기 완료시 실행되는 인터럽트 핸들러에서 읽은데이터 활용하는 처리부등 추가. 상세. CubeMx 에서의 설정. 인터럽트 핸들러 추가. 함수이름을 void HAL_SPI_TxRxCpltCallback(SPI_HandleTypeDef *hspi) 로 하여 구현한다. 이 함수의 선언은 이미 stm32l4xx_hal_spi.h 에 되어있다. 본 글 포함된 상위 정리장소 http://igotit.tistory.com/244 ///722. 2016. 7. 15.
STM32. GPIO 속도 향상. 개요. STM32의 GPIO 속도 향상 위한 3가지 조치별 실측.1. STM32CubeMX에서 GPIO 설정시 속도를 Very High 로 설정. - GPIO출력함수 HAL_GPIO_WritePin 이용.2. 상기1의 상태에서 GPIO출력을 레지스터 직접 접근하여 출력.3. 상기2의 상태에서 컴파일러 옵션에서 시간최적화. 상기 1,2,3 각각에 대해서 외부소자 SPI_CS 제어용으로 STM32의 PB4 를 할당하였고, 출력속도 비교. 결론 : 1대비 2,3 동시 적용시 출력속도 증가 정도는 1대비 최대 5%정도. 시험환경타겟칩 : STM32L476RET 80MHz 구동.보드 : http://igotit.tistory.com/686컴파일러 : KEIL MDK-ARM v5.2STM32CubeMX STM32L.. 2016. 7. 15.
STM32. UART 특성 시험. 개요 STM32 UART 특성 시험. 시험환경. MCU : STM32L476 . 보드 : http://igotit.tistory.com/686 2개.system clock : 80MHz.USART2 설정. - baud rate : 10Mbps. - stop bit 1bit, data bit 8bit, parity no. STM32Cube 펌웨어라이브러리 버전 : FW_L4 V1.5.1 2016. 6. 28.
STM32. CubeMX 다른프로젝트 복사해서 만들기. 개요 STM32CubeMX 를 이용하여 프로젝트 생성시 이미 만들어둔 프로젝트를 복사해서 새프로젝트 만드는 법. 상황예. 이미 만들어둔 프로젝트 명 D1F98 이 있는데 이것과 거의 동일한 설정인 D1F107 을 만들어야 하는 경우, New Project 로 생성하는 경우 핀설정등 전부 새로 작업 해야한다. D1F98 을 복사해서 만들면 새로작업할 필요없다. 상세-STM32CubeMX 다른 프로젝트 복사해서 만들기. 단계1. 프로젝트 폴더 만들기. 새로만들 프로젝트명이 D1F107 작업폴더에서 D1F107 폴더를 새로 만든다. 아래그림의 붉박. 단계2. 이미만들어진 프로젝트의 STM32CubeMX 프로젝트 파일 복사하고 이름 변경. 본 예에서는 상기 그림의 파박폴더내에 있는 D1F98.ioc 파일을 폴더.. 2016. 6. 28.
STM32. USB HID 구현. STM32Cube + Keil 기반. 주소: https://www.youtube.com/watch?v=KwRQxGUrbN0&nohtml5=False STM32Cube + EWARM 기반. 주소: https://www.youtube.com/watch?v=xufZyQf4O7Y 2023.07.15 추가. 위 영상에서 STM32 에서 USB 호스트로 데이터 송신하는 부분 상세 -영상 : 3:46 에 보면 함수 USBD_CUSTOM_HID_SendReport 호출하여 데이터 송신함. 연관 상위 정리 http://igotit.tistory.com/244 의 STM32 STM32. nRF52. ESP32. EFM8. EFM32. PSoC 활용 정리. STM32. nRF52. ESP32. EFM8. EFM32. PSo.. 2016. 4. 14.
STM32. DfuSe Demo 사용법. 개요 STM32 의 USB DFU 유틸리티 DfuSe 에서 제공되는 DfuSe Demo 프로그램 사용법 정리. DfuSe V3.0.4 기준. 사전지식. 1. DfuSe 개요및 설치. http://igotit.tistory.com/464 DfuSe Demo 사용법. DfuSe Demo 프로그램 실행. DfuSe 3.0.4 설치하면 시작 프로그램에 등록된 것 중 DfuSeDemo 클릭하여 실행. DfuSe Demo 실행화면. - 프로그램 실행 첫화면 , 아래 파박에는 STM32칩의 DFU 모드일때만 자동으로 보인다. 관련 : STM32 가 DFU 모드상태에서 PC에서 USB 인식 상태 -> http://igotit.tistory.com/645 Upload Action 사용법. 기능 : upload 란 타겟칩.. 2016. 4. 12.
STM32. DfuSe 3.0.4 Bug 해결된 DfuFileMgr.exe, STDFUFiles.dll DfuSe 3.0.4 의 "DFU file manager" 버그 해결. DfuSe 3.0.4 의 DFU file manager는 2개의 버그가 있으며, 오류있는 코드 수정하여 정상화된 실행파일 만들었음. - 제조사 STM에서 버그 있는 상태에서 1년이 지나도록 정상화된 버전을 배포 하질 않아서, 직접 코드 수정함. - 개발툴 : Visual C++ 2015. 타겟플랫폼 : x86 (32bit). 32비트 응용프로그램은 32비트/64비트 환경에서 모두 정상실행됨. 해결된 버그. 1. hex file 열지 못하는 문제 해결되었음. 2. dfu 파일 저장시 사용자가 지정한 폴더에 정상적으로 저장되게 하였음. 상기 2개 문제외에도 DfuSe 유틸리티 들이 정상작동하지 못하는 심각한 오류들이 많은데 위 2개의 버.. 2016. 4. 12.
STM32. SPI DMA 사용법. 개요 STM32 (STM32L4x6) 에서 SPI 활용시 DMA 기반으로 통신처리하는 방법. 전체 구현흐름. 1. STM32CubeMX 의 SPI 설정에서 DMA 사용가능하게 설정. 2. 상기1에서 프로젝트 생성하여 (본 예에서는 KEIL MDK-ARM 용 프로젝트 생성함.) 3. 상기 2의 펌웨어 코드에서 SPI DMA 읽기/쓰기 처리 코드 추가. 상세 STM32CubeMX 에서 SPI DMA 설정. SPI 설정창의 탭 "DMA Settings" 에서 RX 용 TX 용 2개모두 등록한다. - 2개 모두 등록함이 중요하다. 실제 코드에서 TX는 사용하지 않고 RX만 사용하는 경우에도 설정에서 2개 모두 등록해야 RX 만 사용하는 경우에도 정상 작동한다. 위와 같이 DMA를 선택하게 되면 DMA1 Chan.. 2016. 3. 29.
STM32. L4x6 SPI 개요. 개요. STM32L4x6 계열 MCU SPI 주요특징. STM32L4x6 의 SPI Block Diagram. - FIFO 내장 : RxFIFO, TxFIFO 각각 32비트(4바이트) 용량. DMA 가능.- data size : 4bit ~ 16bit 선택가능. - SPI Motorola 모드(통상사용하는것), TI 모드 선택 가능. - Hardware CRC 선택가능 ; Tx mode에서 마지막 바이트에 CRC값 기록, 수신시 자동 CRC체크 가능.- 그외 일반 SPI 특성과 동일. from : pdf. STM32L4x6 Reference Manual 페이지 1283 부터. 상세 - SPI 데이터 송수신 RxFIFO, TxFIFO 1. 모든 SPI data 는 내장된 FIFO 를 경유 하게 되어있다. .. 2016. 3. 23.


 

비트코인




암호화폐       외환/나스닥/골드       암호화폐/외환/나스닥/골드 암호화폐/외환/나스닥/골드   암호화폐/외환/나스닥/골드
     
현물 |선물 인버스 |선물 USDT       전략매니저(카피트레이딩)     롤오버 이자 없는 스왑프리계좌
( 스왑프리 암호화폐도 거래 가능 )    
MT4, MT5 , cTrader 모두 지원     FTMO 계좌 매매운용. MT4,MT5