영구 프로젝트를위한 Arduino Uno의 작고 저렴한 대안


15

브레드 보드와 구성 요소가 들어있는 키트에 들어있는 Arduino Uno와 조금 놀았습니다. 곧 나는 더 영구적 인 것들을 만들고 싶습니다.

Arduino Uno보다 작고 저렴한 장치를 선호하지만 Arduino Uno만큼 사용하기 쉽고 사용하기가 매우 유사합니다.

Arduino Pro Mini 328-5V / 16MHz는 논리적으로 다음 단계입니까? Arduino Uno 크기의 1/6에서 상당히 작습니다. 10 $ 한 조각으로 가격도 좋습니다.

나는 그것이 작동하려면 납땜해야한다는 것을 이해합니다. 문제가되지 않습니다.

장치를 프로그래밍하려면 USB 직렬 보드도 필요합니까?


2
328p로 더 작은 다음은 Nano입니다
Juraj

1
ATmega32u4 칩은 또한 8 비트 마이크로를위한 좋은 움직임이다 (Leonardo와 동일). 코딩은 UNO / 328p (특히 직렬)와 약간 다르지만 USB / 직렬 변환기는 사용하지 마십시오. 결국, 소형 프로젝트를 위해 자체 PCB를 만들고 SMD 칩을 사용할 수 있습니다.
MichaelT

1
프로 미니, 5V 16MHz 일 모듈 크리스털 발진기 ($ 2.18CDN) : aliexpress.com/item/... . UART 어댑터 ($ 0.70CDN)에 PL2303HX의 USB : aliexpress.com/item/... .
VE7JRO

답변:


8

첫 번째 최선의 선택은 Arduino UNO에서 ATMega328p-pu 칩을 제거하여 최종 회로에 통합하는 것입니다. 칩은 약 $ 1.50입니다.

이렇게하면 배포 한 최종 장치 대신 UNO를 프로그래머로 사용할 수 있습니다.

프로그래밍을 완료 한 후 ATMega328p-pu 칩을 제거하고 브레드 보드에서 사용하는 올바른 방법에 대한 추가 문서가없는 이유를 잘 모르겠습니다.

내 블로그 에서이 작업을 수행하는 방법을 정확하게 설명합니다 : http://raddev.us/arduino/post/2018/07/03/arduino-uno-using-your-atmega328p-u-as-stand-alone

그러나 기본 사항은 다음과 같습니다. 먼저 칩을 제거하십시오. 그렇게하면 다음과 같이 보일 것입니다. (참고 : UNO의 Elegoo 클론을 사용하고 있습니다).

atmega328p-pu 칩 제거

다음으로 핀 7에 전원을 공급하고 핀 8을 GND에 연결합니다.

16MHz 크리스탈 필요

그러나이 시점에서 칩이 스케치를 실행하지 않는 것 같습니다. 실제로 16MHz에서 실행하려면 크리스털이 필요하기 때문입니다.

UNO 보드에는 해당 칩이 설치되어 있기 때문에 작동합니다. 여기에서 볼 수 있습니다 :

UNO의 16MHz 크리스탈

마지막으로 16MHz 크리스털과 22pF 캡 두 개를 추가하면 칩이 독립형으로 실행됩니다 (UNO 없음).

핀 9와 10에 크리스탈을 추가합니다. 내 블로그 항목을 읽거나 atmega328 데이터 시트 를 읽으면 모든 세부 정보를 볼 수 있습니다 .

브레드 보드에 크리스탈

마지막으로, 다른 모든 것을 연결하십시오.

그런 다음 나머지 회로를 적절한 핀에 연결하기 만하면 ATMega328p-pu 독립형을 실행할 수 있습니다.

실제로 좋은 학습 경험이기도합니다.
UNO 용 교체 용 atmega328p-pu 칩을 구매하면 원하는 모든 프로젝트를 매우 저렴하게 만들 수 있습니다.


2
328p에는 자체 회로가 없기 때문에 회로 보호 기능을 추가하는 것이 좋습니다. 그렇지 않으면 이것은 좋은 방법입니다.
SnakeDoc

