Arduino Pro Mini의 자체 깜박임. Arduino Pro-mini 프로그래밍.

그들이 나에게 "마이크로컨트롤러를 프로그래밍하는 방법, 어디서부터 시작해야 하는지, 무엇을 사야 하는지 배우고 싶습니다."라고 물으면 내 관점에서는 대답이 분명합니다. "우리는 구매합니다. 아두이노 프로미니와 시도, 모든 것이 잘되면 더 복잡한 것으로 넘어갑니다."

아두이노란?

섹션 제목에도 불구하고 Arduino에 대한 좋은 기사를 한 번 인용했기 때문에 Arduino가 무엇인지, 어디서 왔는지 말하지 않겠습니다. Arduino의 개념은 일반적으로 Arduino 보드 또는 플랫폼(이 경우 Arduino Pro Mini), 환경, 환경 등 세 가지의 조합으로 이해됩니다. 아두이노 개발특수 라이브러리 세트를 갖춘 IDE 및 C++ 프로그래밍 언어입니다. 이 세 가지 중 하나를 아날로그로 대체할 수 있지만 이에 대해서는 나중에 이야기하겠습니다. 지금은 공식 웹사이트(www.arduino.cc/en/Main/Software)에서 Arduino IDE를 다운로드하여 컴퓨터에 설치하세요.

우리는 무엇을 샀나요?

모든 것을 올바르게 샀다면 우리 앞에 스카프 두 개가 보일 것입니다

상단 보드는 실제로 Arduino Pro Mini이고 하단 보드는 USB-UART/USB-TTL 변환기입니다.
후자는 사진처럼 보이지 않을 수도 있지만 완성된 케이블처럼 보입니다.

(개인적으로는 첫 번째 옵션을 선택하는 것이 좋지만, 말대로 맛과 색상에 따라 다릅니다...)

이제 Arduino Pro Mini 보드/플랫폼에 대해 설명합니다. 구조적으로는 마이크로컨트롤러가 납땜된 보드, RESET 버튼, 전원 칩 및 이 단계에서는 필수적이지 않은 기타 주변 장치입니다.
두 가지가 있습니다 프로 버전미니: 하나는 8MHz에서 3.3V로 작동하고, 다른 하나는 16MHz에서 5V로 작동합니다. 이 보드는 Atmega 168 또는 Atmega 328 마이크로컨트롤러를 기반으로 합니다. 이들 간의 차이점은 시스템 내 프로그래밍 가능한 플래시 메모리의 양(16 또는 32KB)입니다. 이것이 소위 "프로그램 메모리"입니다. 프로그램이 작성될 메모리이며, 작동 중에 내용이 변경되지 않습니다. Atmega는 속도와 신뢰성을 높이기 위해 "프로그램 메모리"와 "데이터 메모리"가 별도로 구현되는 소위 Harvard 아키텍처()를 기반으로 구축되었음을 상기시켜 드리겠습니다. "데이터 메모리"는 두 부분으로 나뉩니다. 즉, 168과 328 모두 1KB인 작동 SRAM과 512바이트 용량의 영구 EEPROM(전기적으로 지울 수 있는 프로그래밍 가능 읽기 전용 메모리)으로 데이터가 "손실되지 않습니다" ” 전원이 꺼졌을 때.
설계에 따라 보드에는 30, 32 또는 34개의 핀(PIN)이 있을 수 있습니다. 아래 그림은 "최대" 34핀 버전을 보여줍니다.


봤어? 무서운? 무엇이 어디에 있는지 알아 봅시다.
접지- "접지"선이 연결되는 단자입니다. "-" 전원이 들어오고 나갑니다.
VCC- 5V(때때로 3.3V)의 전압으로 보드에 전원을 공급하기 위한 양극 단자. 이 핀은 디지털 입력에 대한 기준 전압 "외부"를 공급하는 데에도 사용할 수 있습니다.
날것의- 5V의 안정화된 전압이 없지만 7~12V 범위의 일정한 전압을 갖는 경우 출력이 사용됩니다. 때로는 최대값이 30V인 경우도 있습니다. 전원 칩이 과열되지 않고 짧은 시간 동안 견딜 수 있는 전압입니다.
자동차의 전압 범위는 12~15.5V이므로 RAW를 자동차의 "+"에 직접 연결할 수 없으며 다음 유형의 전원 공급 회로를 조립해야 합니다.


