满足您创新创意的需要,亲手打造属于你的Arduino

分享到:

 Arduino,满足您创新创意的需要!

 
Arduino 是一款便捷灵活、方便上手的开源电子原型平台,包含硬件(各种型号的Arduino板)和软件(Arduino IDE)。它适用于艺术家、设计师、爱好者和对于“互动”有兴趣的朋友们。
 
Arduino,是一个基于开放原始码的软硬体平台,构建于开放原始码simple I/O介面版,并且具有使用类似Java,C语言的Processing/Wiring开发环境。
 
Arduino能通过各种各样的传感器来感知环境,通过控制灯光、马达和其他的装置来反馈、影响环境。板子上的微控制器可以通过Arduino的编程语言来编写程序,编译成二进制文件,烧录进微控制器。对Arduino的编程是利用 Arduino编程语言 (基于 Wiring)和Arduino开发环境(based on Processing)来实现的。基于Arduino的项目,可以只包含Arduino,也可以包含Arduino和其他一些在PC上运行的软件,他们之间进行通信 (比如 Flash, Processing, MaxMSP)来实现。你可以自己动手制作,也可以购买成品套装;Arduino所使用到的软件都可以免费下载. 硬件参考设计 (CAD 文件)也是遵循availableopen-source协议, 你可以非常自由地 根据你自己的要求去修改他们.
 
Arduino可以使用开发完成的电子元件例如Switch或sensors或其他控制器、LED、步进马达或其他输出装置。Arduino也可以独立运作成为一个可以跟软件沟通的接口,例如说:flash、processing、Max/MSP、VVVV或其他互动软件…。Arduino开发IDE接口基于开放源代码原,可以让您免费下载使用开发出更多令人惊艳的互动作品。
 
面对众多Arduino板,官方的价格似乎有点高,在开源的环境下,在某宝淘一下,似乎低了很多,大多都是直接拿官方的PCB文件制作,售后和技术等问题又是难以保证,基于以上,作为电子方面的我,走上了自己制作Arduino mini板子的线路,这样对于了解和认识Arduino,我想更加深入点。
 
Ardunio大部分是基于AVR的单片机制作,只是向里面烧录特定的Flash,改变固件,就像你刷安卓手机ROM包一样,以适应Arduino的代码。
 
本次选用的是ATMEGA8L-8PU,8M的晶振,带串口,I2C,ADC,PWM,Digital I/O等资源,足够小小的玩一把。MCU工作必要条件,电源和晶振。
 
1.由选择的IC可知,它最大支持8M晶振,也可使用内部晶振,L则代表低压工作,可达2.7V-5.5V。此电可由USB取,或者直流电源插入,晶振则选用8M,加2个22Pf电容,焊接好后即可满足工作条件
2.做好以上的,下一步则是刷bootloader,我在淘宝购入了一个usb ISP,拿到手是个免驱动的,不能直接在IDE选用,麻烦。Arduino具有自己的开发IDE工具。程序烧录方式比较特殊:使用AVR芯片特有的Bootloader功能,给AVR芯片烧入一个特有的固件,通过串口更新芯片flash空间内的程序,这样不需要外接烧录器,使用更加方便简单。
 
首先需要准备以下东西:Arduino开发工具,可以直接从www.arduino.cc下载最新版本;AVR烧录工具或下载线,常用的有很多例如USBAsp、并口下载线等,这里以购入的USBIsp烧录为例。
 
首先准备好bootloader文件,可点击下载,主要是配置熔断丝,工作晶振等信息。 
 
我采用的是ISP下载,如下所示,接上USB ISP下载器,打开软件
运行progisp,选择ATmega8,然后选择RD键盘。下方提示“读取ID成功”也就证明连接没问题了,有黑色箭头的按钮,这就是ISP接口界面,可查看连接方式。
然后点击右下角的…   打开熔断丝配置界面。
直接在低位值和高位值写入DF,CA,点击写入,然后点击读取,看是否写入正确。如果一致则做以下工作。
 
退出熔断丝写入界面,会到主程序,点击文件,调入Flash,选择你放置的Flash位置,调入后,点击自动,不到一分钟,bootloader下载好了
烧入上述提供的bootloader,如果IC的13脚接一个串1k左右的电阻,你可以观察到LED会闪烁,证明bootloader下载完成,你的AVR变成了Arduino。
 
3.加入 hex生成路径。
 
找到preferences.txt ,添加hex生成路径,在export.application.stop=ture 后加入你hex保存的路径即可。
 