1
@ duskwuff, 나는 그것이 DAC를 할 때만 믿습니다. 이것은 칩을 독립형으로 사용하는 방향으로 누군가를 시작하게하는 간단한 예일뿐입니다. 샘플의 LED를 깜박이는 코드가 실행됩니다. 또한 처음 시작할 때 위의 설명에서 언급 한 회로를 만들었고 AVCC와 GND를 연결하지 않았으며 회로는 2 년 동안 작동했습니다. 물론, 나는 그것이 항상 사실이라고 말하지는 않습니다. 칩이 실제로 작동하는 방식 만 언급하면됩니다. 항상 그렇듯이 데이터 시트에서 정확한 사양을 확인하고 특히 다른 경험이있는 경우 확인하십시오. 감사.
raddevus

1
@raddevus 데이터 시트의 표 28.8 : "AVCC 절대 최소 / 최대 : 1.8V / 5.5V"를 참조하십시오. AVCC의 전원을 끄지 않은 상태로두면 사양이 손상되어 손상 될 수 있습니다. 핀 22의 GND 핀은 ADC와 특별히 관련이 없으며 GND에 연결해야합니다.
duskwuff -inactive-

1
@duskwuff 계몽 토론에 감사드립니다. 나는 당신이 말하는 것에 동의하며 그것이 항상 연결되도록하기 위해 곧 내 문서와 회로를 바꿀 것입니다. 참고로 저는 환상적인 책인 AVR 프로그래밍 : 하드웨어를위한 소프트웨어 작성법 ( amzn.to/2PS9OOA )을 통해 ATMega328p-pu로 작업을 시작했으며 , 첫 번째 회로에서 저자 엘리엇 윌리엄스 (Elliott Williams)도 그 핀을 연결하지 않았습니다. 나는 그것에 영향을 받았다고 생각합니다. 이 책은 정말로 훌륭하지만 저자는 지식이 풍부합니다. 다시 한번 감사드립니다.
raddevus

1
@reddevus. 더 정확하게 말하면,이 답변에서 빨간색 상자에 표시된 결정은 ATmega328p-pu 칩이 아니라 USB 통신을 처리하는 마이크로 컨트롤러가 사용하는 결정입니다. Uno 회로도에서 ATmega328p-pu 칩이 실제로 공진기를 사용한다는 것을 알 수 있습니다. mouser.com/ProductDetail/Murata-Electronics/…
Kavka

7

STM32F103C8T6 개발 보드를 확인하고 비용은 약 $ 1.5이며 Arduino Uno보다 더 빠르거나 더 많은 메모리를 가지며 훨씬 더 작습니다.

Arduino IDE와 함께 작동 할 수 있지만 모든 라이브러리가 지원되는 것은 아닙니다. 사용 된 라이브러리가 지원되는지 또는 다른 라이브러리가 있는지 대신 사용하기 전에 사용하기 전에 확인하십시오.

최신 정보

차이점 :

                       Arduino Uno       STM32F103C8T6 Mini Dev Board

MicroController            Atmega328P           Cortex M3
MIPS/MHz                        1                   1.25
Operating Voltage [V]           5                   3.3, most pins 5V tolerant
Input Voltage   [V]            7-12               USB only
Input Voltage (limit) [V]      6-20                (USB)
Digital I/O Pins               16                   37
From them:PWM Digital I/O Pins  6                   12
Analog Input Pins               6                   10
DC Current per I/O Pin [mA]    20                    ?
DC Current for 3.3V Pin [mA]   50                    ?
Flash [KB}                     32                   64
SRAM [KB]                       2                   20
EEPROM [KB]                     1                    -
Clock Speed [MHz]              16                   72

I2C                             1                    2
SPI                             1                    2 (18 MBit/s)
UART                            1                    3
CAN                             0                    1
USB                             0          USB 2.0 FS 12 MBit        
DMA                             0          7 channels (ATsP, SPI, I2C, USART)
RTC                             0                    1
CRC                             0                    1
Unique ID                       0                    1

Programmed by                  USB                 SWD Debug (around $5)

IDE                         Arduino IDE         Arduino IDE, CubeMX, ...
Libraries                      Many               Limited