원칙적으로 7812 칩을 7805로 교체하면 출력을 통해 Pro Mini에 전원을 공급할 수 있습니다. VCC

TXD그리고 RXD- UART/USART 핀 -
RST- RESET이라고도 함 - 설명서에는 다음과 같이 설명되어 있습니다. "핀의 낮은 신호 레벨은 마이크로컨트롤러를 재부팅합니다. 일반적으로 Arduino 보드 자체의 버튼에 대한 액세스를 차단하는 확장 보드의 재설정 버튼을 연결하는 데 사용됩니다. ” 실제로 이는 이 핀이 접지에 연결되면 Arduino Pro Mini가 다시 시작(재설정)됨을 의미합니다.
보드에 표시된 2~13번 핀은 디지털 핀(- 을 꼭 읽어주세요)으로 입력 또는 출력으로 구성할 수 있습니다. 핀은 3.3V의 전압에서 작동합니다. 각 핀에는 20-50kOhm의 부하 저항(표준 비활성화)이 있으며 최대 40mA를 전달할 수 있습니다. 높은(버전에 따라 3.3V 또는 5V) 또는 낮은(0V) 레벨만 출력할 수 있습니다. 그 중 일부는 위의 다이어그램에 다음과 같이 표시되어 있습니다. PWM 8비트(0~255)의 분해능으로 PWM 신호()를 출력할 수 있습니다.
결론 A0-A7- 10비트 ADC()를 갖춘 아날로그 입력. 보드 디자인에 따라 4개부터 8개까지 가능합니다. 이 핀들은 디지털 핀으로도 작동할 수 있습니다.
DTR(데이터 터미널 준비) - 데이터 수신기의 준비 상태입니다.

설명된 핀 중 일부는 다이어그램에서 볼 수 있듯이 더 많은 기능을 수행할 수 있지만 나중에 이러한 기능을 사용하면서 이에 대해 설명하겠습니다.

연결하자

연결 다이어그램은 매우 간단하며 실수하기가 매우 어렵습니다.



제가 추천하고 싶은 유일한 것은 키트에 포함되지 않은 전선을 사용하는 것 외에 핀 피치가 2.54mm인 6핀 전원 커넥터를 구입하는 것입니다. NS25 - 2.54mm라고 하며 USB-UART/USB-TTL 변환기에 연결하기 위한 5핀도 동일합니다.

연결 후 나는 이것을 얻었습니다 :


변환기의 빗을 풀고 와이어를 사용하여 보드에 직접 납땜할 수 있습니다. 이렇게 하면 플러그 연결 중 하나가 제거되고 열 수축이 발생하여 변환기가 보호됩니다.

보시다시피, 4개의 와이어만 사용됩니다. 이는 두 변환기 모두에 DTR 출력이 없기 때문입니다.

DTR이란 무엇이며 존재하지 않는 경우 어떻게 해야 합니까?

이 핀은 터미널 프로그램(Arduino IDE 소프트웨어에 내장된 직렬 모니터 포함)이 연결을 설정할 때마다 Arduino USB 직렬 컨트롤러가 MCU를 재부팅하도록 하기 위한 것입니다. 이는 다음과 같이 구현됩니다. USB 직렬 컨트롤러에서는 DTR(Data Terminal Ready) 핀이 RESET 핀에 ​​연결됩니다. 가상 직렬 포트와 함께 작동하는 프로그램이 DTR을 사용하는 경우 연결이 설정되면 MCU가 재부팅됩니다.
이는 그 자체로 Arduino IDE에서 문제 없이 스케치를 로드하는 것을 보장합니다. 즉, 코드를 로드하기 전에 MK가 재부팅됩니다. 이런 의미에서 자동 재부팅은 삶을 더 쉽게 만듭니다. 또한, 단말기 연결 시 재부팅도 가능하기 때문에 편리할 수 있습니다. 꽤 많은 스케치가 어떤 종류의 것을 보여줍니다. 유용한 정보직렬 포트를 통해 MK에 로드한 직후 스케치가 실행되는 반면 터미널이 아직 연결되지 않은 경우(포트가 최근에 사용되었기 때문에) 첫 번째 초 안에 스케치 출력을 볼 수 없습니다. 그것의 운영. 터미널을 연결하는 순간 재부팅하면 MK가 로드된 순간부터 전체 출력을 받을 수 있습니다.
이 출력이 누락된 경우 3가지 옵션이 있습니다.
1) 다른 변환기를 구입하세요 :)
2) 출력을 직접 납땜하십시오. (이를 수행하는 방법은 여기에 기록되어 있습니다 - new-tech.in.ua/tips/109-usb-uart-converter)
3) 보드에 있는 RESET 버튼을 사용하여 수동으로 재부팅하도록 보냅니다. 이에 대한 자세한 내용은 아래에서 확인하세요.

