1. 芯片混戰
上圖左起:mbed LPC1768、 Arduino Uno+ProMini+Nano、Arduino mega 2560, pcDuino V3、Rasperry Pi B。pcDuido V3兼容Arduino。後兩者都用帶GPU的Arm支持高清高清播放,1768是Arm,自帶以太網;pcDuino是兩位矽穀華人做的,1G Arm+GPU帶WiFi與Arduino兼容;Rasperry在歐洲主打教學,Pi B $35使用Linux簡化版,可實現一般電腦功能如NAS,web server,HD播放。硬件:BCM2835(ARM 11 700MHz+GPU),512MB RAM(至多DDR2), 由右上開始順時鍾為:RJ45網口(其左為LAN9512)、USB2;1394 1.3/1.4,uUSB電源口;GPIO,RCA複合視頻、3.5mm音頻。未焊接DIP為狀態口。左側雙排座為DSI顯口,其下為SD卡,右下雙排座為CSI攝像口。
http://www.csdn.net/article/2013-05-02/2815109-arduinouno-vs-beaglebone-vs-raspberrypi
http://www.rs-online.com/designspark/electronics/blog/chi-arduino-mbed
http://www.dz-ic.net/mbed%20NXP%20LPC1768.html
http://www.raspberrypi.org/downloads/
http://zh.wikipedia.org/wiki/%E6%A0%91%E8%8E%93%E6%B4%BE
* http://wwssllabcd.github.io/blog/2013/01/31/how-to-setup-raspberry-pi/
https://linuxtoy.org/archives/cool-ideas-for-raspberry-pi.html
http://elinux.org/RPi_Hardware
Google I/O 2011大會上,Google宣布在Android 3.1版本中新增一個特性,稱為Android Open Accessory,中文可譯作“安卓開放配件”,並宣稱采用Arduino作為Android Open Accessory的標準。Arduino是一款最流行的開源的硬件平台,有些類似於軟件行業的Linux。全世界基於Arduino的項目保守估計有幾十萬個。下麵的官網風格,是我喜歡的:http://www.arduino.cc/
http://www.mcmelectronics.com/product/83-15656?scode=GS401&CAWELAID=530004080000132090&gclid=CNO_qaXhnb4CFciGfgodnrEA8A
http://www.geekpark.net/read/view/166143
http://blog.csdn.net/leonzhouwei/article/details/8446293
2. 土產8051
http://www.cnblogs.com/lixiaoming90/archive/2013/04/22/3036495.html
機器人,部分傳感器由單片機控製,然後與ARM控製器進行通訊。選擇了2012年才開始供貨的STC15F2K60S2:1. 存儲比8952大速度快約10倍,2. 不用外接晶振和複位,3.有兩個串口與ARM通信方便,4. 有PWM輸出和4個中斷,滿足電機驅動和傳感器需求。5.LQFN-44封裝容易手工焊接。 我有USB的STC-ISP下載模塊,在www.stcmcu.com下載最新的STC-ISP(V6.33),開發環境還是keil,新建工程時可選 Intel係列的代替STC,或通過STC-ISP(V6.33)在keil庫中增加型號,如下所示:
將下載線把單片機與PC連接之後,我下載程序時,界麵總是停在“正在檢測目標單片機”(單片機完全斷電),可是並沒有像之前我下載到STC89C52一樣出現“握手連接,請上電”的提示,首先給大家看看手冊上有說明:
後麵我也附上將STC-ISP(V6.33)與keil設置成聯合調試的方法設置,下載鏈接:http://files.cnblogs.com/lixiaoming90/STC-ICE-VER2-chinese.pdf
小結:開發環境好,A/D速度快,有硬件乘除法指令,15W有互補帶死區的PWM輸出。
3. Arduino https://www.arduino.cc/en/Products/Compare
書:http://proquest.safaribooksonline.com.rpa.sccl.org/9781484209400 http://proquest.safaribooksonline.com.rpa.sccl.org/9781484211731
http://repo.palkeo.com/repositories/mirror7.meh.or.id/Embedded/Beginning_Arduino.pdf http://www.bdsola.com/search.php?kw=arduino從基礎到實踐.pdf
http://www.qsl.net/yo4tnv/docs/Arduino Robotics By Jhon-David Warren, Josh Adams and Harald Molle.pdf Arduino機器人權威指南 http://www.bdsola.com/viewfile.php?fid=DkVubb
編程參考:http://www.arduino.cc/en/Reference/HomePage http://wiki.dfrobot.com.cn/index.php/Arduino編程參考手冊
Genuino和Arduino開發板是一樣的,隻是前者用於美國之外的品牌名稱。3D打印的標配是mega 2560,也可用於CNC。
論壇教程:http://www.geek-workshop.com/portal.php?mod=list&catid=1 http://www.arduino.cn/thread-1066-1-1.html
3.1 Arduino Mega2560 R3 http://www.arduino.cc/en/Main/ArduinoBoardMega2560 :CPU ATmega2560,54路數字IO(其中15路可作8bitPWM,pinmode可操作每個腳),16路10bit模擬In,4路UART,16M晶振,USB(ATmega16U2將來可擴充功能,國產用CH340稍廉),TWI兼容I2C,SPI,電源插座,ICSP header和複位按鈕。片上256KB Flash(其中8KB已預置Bootloader可直接或由ICSP下載程序),8KB SRAM和4KB EEPROM。Arduino UNO用Arm速度快尺寸同,但庫不多5V不兼容。特別說一下板上的第二芯片,USB轉串口的,原裝ATmega16U2,允許功能擴展但目前沒用到,允許定義USB設備名(比如PC上顯示Arduido),但是有掉固件firmware的問題,固件是寫在16U2裏的啟動程序在開發包裏有,掉了需重寫。國內改為CH340,PC上顯示是CH340,可靠而廉價。
3.2 Arduino nano與Pro mini都用 ATmega328P (有的168-存儲減半為1K/16K/512B)晶片,尺寸分別為18x45和18x33,前者多mUSB口。5V/3.3V供電。14個IO(含串口),8個模擬In,6個PWM,支持USBISO下載。推薦國產改為CH340的nano,用FT232的可能買到假貨被原廠驅動搞死。改CH340就是把它的TXD/RXD與ARDUINO的RXD/TXD對接,再把DTR串100nF的電容接到ARDUINO的RESET。Nano與Uno的差別除用mUSB/尺寸小/引腳位置不同外,Nano多ADC6/7輸入,少了3V3穩壓輸出。
用Uno/nano加載Pro mini:http://www.instructables.com/id/Uploading-sketch-to-Arduino-Pro-Mini-using-Arduino/
3.3 ATMEG8A -28pin,8KP
I2C占A4/A5。DIY可用Uno往裏寫Boot loader,然後即可如3D一樣通過USB232口更新:https://create.arduino.cc/projecthub/hami/programming-atmega8-using-arduino-ide-90c2ad 類似的16M boot loader: https://www.electronoobs.com/eng_arduino_tut43.php
也有人說不裝boot loader以節省空間,用USBASP編程:https://www.freetronics.com.au/pages/usbasp-icsp-programmer-quickstart-guide#.X-wTMuhKhJQ
一個gcc的編譯器不知何用:https://blog.zakkemble.net/avr-gcc-builds/
智能充電器源碼:https://www.instructables.com/Microcontroller-Based-Smart-Battery-Charger/
2.4" touch: https://www.ebay.com/itm/2-4-TFT-LCD-Display-Shield-Touch-Panel-ILI9341-240X320-for-Arduino-UNO-R3-C/233591453475 配套軟件:https://create.arduino.cc/projecthub/electropeak/arduino-2-4-touch-screen-lcd-shield-tutorial-fe6f05
免費sch/pcb軟件:https://www.electronics-lab.com/top-10-free-pcb-design-software-2019/
3.4 ATtiny85
https://blog.csdn.net/tiandiren111/article/details/107035143 https://blog.csdn.net/weixin_38580318/article/details/124571884 http://digistump.com/wiki/digispark/tutorials/connecting http://arduino.cc/en/Guide/Environment
I2C uses TinyWireM library, Pin outs - All pins can be used as Digital I/O:
SCoop報錯因TIFR無定義,digistump與UNO等不兼容。
https://blog.csdn.net/sadanubis2008/article/details/105721132 這個板用https://mesom.de/atflash/package_atflash_index.json 支持ATtiny85,編譯SCoop.cpp時需將出錯的TSFR0改為TSFR,但餘下RAM太小,穩定性可疑。
車用超級電容:汽車電池供電並由PB2=ADC1采樣,PB0/1其一已接LED=key,另一用於Boost 14.7V PWM,其電壓采樣在PB4=ADC2,PB3=buzzer,PB5=RelayCtrl。
3.5 其它
Due的PWM時鍾可達84M:http://www.kerrywong.com/2014/09/21/on-arduino-due-pwm-frequency/
如果要與Andriod手機USB通訊,Arduino須有USB host/OTG,Due或Arduino ADK/Google ADK/2可滿足要求。
4. 社區與應用
常用MX-FS-03V 315/433M RX/TX, 及PT2262/2272: http://forum.hobbycomponents.com/viewtopic.php?f=25&t=1324
rolling code HCS301: https://en.wikipedia.org/wiki/Rolling_code
滾碼遙控每次發出的碼都不同,因此較為安全。
Arduino示波器:http://www.arduino.cn/thread-3703-1-1.html http://tieba.baidu.com/p/2902231375 http://www.serasidis.gr/circuits/AVR_oscilloscope/avr_oscilloscope.htm matlab示波器:http://tieba.baidu.com/p/2744410685 集錦:http://www.instructables.com/id/Make-Your-Own-Oscilloscope
Proteus&Arduino(仿真軟件)
DIY: http://blog.sina.com.cn/ntwhq
5. Teensy - arm based
您可以使用 C 在您最喜歡的程序編輯器中為 Teensy 編程,或者您可以為 Arduino IDE 安裝 Teensyduino 附加組件並為其編寫 Arduino 草圖!
Teensy家族:https://www.pjrc.com/teensy/techspecs.html 4.1是600M 32/64bit,3.6是180M 32bit,功能最多,2x12bitADC,2x12bit DAC,touch,2USB,LAN,RTC。$26.5:https://www.mouser.com/ProductDetail/SparkFun/DEV-14055?qs=FNcb6ahWXRxvC3MtP%252BJLOg%3D%3D