라디오 전자 및 전기 공학의 백과사전 STM32 마이크로컨트롤러 및 이를 위한 디버그 보드. 무선 전자 및 전기 공학 백과사전 수년 동안 라디오 아마추어들은 PIC 및 AVR 제품군의 XNUMX비트 마이크로컨트롤러를 사용해 왔습니다. 저렴한 가격, 자세한 문서, 프로그래밍 및 설치 용이성으로 인해 인기가 있습니다. 그러나 그러한 마이크로 컨트롤러의 성능이 작업을 해결하기에 충분하지 않은 경우가 종종 있습니다. 가장 간단한 예는 주파수 측정기 또는 마이크로컨트롤러의 신호 발생기입니다. 여기서 측정되거나 생성된 최대 주파수는 정보 처리 또는 출력 속도에 직접적으로 의존합니다. 속도 외에도 32 비트 마이크로 컨트롤러에는 다른 제한 사항이 있습니다. 예를 들어 많은 AVR 모델에는 외부 장치에서 정보를 수신하고 동시에 처리 결과를 소비자에게 보낼 수 없는 하드웨어 직렬 포트가 하나만 있습니다. 속도와 메모리 모두에서 많은 리소스가 필요한 그래픽 표시기에 정보를 표시하는 것과 같은 "진부한"것들은 말할 것도 없습니다. 이러한 여러 가지 제한 사항을 분석한 후 저자는 STMXNUMX 제품군의 마이크로 컨트롤러로 전환하는 아이디어를 내놓았습니다. 예를 들어 가격 범주가 같은 두 개의 마이크로 컨트롤러(STM32F103C6 및 ATmega328P)를 고려하십시오. 표 1
이들의 비교 매개변수는 표에 나와 있습니다. 1. 비교 결과는 다소 놀랍습니다. 32비트 마이크로컨트롤러는 거의 모든 면에서 0,5비트 마이크로컨트롤러보다 강력할 뿐만 아니라 저렴합니다. 물론 집에서 핀 피치가 32mm인 마이크로 컨트롤러를 납땜하는 것은 그리 쉬운 일이 아닙니다. 다행스럽게도 대부분의 경우 이것은 필요하지 않습니다. 시중에는 다양한 애플리케이션에 충분한 STMXNUMX 제품군의 마이크로 컨트롤러가 있는 다양한 종류의 디버그 보드가 있습니다. 더 자세히 살펴 보겠습니다. STM32F4-디스커버리 이 보드(그림 1 참조)는 아마도 초보자가 STM 마이크로 컨트롤러를 공부하는 데 가장 편리할 것입니다. 첫째, 많은 주변 장치 세트가 있습니다. 마이크로 컨트롤러 외에도 보드에는 마이크로 전자 기계 가속도계, 마이크, 오디오 DAC, USB 커넥터 XNUMX개, 버튼 및 LED XNUMX개가 있습니다.
마이크로컨트롤러 출력은 보드의 왼쪽과 오른쪽 가장자리에 핀 커넥터를 장착하기 위한 접촉 패드로 가져와 필요한 모든 외부 장치를 쉽게 연결할 수 있습니다. 보드에 설치된 STM32F407VGT6 마이크로 컨트롤러는 1MB의 FLASH 메모리, 192KB의 RAM 및 168MHz의 클록 주파수와 같은 매우 우수한 매개 변수를 가지고 있습니다. 그리고 마지막으로 이 보드에는 내장된 ST-LINK/V2 디버거가 장착되어 있어 보드의 마이크로컨트롤러뿐만 아니라 다른 보드에 있는 동일한 제품군의 마이크로컨트롤러에서도 프로그램을 디버깅하는 데 사용할 수 있습니다. 착탈식 점퍼와 SWD 커넥터를 사용하여 전환합니다. 보드 가격은 약 800 루블이며 상당히 수용 가능한 것으로 간주 될 수 있습니다. STM32F103RBT6 개발 보드 다음 흥미로운 옵션은 STM32F103RBT6 마이크로컨트롤러가 있는 디버그 보드입니다(그림 2).
72MHz의 클럭 속도, 128KB의 FLASH 메모리 및 20KB의 RAM으로 이전 보드에 설치된 것보다 다소 약하지만 주변 장치는 매우 흥미 롭습니다. 320x240px 2.8' TFT 터치스크린, PC 통신용 내장 USB 포트, SD 메모리 카드 슬롯, 32768Hz 클럭 쿼츠, 실시간 클럭 배터리함 및 디버깅 프로그램용 ST-LINK 커넥터. 이 보드의 가격도 약 800 루블이지만 내장 디버거가 없다는 점에 유의해야합니다. 프로그램을 다운로드하려면 별도의 ST-LINK 디버거를 구입하거나 위에서 설명한 STM32F4-DISCOVERY 보드를 대신 사용해야 합니다. 메이플 미니 잘 알려진 Arduino 모듈과 이 보드(그림 3)의 외부 유사성은 놀랍습니다. 그리고 이것은 우연이 아닙니다.
Maple Mini 보드는 Arduino Nano를 대체하도록 설계되었습니다. AVR 제품군의 Arduino 설치 마이크로컨트롤러용 프로그래밍 언어 및 개발 환경은 STM 제품군에 맞게 조정되었습니다. Maple IDE 프로그래밍 언어 및 개발 환경에 대한 자세한 내용은 http://leaflabs.com/docs/maple-q uickstart.html을 참조하십시오. 개발 보드에는 32MHz에서 실행되는 STM103F6CBT72 마이크로컨트롤러가 있으며 128KB FLASH 및 20KB RAM이 있으며 이는 의심할 여지 없이 어떤 Arduino 모듈보다 큽니다. 그리고 더 큰 장점은 개발 환경이 많이 바뀌지 않았다는 것입니다. 이와는 별도로, 소형 크기에도 불구하고 Maple Mini는 34개의 I/O 라인, 2개의 SPI 인터페이스 채널, XNUMX개의 IXNUMXC, XNUMX개의 직렬 포트 등 매우 다양한 주변 장치를 제공합니다. 이를 통해 다양한 아마추어 개발에 성공적으로 적용할 수 있습니다. 크기가 작기 때문에 Maple Mini는 개발 중인 장치에 직접 내장할 수 있습니다. 원래 메이플 미니 보드는 원래 메이플 미니 웹사이트에서 $35에 구입할 수 있습니다. 배송비가 5달러 더 듭니다. 중국산 보드 사본은 비용이 절반입니다. 소프트웨어 STM32 제품군의 마이크로컨트롤러용 프로그램을 준비하는 데 사용할 수 있는 개발 환경에는 몇 가지 옵션이 있습니다. - 상업용 IAR Embedded Workbench, AtollicTrueSTUDIO, Keil 등 완전한 기능을 갖춘 이러한 제품은 라이센스 가격이 1000유로로 상당히 비싸지만 개발 중인 프로그램의 양에 제한이 있는 무료 데모 버전도 있습니다. 대부분의 간단한 프로젝트에 충분합니다. - ARM-GCC 컴파일러가 포함된 무료 Eclipse는 사용하기 전에 중요한 컴파일러 설정이 필요합니다. 오늘날 유일한 장점은 Windows뿐만 아니라 Linux에서도 작동한다는 것입니다. - 동일한 Eclipse 편집기를 기반으로 하는 무료 CooCox IDE(CoIDE). ST-LINK를 통해 프로그램 로딩 및 디버깅을 수행합니다. 이전 버전과 달리 CoIDE는 특별한 설정이 필요하지 않으며 설치 즉시 작동합니다. 이 옵션은 가장 편리하며 사용해야 합니다. CooCox IDE를 사용하여 모든 마이크로 컨트롤러 깜박이는 LED에 대한 첫 번째 프로그램의 클래식을 구현하는 STM32F4-DISCOVERY 보드용 예제 프로그램을 만들어 보겠습니다. STM32F4-DIS-COVERY 보드에는 12개의 LED가 있으며 마이크로컨트롤러의 PD15-PDXNUMX 핀에 연결됩니다. 번갈아 깜박이게 합시다. 1 단계. CoIDE 개발 환경을 시작하고 프로젝트를 생성합니다. 그림에 표시된 드롭다운 목록에서 4, STM32F407VG 마이크로컨트롤러를 선택합니다.
2 단계. 그림과 같이. 5, 프로젝트에서 사용할 구성 요소를 선택합니다. 주요 기능은 GPIO(입력-출력), C 라이브러리(기본 C 언어 기능) 및 M4 Core(프로세서 코어 기능)입니다. 하나 또는 다른 구성 요소가 활성화되면 CoIDE는 필요한 파일을 프로젝트 폴더에 자동으로 복사하므로 매우 편리합니다.
3 단계. 프로그램 텍스트를 입력합니다. 매우 짧으며 표에 나와 있습니다. 2. 보시다시피 모든 것이 간단하고 분명합니다. AVR 마이크로컨트롤러용 프로그램을 작성한 사람들은 방향(입력 또는 출력)을 나타내는 포트의 초기화, 필요한 작업이 수행되는 메인 루프와 같은 친숙한 구성을 확실히 볼 수 있습니다. 일반적으로 프로그램의 구문은 충분한 문헌인 C 언어와 완전히 일치합니다. 또한 인터넷에는 STM32 프로그래밍에 관한 많은 기사가 있습니다. 많은 예제가 개발 보드와 함께 제공되며 샘플로도 사용할 수 있습니다. 화면의 "플래시로 다운로드" 버튼을 눌러 프로그램 텍스트를 입력하면 마이크로 컨트롤러에 로드됩니다. 보드의 LED가 깜박이기 시작합니다. 별도로 디버깅 기능에 주목할 가치가 있습니다. 중단 점은 프로그램의 어느 곳에서나 설정할 수 있으며 프로그램을 단계별로 실행하여 변수 값을 볼 수 있습니다. 물론 이 예가 완벽하지는 않습니다. 예를 들어, LED 깜박임을 제어하기 위해 타이머 인터럽트를 사용하여 다른 작업을 위해 기본 프로그램 루프를 해제할 수 있습니다. 원하는 사람은 스스로 처리 할 수 있습니다. 결론 일반적으로 STM32 제품군의 마이크로 컨트롤러는 처음 알게 된 후 매우 즐거운 인상을 남겼습니다. 모든 것이 그렇게 어렵지 않은 것으로 판명되었고 개발 환경의 편리함, 디버깅 프로세스 및 많은 표준 기능은 어떻게 든 Ms DOS에서 Windows로의 전환을 상기시켜주었습니다. 일반적인 요점은 동일한 것 같지만 모든 것이 훨씬 더 편리하고 기능적입니다. 그러나 아마추어 개발을위한이 가족의 주요 단점은 여전히 \u0,5b\uXNUMXb너무 작은 결론 단계입니다. 집에서 리드 피치가 XNUMXmm인 보드를 설계하고 납땜하는 것은 매우 어려운 작업입니다. 그러나 현재 가격으로 이미 장착된 마이크로컨트롤러가 있는 디버그 보드는 모든 무선 아마추어가 쉽게 액세스할 수 있습니다. STM 및 32비트 아키텍처로 모든 것을 다시 할 가치가 있습니까? 당연히 아니지. ATtiny로 충분한 작업이 있습니다. 그러나 예를 들어 수제 SDR 수신기에서 스펙트럼을 분석하거나 네트워크를 통해 많은 양의 정보를 송수신하려면 강력한 마이크로 컨트롤러를 즉시 사용하여 메모리 또는 성능 부족을 방지하는 것이 훨씬 더 효율적입니다. 장치를 개선할 때. 저자: D. Elyuseev 다른 기사 보기 섹션 햄 라디오 기술. 읽고 쓰기 유용한 이 기사에 대한 의견. 과학 기술의 최신 뉴스, 새로운 전자 제품: 정원의 꽃을 솎아내는 기계
02.05.2024 고급 적외선 현미경
02.05.2024 곤충용 에어트랩
01.05.2024
다른 흥미로운 소식: ▪ 스포츠 은퇴자는 심장 마비로 사망 할 가능성이 적습니다.
무료 기술 라이브러리의 흥미로운 자료: ▪ 기사 베를린에는 여전히 판사가 있습니다. 대중적인 표현 ▪ 기사 공여자 신장 이식을 받은 환자의 신장은 몇 개입니까? 자세한 답변 ▪ 두 개의 전압을 생성하는 기사 DC/DC 컨버터. 무선 전자 및 전기 공학 백과사전 이 페이지의 모든 언어 홈페이지 | 도서관 | 조항 | 사이트 맵 | 사이트 리뷰 www.diagram.com.ua |