보드를 컴퓨터에 연결

변환기 드라이버와 Arduino IDE를 설치하는 방법은 설명하지 않겠습니다. 모든 것이 표준입니다.
모든 것이 올바르게 완료되면 변환기를 연결하면 가상 COM 포트가 시스템에 나타납니다. 쉽게 볼 수 있습니다:


오른쪽 사진에 나오네요 추가 포트 COM10(번호는 다를 수 있음) - 마우스로 클릭하여 선택해야 합니다.
다음으로, 보드와 프로그래머가 올바르게 지정되었는지 확인합니다. 모든 것이 위 그림과 같아야 합니다.
마이크로 컨트롤러 168 또는 328, 5V 또는 3.3V를 나타냅니다.


프로그래머가 된 기분을 느껴보자

간단한 프로그램을 업로드해 보겠습니다. 이를 위해 예제 라이브러리와 보드 자체의 핀 13에 LED가 납땜되어 있다는 사실을 사용합니다. 아마도 이 LED를 깜박이는 프로그램은 테스트 프로그램으로 로드되지만 우리는 여전히 자체 프로그램을 업로드할 것입니다 :). 이 예는 다음 위치에 있습니다.

프로그램 목록:

//초기화 절차
무효 설정() (
// 핀 13을 출력으로 초기화합니다.
핀모드(13, 출력);
}

// 프로그램 본체
무효 루프() (
디지털쓰기(13, HIGH); // LED를 켭니다(신호 보내기 높은 수준핀 13에)
지연(500); // 500밀리초를 기다립니다(표준 예제에서는 1000, 즉 1초를 의미함).
디지털쓰기(13, LOW); // LED를 끕니다(신호 보내기 낮은 수준핀 13에)
지연(500); // 500밀리초를 기다린 후 다시 메인 프로그램의 시작 부분으로 이동합니다.
}

이 프로그램은 마이크로컨트롤러가 켜져 있는 동안 원을 그리며 실행됩니다.

프로그램 "업로드"

여기에서는 모든 것이 간단합니다. "업로드" 버튼을 클릭하세요


DTR 핀이 연결되지 않은 경우 보드의 RESET 버튼을 누르고 Arduino IDE 창 하단에 "loading"이라는 단어가 나타날 때까지 놓지 마십시오. 이 순간을 놓치지 않는 것이 중요합니다. 그렇지 않으면 마이크로컨트롤러가 적시에 재부팅하지 않으면 프로그램이 업로드되지 않습니다. DTR이 연결되면 기다리세요

"햄 라디오 마이크로 컨트롤러 공예품"을 만들기 위해 때때로 Ekits.ru 매장에서 비교적 저렴한 Evolution Light SEM0010M 모듈을 사용합니다. 모듈은 뛰어난 것이 아닙니다. Atmel의 Mega는 작은 브레드보드(다양한 옵션이 있음)에 납땜되어 있고 석영 공진기가 부착되어 있습니다. 그게 전부입니다! 더 이상 아무것도 없습니다! ISP 회로 내 프로그래밍 커넥터를 제외하고. 일반적으로 매우 편리합니다. 작은 다중 핀 패키지를 납땜할 필요도 없고, 프로그래머 연결에 대해 걱정할 필요도 없고, 주변 장치 배선을 위한 보드를 찾을 필요도 없습니다... 그리고 Algorithm Builder 프로그래밍 환경은 너무 무거운 프로그램.