Dimensions  [mm]            68.6 x 53.4           53 x 22
Weight       [g]               25                    ?
Price (cheapest)  [$]         2.50                 1.50

참고 : 이전에 작성된 것처럼 대부분의 사양이 우수하지만 모든 라이브러리가 지원되는 것은 아닙니다. 또한 프로그래머를 구입해야합니다 (한 번만 약 $ 5).


1
또한 메이플 미니 클론 (거의 동일한 uC, 거의 동일한 하드웨어이지만 부트 로더가 이미
깜박임

1
@ frarugi87 또는 초기 프로그래밍을 위해 내장 UART 부트 로더 (BOOT0을 높게 설정하여 활성화)를 사용할 수 있습니다.
duskwuff -inactive-

STM32F103C8T6은 큰 부분입니다. 그러나 여전히 3.3V입니다. Uno를 대체하는 것은 아닙니다. 5V 문자 LCD에 연결하면 전혀 문제가 없습니다. (LCD)
Rudy

6

내 제품의 경우 Arduino Uno 에서 왔습니다 .

아두 이노 우노 R3

받는 아두 이노 프로 미니 :

아두 이노 프로 미니

예 , PC에 프로그래밍 및 직렬 통신을위한 FTDI 케이블 이 필요 하지만, 항상 통신을 필요로하지 않으면 각 장치에 프로그램을 업로드 할 케이블이 하나만 필요합니다. 그들은 꽤 싼 것도 발견 할 수 있습니다.

그러나 Arduino Pro Mini가 현재 폐기되었으므로 소스로 처리하기가 다소 어려울 수 있습니다 ( AliExpress 에서는 여전히 사용 가능 ). 따라서 이런 이유로 Arduino Nano 를 대신 사용하는 것이 좋습니다 .

아두 이노 나노

온보드 USB의 이점이 추가되어 더 이상 프로그래밍이나 통신에 FTDI 케이블이 필요하지 않습니다.

이 3 개 보드의 프로세서 인 ATMega328P에는 기본 USB가 없으므로 FTDI 케이블에 사용되는 FTDI FT232RL IC 도 보드에 포함해야합니다 . 이 IC를 사용하면 추가 비용을 추가 할 수 있습니다.

장치 당 몇 달러 저렴하면 기본 USB 통신 기능을 갖춘 마이크로 컨트롤러 (예 : ATMega32U4)를 사용할 수 있으므로 FTDI IC를 절약 할 수 있습니다. 그러한 제품 중 하나는 Arduino Micro입니다 .

아두 이노 마이크로

언급 된 모든 보드는 Arduino 생태계 내에서 기본으로 제공되며, 은퇴 한 Pro Mini와는 별도로 온라인 또는 가까운 전자 제품 매장에서 쉽게 구할 수 있어야합니다. Arduino Uno 프로그램은 이러한 모든 대안에서 작동합니다. Arduino IDE에서 보드를 변경하기 만하면됩니다.

아두 이노 보드 선택

언급하고 싶은 보드가 하나 더 있습니다 -DigiSpark :

디지 스파크

소규모 프로그램에만 적합하며 일부 기능이 제한되며 oficial Arduino 보드가 아닙니다. 그 말한다면 아두 이노 지원의 많음이 그 싼 -!


4

Arduino와 툴체인을 계속 사용하려면 ATmega 328p (Arduino Uno의 핵심 마이크로 컨트롤러)를 주문하여 자체적으로 사용할 수 있습니다!

그들은 상당히 저렴하고 ($ 1.50- $ 3.00 범위) 브레드 보드 친화적입니다. 보다 영구적 인 솔루션을 위해 프로토 보드 (퍼프 보드) 또는 설계가 해당 수준에 도달하면 맞춤형 설계 회로 보드에 납땜 할 수 있습니다.

다음 은 ATmega 328p와 같은 원시 구성 요소 만 사용하여 브레드 보드에 Arduino를 설정하는 방법에 대한 Arduino 직원 의 훌륭한 안내서 입니다. 이 설계는 Arduino Uno와 마찬가지로 외부 16MHz 클록 크리스털을 사용합니다.

328p의 내장 8MHz 클럭을 사용해도 괜찮다면 대부분의 추가 구성 요소를 제거 하고이 가이드 와 같이 원시 칩을 실행할 수 있습니다 (기본 Arduino 부트 로더 대신 Arduino Lilypad Bootloader 사용). 더 많은 돈을 절약 할 수 있습니다!

어느 쪽이든 328p에는 USB 포트가 내장되어 있지 않기 때문에 AVR 프로그래머 장치가 필요합니다. 이것은이 설정에서 가장 비싼 부분이지만, 좋은 소식은 하나만 필요하며 필요한 모든 328p를 프로그래밍 할 수 있다는 것입니다. 또한 ESP 칩과 같이 직렬 Tx / Rx 핀을 통해 프로그래밍 할 수있는 비표준 칩을 프로그래밍하는 데에도 사용할 수 있습니다 (손으로 직접 배선). 이러한 유형의 마이크로 컨트롤러에 대해 진지한 경우 이들 중 하나를 갖는 것이 매우 유용합니다.

ATmega 328p 마이크로 컨트롤러 칩

ATMega 핀 스티커

퍼프 보드

AVR 프로그래머


1
부트 로더가 이미 설치된 ATMEGA328P-PU를 주문한 경우 : ebay.ca/itm/… , PL2303HX USB-UART 어댑터 ($ 0.70CDN)는 "code": aliexpress.com/item/…
VE7JRO

Arduino가 내장 프로그래밍 인터페이스를 사용하는 대신 프로그래밍을 위해 특수 부트 로더를 사용한다는 것이 항상 이상했습니다.
user253751

@immibis는 정확히 무슨 뜻인지 알지 못하지만 arduino 부트 로더는 핀 재설정, 외부 시계로 전환, 코드 전달 등을 포함하여 arduino (및 Atmel 칩) 작업을 훨씬 쉽게 만들어줍니다. 그것 없이는 본질적으로 자신의 것을 작성해야 할 것입니다. 대부분의 경우 주식 Arduino 부트 로더는 원하는 모든 것을 수행하기 때문에 시간 낭비입니다.
SnakeDoc

1
@immibis PC의 프로그래머 인터페이스보다는 직렬 포트 인터페이스를 사용하는 것이 훨씬 쉽다고 생각합니다. 또한, 처음에는 보드에 완전한 시스템을 원했고 PCB에 프로그래머를 통합하는 것이 직렬 부트 로더를 작성하는 것보다 훨씬 어렵다고 생각합니다. 첫 번째 arduino 보드에는 직렬 포트 ( Arduino RS232 )가 있으므로 많은 프로그램을 프로그래밍하는 데 한 명의 프로그래머 만 필요했습니다 (학교에서 사용됨)
frarugi87

1
@ frarugi87 아마도 사실이지만, 초보자에게는 USB 케이블을 연결하고 Arduino IDE를 사용하여 "스케치"를 업로드하는 것이 가능한 한 쉽습니다. 나는 그들이 마이크로 컨트롤러 경험이 전혀없는 사람들에게 특히 접근하기 쉽도록 최선을 다했다고 생각합니다.
SnakeDoc

4

나는 Nano와 Pro Mini를 좋아합니다. 다른 모듈과 함께 브레드 보드에서 작업하고 싶습니다. 더 많은 회로가 관련되어 있다면 Uno를 사용하는 것보다 훨씬 편리하다는 것을 알았습니다. 더 빠른 프로세서가 있지만 많은 프로젝트의 경우 16Mhz 328이면 충분합니다. 그리고 우노처럼이 두 부품은 5 볼트 구동 부품입니다. 때로는 연결해야하는 것이 3.3V 프로세서에서 제대로 작동하지 않습니다.

Pro Mini와 Nano는 0.1 "간격의"Veroboard "(또는 동등한 제품)에 쉽게 납땜 할 수 있습니다. 복제 된 부품을 구입하는 데 신경 쓰지 않는다면 Nano와 Pro Mini의 비용은 불과 몇 달러입니다. , 또는 심지어 Ebay조차, 당신이 배달에 관해서 인내심이있는 한, 당신을 많이 절약 할 수 있습니다.

내가 지금 가장 자주 사용하는 모듈은 ESP8266입니다. 단 몇 달러의 비용이 들고 Arduino 프레임 워크가 상당히 발전된 강력한 WiFi 플랫폼입니다. 종종 이것을 디자인의 유일한 프로세서로 사용합니다. 데이터 로거의 기초로 사용했으며 WiFi 기능을 완전히 무시했습니다. 18650 리튬 배터리로 구동되는 20x4 문자 LCD, 전류 / 전압 측정 칩 (INA219) 및 SD 메모리 카드.

저렴한 옵션이 많이 있습니다.


3
ESP12 모듈에는 약간의 성가신 .1 "핀 간격이 없습니다. 저렴한 브레이크 아웃 보드가 있지만 솔더리스 브레드 보드와 함께 사용하기에는 상당히 넓고 어렵습니다. 베어 ESP12 모듈보다 약 $ 1 이상이면 Arduino Pro Mini 또는 Nano만큼 사용하기 쉬운 Wemos D1 미니 (복제)를 구입할 수 있습니다.
Llaves

ESP-12를 어디에 사용하라고 말했습니까? 나는 ESP8266에 대해 자세히 다루지 않았다. 왜냐하면 그것은 질문의 초점이 아니기 때문이다. 많은 사람들이 익숙하지 않기 때문에 언급 할 가치가 있다고 생각했습니다. Wemos D1 미니 플랫폼을 사용하는 사람들을 전적으로 지원합니다. ESP01, ESP12 등과 달리 솔루션을 바로 사용할 수 있습니다. USB to serial 및 온보드 레귤레이터가 큰 차이를 만듭니다. 그러나 나는 여전히 Nano 또는 Pro Mini가 질문을 한 사람에게 가장 적합한 답변이라고 생각합니다.
Rudy

2019 년 ESP 시스템과 비교할 때 atmega 기반 시스템을 고려하기는 어렵 기 때문에 ESP8266을 사용하면 2 달러에 40MHZ 프로세서, 완전한 개발 보드 (칩이 아닌), wifi 및 USB 기반 프로그래밍을 얻을 수 있습니다. 추가 케이블없이 모니터링. 또한 ESP32 시스템은 7 ~ 10 달러로 비싸지 만 2 개의 CPU, 전체 RTOS, 여러 MB의 플래시, WIFI에 BT 추가 및 기본 USB 지원을 포함합니다. Arduino와의 호환성이 포함되어 있으며 제공된 RTOS를 실행하더라도 Arduino 라이브러리가 포함되어 있습니다.
Brian Bulkowski

ESP8266에는 160MHz 프로세서가 있습니다. 훌륭한 옵션이지만 한계가 있습니다. 하나의 A / D 변환기 만 있고 그 중 나쁜 변환기가 있습니다. 디지털 IO 핀에도 문제가 있습니다. 풀업 저항은 전원을 켤 때 기본적으로 켜져 있습니다. 3 개의 IO 핀이 작동 모드를 설정하며 특별한주의를 기울여야합니다. ESP8266에도 알맞은 전원 공급 장치가 필요합니다. ESP8266을 사용하면 백그라운드에서 많은 코드가 실행되고 코드와 공존해야합니다. 나는 ESP9266을 정말로 좋아하지만 훌륭한 범용 마이크로 컨트롤러는 아닙니다. ESP32가 더 좋지만 문제가 있습니다.
Rudy

2

Arduino Pro Micro 클론은 매우 저렴하며 일반적인 마이크로 USB 케이블 만 프로그래밍하면됩니다. 유용한 작업을 수행하려면 헤더를 납땜해야합니다. 3.3V / 8MHz 및 5V / 16Mhz 버전으로 제공됩니다.

프로 마이크로


ProMicro에는 3.3v 프로세서가 있습니다. 일부 디자인에서는 문제가 될 수 있습니다. Uno를 대체하는 것은 아닙니다. 그러나 흥미로운 부분입니다.
Rudy

1
아니요, Pro Mini와 마찬가지로 5V / 16MHz 및 3.3V / 8MHz 버전이 있습니다.
AndreKR

미안, 내 실수
Rudy
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.