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