모든 것이 괜찮지 만 "두꺼비가 질식했습니다": "이것은 기적입니다"에 대해 250 루블이 안타깝습니다. Aliexpress에 연락한 후 기술적으로 더 발전된 남동쪽 이웃에도 비슷한 것이 있는지 확인하기로 결정했습니다. 그리고 저는 그것을 발견했습니다. 수많은 Arduino 클론 제품군 중에서 작은 Arduino Pro Mini 보드가 저렴한 비용으로 돋보입니다. 가격은 약 1.5배에서 2배 저렴하며 단일 칩이 훨씬 더 강력합니다. 석영 외에도 일종의 표시, 전압 안정기 및 재설정 버튼이 있습니다 !!! 그리고 가장 중요한 것은 Arduino 커뮤니티의 지원입니다! 물론 단점 없이는 할 수 없습니다. 주변 장치를 설치할 공간이 없으며 그다지 중요하지 않으며 배송 기간이 매우 길다는 점입니다. 최대 2개월입니다...
일반적으로 테스트를 위해 동일한 250 루블에 대해 Arduino 프로그래밍을 위한 컨트롤러 보드와 USB-UART 브리지로 구성된 키트(왼쪽 그림)를 주문했습니다. 위에서 언급한 상점에서 이러한 세트는 다음과 같이 들립니다. CP2102 모듈 + Pro 미니 모듈 Atmega328 5V 16MHZ For Arduino. 판매자는 설정된 매개변수를 다음과 같이 설명합니다.

CP2102 모듈 설명:

이름: CP2102, USB-TTL 모듈
전송 속도 범위: 300-1Mbps
제어 칩: CP2102
작동 전압: 4V-5.25V
지원: 윈도우 98SE, 2000, XP, 비스타, Window7, 맥 OS 9, 맥 OS X 및 리눅스 2.40
출력 전압: 이중 전압 출력(3.3V 및 5V)
출력 표시기: 전원 표시기, TXD 표시기
출력 전류: 100mA(전류 제한 보호 포함)
6핀: RST TXD RXD GND 5V 3.3V

프로 미니 설명:

1.14 디지털 입출력 포트 RX, TX D13, D2 ~~ of,
2개 또는 8개의 아날로그 입력 포트 A0 ~ A7
3. TTL 레벨 직렬 트랜시버 포트 RX/TX
4.6 PWM 포트, D3, D5, D6, D9, D10, D11. Atmel Atmega328P-AU 마이크로컨트롤러를 사용하면 직렬 다운로드를 지원합니다.
7. 외부 5V~12V DC 전원 공급 장치 지원
8. 9V 배터리 구동 지원
9 클록 주파수 16MHz
10. 차원: 33.3*18.0 (mm)

소포를 받고 CP2102 모듈 세트를 연구하기 시작했습니다. 왜냐하면... 아무것도 납땜할 필요가 없습니다. USB 포트에 연결하고 결과를 "감탄"하기만 하면 됩니다. 브리지는 시스템에 의해 즉시 감지되고 Silicon Labs CP210x USB-UART 브리지(COM9)로 설치됩니다(적절한 드라이버 사용)(포트 번호는 운에 따라 다릅니다...). 나중에 이 모듈을 다른 컴퓨터에 설치했습니다. : Windows XP 및 Windows 7 Starter 모두(!) 모듈을 가지고 놀고 난 후(장난감에 대해서는 언젠가 다른 섹션에서 설명하겠습니다...) 본격적으로 Pro mini가 이 모듈과 어떻게 작동하는지 살펴보기로 결정했습니다.
나는 그것을 매우 논리적인 계획에 따라 연결했다고 생각합니다.