添加ATmega8 L @8M
 
在\hardware\arduino\boards.txt 中下入下面代码,
 
 
atmega8l.name=ATmega8L @ 8MHz
 
atmega8l.upload.protocol=stk500
 
atmega8l.upload.maximum_size=7168
 
atmega8l.upload.speed=19200
 
 
 
atmega8l.bootloader.low_fuses=0xdf
 
atmega8l.bootloader.high_fuses=0xca
 
atmega8l.bootloader.path=atmega8
 
atmega8l.bootloader.file=ATmega8L.hex
 
atmega8l.bootloader.unlock_bits=0x3F
 
atmega8l.bootloader.lock_bits=0x0F
 
atmega8l.build.mcu=atmega8
 
atmega8l.build.f_cpu=8000000L
 
atmega8l.build.core=arduino
 
atmega8l.build.variant=standard
 
板子设置一下Tools 》Board 》ATmega8L @8M就可以工作了。
 
打开IDE实例里的blink,然后选择“运行” 编译
运行通过后,不要关窗口,赶紧到你刚才设置的hex区域把hex文件拷贝出来。
 
然后重复刚才的Flash烧录方式,把hex烧录进去。
由官方网站查阅的资料可知道,作为ATMEGA8系列,刷bootloader后,引脚是这样分配的(由上图),在Arduino IDE里面直接控制引脚即可,我制作的Arduino mini连接到LED的引脚的是I/O 12 和9 ,则在程序里面直接控制这2个脚的高低电平即可控制LED灯亮灭。
 
代码如下
 
void setup()
 
{
 
pinMode(12,OUTPUT);
 
pinMode(9,OUTPUT);
 
}
 
void loop()
 
{
 
digitalWrite(12,LOW);
 
delay(500);
 
digitalWrite(9,LOW);
 
delay(500);
 
digitalWrite(9,HIGH);
 
delay(500);
 
digitalWrite(12,LOW);
 
delay(500);
 
digitalWrite(12,HIGH);
 
delay(500);
 
digitalWrite(9,LOW);
 
delay(500);
 
digitalWrite(12,HIGH);
 
delay(500);
 
digitalWrite(9,HIGH);
 
delay(500);
 
}
 
效果以上传到优酷,欢迎访问。
 
最终Arduino mini 板子资源简介。
 
尺寸47.117(mm) x 43.942(mm)
 
3组排阵 引出PA PB PC 引脚
 
1组电源引脚,提供5V 与 3.3V 电源
 
ISP 下载口
 
4个LED灯指示,1个LED指示电源工作。
 
串口RX TX(PD0,PD1)
 
3路PWM
 
6组ADC
 
14个数字I/O
 
Micro USB 供电与外接5V 供电
 
 
原理图 :Arduino
 
PCB 预览图
 
 
 
继续阅读
Arduino驱动安装教程

Arduino是一款便捷灵活、方便上手的开源电子原型平台。包含硬件(各种型号的Arduino板)和软件(ArduinoIDE)。由一个欧洲开发团队于2005年冬季开发。其成员包括MassimoBanzi、DavidCuarTIelles、TomIgoe、GianlucaMarTIno、DavidMellis和NicholasZambetTI等。

超详细图文教程:如何制作一辆Arduino小车(含源码)

你想要学习如何制作你自己的机器人吗?制作机器人是自学电子学和计算机编程的一种非常好的方式。wikihow这个教程详细介绍了制作一个机器人的步骤:组装机器人;给机器人接线;连接电源 ;安装Arduino软件;给机器人编程。

Arduino厨房定时器教程,原理图+源码

一个基于Arduino UNO的经典厨房定时器,带LCD显示屏和蜂鸣器

Arduino,你为什么这么红?

如果浏览5—10年前的电子制作资料,你一定可以看到五花八门的单片机选型、各种手工焊制的电路板、纷繁复杂的飞线……而近几年的各种基于单片机的电子制作,则统一了许多,各种不同领域、不同功能的电子DIY作品,大都采用了同一种控制模块为核心——Arduino。

一篇帖子让你学会Arduino!从基础到实战

论坛里有很多不错的Arduino教程,为了能让大家更加方便的找到这些资料,增加一个帖子来存放链接。 大家可以通过这个帖子,从而找到社区内Arduino的分类资源,不必再东翻西找。

©2018 Microchip Corporation
facebook google plus twitter linkedin youku weibo rss