"게으른 라디오 엔지니어"의 현재 경로는 온라인에 접속하여 많은 사람들이 이 문제를 겪고 있음을 발견하는 것입니다. 해결 방법은 여러 가지가 있지만 명확한 방법은 하나도 없습니다! 당신은 당신 자신의 길을 가야 할 것입니다. 시도해 봅시다:

  • "C:\Program Files\Arduino\hardware\arduino\boards.txt" 파일에서 교환 속도를 변경합니다("Arduino Pro 또는 Pro Mini(5V, 16 MHz) w/ ATmega328" 섹션, 매개변수 "pro5v328.upload.speed) =57600 "(9600, 14400, 19200, 28800, 38400, 57600, 115200 시리즈에서) - 음, 그것 없이는 어떻게 할 수 있겠습니까...
  • Rx - Tx 신호 변경 - 전선 교체 - 결국 우리 동부 친구들은 "실수했을 수도 있습니다"
  • 다양한 순간에 재설정 버튼을 누르고 GRN과 RST 사이에 다섯 번째 와이어를 연결하려고 시도합니다(재설정이 자동으로 발생해야 하는 것 같습니다).
  • ATMega328 없이 Pro mini를 UNO에 연결합니다. USB - UART 브리지를 켜져 있는 브리지로 교체하려고 합니다. 아두이노 우노
필요한 것을 얻지 못했습니다. 스케치를 업로드할 때 Pro mini에서 부트로더가 정상적으로 작동합니다. 동일한 메시지가 지속되며 Pro mini의 LED는 "한 번의 깜박임으로 냉소적으로 윙크합니다." 하지만 모든 구름에는 희망이 있습니다. 유용한 결과...

프로그래밍 프로 UNO 보드에서 "메가"가 제거된 UNO를 통한 미니

Arduino UNO R3 핀
접지
5V
텍사스 (1)
RX (0)
다시 놓기

Arduino Pro 미니 핀
접지
VCC
텍사스
RX
RST

이러한 보드 연결을 사용하면(물론 컨트롤러 칩은 UNO 보드에서 제거되어야 함) 아두이노 1.0.5선택하다 Arduino Pro 또는 Pro Mini(5V, 16MHz)(ATmega328 포함), portCOM8(관리자의 Arduino에 해당하는 포트), 속도(boards.txt 참조)는 "원본" 57600을 그대로 둡니다. 스케치 프로그래밍은 문제 없이 진행됩니다! Pro mini의 속도가 모든 곳에 쓰여 있는 것처럼 19200 또는 9600이 아니라 57600으로 "스티칭"되어 있는지 확인합시다! 이미 좋습니다. 최소한 스케치를 채우는 방법을 찾았습니다!

검토/디자인/편집: Myakishev E.A.

초안


아두이노 프로 미니

아두이노 프로 미니칩 기반의 마이크로 컨트롤러 모듈입니다. ATmega328. 그는 디지털 I/O 핀 14개(그 중 6 위해 사용될 수 있습니다 PWM), 세금 연락처 6개, 내장형 공진기, 재설정 버튼 및 접점이 있는 빗을 고정하기 위한 구멍. 모듈에 전원을 공급하거나 다음을 통해 통신을 구성하려면 USB, 그의 6핀 빗에 연결될 수 있습니다 FTDI-케이블 또는 브레드보드 스파크펀.

기준 치수 아두이노 프로 미니반고정식 사용을 위해 설계되었습니다. 사전 설치된 빗이 없으므로 다음을 사용할 수 있습니다. 다른 유형커넥터를 연결하고 전선을 직접 납땜하십시오.

핀아웃 아두이노 프로 미니호환 가능 아두이노 미니.

아두이노 프로 미니두 가지 버전으로 제공됩니다. 한 사람은 다음을 위해 일한다 3.3볼트그리고 빈도로 8MHz, 그리고 두 번째 – 켜짐 5볼트그리고 빈도로 16MHz.

게다가, 아두이노 프로 미니회사에서 개발하고 생산한 것입니다. 스파크펀 전자. 보증 정보를 읽을 수 있습니다.

입력 및 출력 접점

다음 중 하나 14개의 디지털 Pro Mini 접점 pinMode(), digitalWrite() 및 digitalRead() 함수를 사용하여 입력 및 출력 핀으로 모두 사용할 수 있습니다. 그들은 작동합니다 3,3 그리고 5볼트(모델에 따라 다름). 각 연락처는 받거나 줄 수 있습니다. 40밀리암페어 이하값이 내장된 풀업 저항(기본적으로 비활성화됨)이 장착되어 있습니다. 20-50kΩ.

또한 일부 연락처는 다음과 같은 특별한 기능을 수행할 수 있습니다.

  • 직렬 데이터 전송: 0위(RX)그리고 1위(TX)콘택트 렌즈. ( RX) 및 전송 ( 텍사스) 연이은 TTL-데이터. 이 핀은 핀에 연결됩니다 TX-0그리고 RX-1~에 6핀 빗.
  • 외부 인터럽트: 2위그리고 3번째콘택트 렌즈. 이 핀은 LOW 스위치, 상승/하강 에지 또는 값 변경에서 인터럽트를 트리거하도록 구성할 수 있습니다. 자세한 내용은 attachmentInterrupt() 함수에 대한 문서를 참조하세요.
  • PWM: 3번째, 5번째, 6번째, 9일, 10일그리고 11일콘택트 렌즈. 이 연락처는 다음을 제공합니다. 8비트 PWM AnalogWrite() 함수를 사용합니다.
  • SPI 인터페이스: 10일(SS), 11위(모시), 12일(미소)그리고 13일(SCK)콘택트 렌즈. 그들은 지원한다 SPI-장비 자체에서 제공하는 통신 아두이노, 하지만 혀로는 그렇지 않습니다. 아두이노.
  • 내장 LED: 13번째 접촉. 기본적으로 보드에 내장된 LED입니다. 아두이노그리고 관리하다 13번째 디지털 접촉. 이 핀을 HIGH로 설정하면 LED가 켜지고, LOW로 설정하면 꺼집니다.
  • I2C 인터페이스: A4(SDA)그리고 A5(SCL)콘택트 렌즈. 그들은 지원한다 트와이-의사소통 ( I2C-통신) Wire 라이브러리를 사용합니다.
  • 다시 놓기: 이 라인을 LOW로 적용하면 마이크로 컨트롤러가 재설정됩니다. 일반적으로 추가하는 데 사용됩니다. "방패"재설정 버튼 때문에 연결 "방패"보드 자체의 재설정 버튼을 차단하는 경우.

또한, 모듈 아두이노 프로 미니갖추게 하는 아날로그 입력 핀 8개, 각각은 10비트 분해능(즉, 범위 내의 데이터로 작업할 수 있습니다. 1부터 1024까지). 그 중 4개는 모듈 가장자리의 능선에 위치하며, 2개( 4번째그리고 5번째) – 모듈 내부의 구멍에 있습니다. 기본적으로 전압 범위는 다음과 같습니다. Vcc를 GND로.

의사소통

~에 아두이노 프로 미니컴퓨터 및 기타 보드와 통신할 수 있는 수단은 다양합니다. 아두이노그리고 마이크로컨트롤러. 먼저 칩 ATmega328직렬 통신을 통해 통신할 수 있습니다. UART TTL, 에서 사용 가능 0위(RX)그리고 1위(TX)디지털 연락처. 안에 IDE 아두이노 다음을 통해 보내고 받을 수 있는 포트 모니터가 있습니다. USB- 연결 텍스트 데이터 – 보드 자체와 보드 모두에서.

디지털 핀을 통한 직렬 통신용 아두이노 프로 미니 SoftwareSerial 라이브러리를 사용하십시오. 칩 ATmega328인터페이스를 통한 통신도 지원 I2C(TWI)그리고 SPI. 타이어를 더 쉽게 사용할 수 있도록 I2C, IDE 아두이노 Wire 라이브러리를 사용합니다. 그것에 대해 더 읽어보세요).

그러나 부트로더를 우회하고 프로그래밍할 수 있습니다. ATmega328하드웨어 프로그래머를 사용합니다. 지침을 읽으십시오.

자동(소프트웨어) 재설정

다운로드하고 싶다면 아두이노 프로 미니새 스케치를 사용하는 경우 재설정 버튼을 수동으로 누를 필요가 없습니다. 이 모델은 다음을 사용하여 재설정할 수 있도록 설계되었습니다. 에 의해, 연결된 컴퓨터에서 실행 중입니다. 아두이노. 6핀 빗의 6개 핀 중 하나는 다음을 통해 연결됩니다. 100나노패럿 커패시터) 재설정 라인으로 ATmega328. 이 핀은 변환기의 하드웨어 라인 중 하나에 연결됩니다. USB-직렬, 실 제어를 담당하고 빗에 연결됨 : 사용시 FTDI- 케이블은 RTS, 개발 보드를 사용하는 경우 스파크펀이것 DTR. 이 라인이 LOW 값을 수신하면 라인의 값은 다시 놓기너무 많이 떨어지면 칩을 재설정하기에 충분합니다.

IDE 아두이노이 기능을 사용하면 도구 모음에 있는 다운로드 버튼을 클릭하기만 하면 코드를 다운로드할 수 있습니다. 이는 부트로더가 다음으로 전송된 이후 시간 제한이 더 짧아진다는 것을 의미합니다. 다시 놓기- LOW 값 라인은 로딩 시작과 연결될 수 있습니다.

이 시스템은 작업에 영향을 미칩니다 프로 미니그리고 또 다른. 언제 프로 미니컴퓨터에 연결되어 있습니다 맥 OS X또는 리눅스, 그런 다음 프로그램과 프로그램 사이의 연결을 설정할 때마다 재설정됩니다(다음을 통해). USB). 다음 0.5초 동안 프로 미니부트로더가 시작 중입니다. 하지만 프로 미니잘못된 데이터(즉, 새 코드 로드와 관련 없는 모든 데이터)를 무시하도록 프로그래밍되어 있어도 연결이 열린 후에도 전송된 몇 바이트를 가로챌 것입니다.

따라서 스케치를 처음 실행할 때 보드가 일회성 구성이나 기타 데이터를 수신하는 경우 통신 중인 프로그램이 해당 데이터를 보내기 전에 약 1초 정도 기다려야 합니다.

물리적 특성

치수 아두이노 프로 미니대략 1.77 x 3.3cm.

Arduino Pro Mini 보드를 구입한 후 일부 사용자는 펌웨어 플래시 문제에 직면합니다. 이 보드를 플래시하려면 특수 프로그래머도 구입해야 하기 때문입니다. 이와 관련하여 프로그래머 없이 보드를 플래시하는 방법에 관심이 있으십니까? 다행히도 이 작업은 매우 쉽습니다. 이 기사에서는 Arduino Pro Mini를 플래시하거나 다시 플래시하는 방법을 자세히 살펴보겠습니다. 그것을 알아 봅시다. 갑시다!

펌웨어를 플래시하려면 Arduino Uno가 필요합니다. 첫 번째 단계는 GND를 접지에 연결하고 UCC를 양극에 연결하고 RXI 및 NX0을 Uno의 동일한 입력에 연결하고 GRN을 재설정하는 것입니다. 3V 전압을 적용하는 것이 가장 좋습니다. 전원이 공급되면 보드의 빨간색 표시등이 켜집니다. 먼저 Uno에서 ATMEGA 컨트롤러를 제거하는 것을 잊지 마십시오.

이제 보드를 컴퓨터에 연결해야 합니다. 그런 다음 PC에서 Sketch를 실행하세요. 유틸리티의 기본 창에서 "파일" 메뉴를 열고 "예제" 항목을 클릭한 다음 커서를 "기본" 섹션으로 이동하고 나타나는 목록에서 "깜박임"을 클릭합니다. 그 후에는 다음으로 이동하십시오. 상단 패널그리고 "도구" 메뉴를 엽니다. 그 중 '결제' 항목을 선택하세요. 보드 목록에서 기본 줄 대신 "Arduino Pro Mini (5V, 16MHz) w/ATmega328" 줄을 확인해야 합니다. 또한 설정에서 필요한 COM 포트를 지정하는 것을 잊지 마십시오.


그런 다음 프로그램에서 "다운로드" 버튼을 클릭하세요. 맨 아래 줄에 "boot"라는 단어가 나타나면 즉시 보드에서 "reset"을 누르십시오. 다운로드가 완료되었음을 알리는 메시지가 화면에 표시됩니다. 준비가 된. 플래싱이 성공적으로 완료되었습니다.

이제 Nano를 통해서만 동일한 작업을 수행하는 방법을 살펴보겠습니다. Sketch를 열고 파일 메뉴로 이동하여 견본 섹션을 선택하세요. 나타나는 목록에서 "ArduinoISP"를 클릭하십시오. 그런 다음 "도구"로 이동하여 "보드"를 선택하고 "Arduino Nano"를 확인해야 합니다.

ArduinoISP 스케치를 사용하여 Nano를 플래시합니다. 설정 기능에서 포트 속도를 확인하세요. 이것이 바로 Pro Mini 펌웨어의 속도입니다. 표준 스케치에서 속도는 19200입니다.

Nano를 준비한 후 브레드보드 조립을 진행하여 Pro Mini를 다시 플래시합니다. +5V를 Vcc에, GND를 동일한 입력에, D10을 RST에, D11, D12 및 D13을 Pro Mini의 동일한 입력에 연결합니다.


이제 Nano를 PC에 연결해야 합니다. 플래싱을 시작하기 전에 Sketch의 속도에 중점을 두고 동일한 포트 속도를 사용하고 있는지 확인하십시오. "arduino" 폴더에서 텍스트 파일 "boards"를 찾으세요. 그것을 열고 다음 줄을 찾으세요:

pro5v328.name=Arduino Pro Mini(5V, 16MHz)(ATmega328 포함)

다른 버전을 사용하는 경우 적절한 버전을 선택하세요. 설정된 속도를 확인하세요. "프로그래머" 텍스트 파일의 설정도 확인해야 합니다.

설정에 문제가 없으면 IDE를 시작/다시 시작하세요. 그런 다음 "도구" 메뉴로 이동하여 프로그래머 유형 "Arduino as ISP"와 함께 플래시해야 하는 보드를 지정합니다.

다음 단계에서는 "파일" 섹션을 열고 "프로그래머를 통해 업로드" 항목을 클릭해야 합니다. 위의 경우와 마찬가지로 펌웨어를 성공적으로 플래시하려면 보드의 "리셋" 버튼을 눌러야 합니다. 모두. 준비가 된.

이제 플래시 또는 리플래시 방법을 알게 될 것입니다. 아두이노 프로특별한 프로그래머가 필요 없는 미니. 이 기사가 도움이 되었는지 댓글로 작성하고, Arduino 펌웨어 사용 경험을 다른 사용자에게 알리고, 논의된 주제에 대해 궁금한 점이 있으면 물어보세요.

초보 Arduinist의 삶에서 조만간 기능을 희생하지 않고 제품의 크기를 절약하고 싶은 때가 올 것입니다. 그리고 Arduino Pro Mini는 이를 위한 훌륭한 솔루션입니다! 이 보드에는 USB 커넥터가 내장되어 있지 않기 때문에 Arduino Nano보다 1.5배 작습니다. 하지만 프로그래밍하려면 추가로 외부 USB 프로그래머를 구입해야 합니다. 이 기사에서는 작성된 프로그램을 마이크로 컨트롤러의 메모리에 "업로드"하고 Arduino Pro Mini를 작동시키는 방법에 대해 설명합니다.

프로그래머를 사용한 Arduino Pro Mini 프로그래밍 지침

당신은 필요합니다

  • 아두이노 프로 미니;
  • USBasp 프로그래머;
  • 컴퓨터;
  • 연결 전선.

1 프로그램 제작자아두이노용

첫째, 프로그래머 자체에 대한 몇 마디입니다. 중국 온라인 상점에서 2달러에 구입할 수 있습니다.

  • USB-A 커넥터물론 프로그래머를 컴퓨터에 연결하는 데 사용됩니다.
  • ISP 커넥터프로그래밍 가능한 보드에 연결하는 데 필요합니다.
  • 점퍼 JP1 ISP 커넥터의 VCC 핀의 전압을 제어합니다. 3.3V 또는 5V일 수 있습니다. 대상 프로그래밍 가능 장치에 자체 전원 공급 장치가 있는 경우 점퍼를 제거해야 합니다.
  • 점퍼 JP2프로그래머 자체를 플래시하는 데 사용됩니다. 이 문서에서는 이 문제를 다루지 않습니다.
  • 점퍼 JP3대상 장치의 클럭 주파수가 1.5MHz 미만인 경우 필요합니다.
  • LED 표시: G- 프로그래머에게 전원이 공급되고, 아르 자형- 프로그래머가 대상 장치에 연결되어 있습니다.

2 드라이버 설치프로그래머를 위한

프로그래머를 컴퓨터의 USB 포트에 연결해 보겠습니다. 아마도 짧은 시간이 지나면 운영 체제이 장치에 대한 드라이버를 찾을 수 없다고 보고합니다.



이 경우 공식 홈페이지에서 프로그래머용 드라이버를 다운로드 받으세요. 아카이브의 압축을 풀고 표준 방식으로 드라이버를 설치해 보겠습니다. USBasp 프로그래머가 장치 관리자에 나타나야 합니다. 이제 프로그래머를 사용할 준비가 되었습니다. 컴퓨터에서 연결을 끊습니다.



3 연결 다이어그램 Arduino에서 프로그래머로

아래 다이어그램에 따라 프로그래머의 ISP 커넥터를 Arduino Pro Mini의 핀에 연결합니다.