您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 国内外标准规范 > Arduino-Uno简介
ArduinoUno目录1简介2概要3电路图和PCB4电源5存储器6输入输出7通信接口8下载程序9物理特征10注意要点11扩展阅读简介ArduinoUNO是ArduinoUSB接口系列的最新版本,作为Arduino平台的参考标准模板。UNO的处理器核心是ATmega328,同时具有14路数字输入/输出口(其中6路可作为PWM输出),6路模拟输入,一个16MHz晶体振荡器,一个USB口,一个电源插座,一个ICSPheader和一个复位按钮。UNO已经发布到第三版,与前两版相比有以下新的特点:在AREF处增加了两个管脚SDA和SCL,支持I2C接口;增加IOREF和一个预留管脚,将来扩展板将能兼容5V和3.3V核心板。改进了复位电路设计USB接口芯片由ATmega16U2替代了ATmega8U2SPI.begin();pinMode(n,OUTPUT)再:digitalWrite(n,LOW);data_R=SPI.transfer(data_S);digitalWrite(n,HIGH);n可以是任何口线SS不会对其它SPI的设备产生大影响另一个处理的方法,就是与SS相连的设备不接,也可以释放SPI总线。概要处理器ATmega328工作电压5V输入电压(推荐)7-12V输入电压(范围)6-20V数字IO脚14(其中6路作为PWM输出)模拟输入脚6IO脚直流电流40mA3.3V脚直流电流50mAFlashMemory32KB(ATmega328,其中0.5KB用于bootloader)SRAM2KB(ATmega328)EEPROM1KB(ATmega328)工作时钟16MHz电路图和PCB所有的参考设计是基于Atmega8,168,or328,他们的管脚是兼容的电路图硬件设计文件(Eagle文件)电源ArduinoUNO可以通过3种方式供电,而且能自动选择供电方式外部直流电源通过电源插座供电。电池连接电源连接器的GND和VIN引脚。USB接口直接供电。电源引脚说明VIN---当外部直流电源接入电源插座时,可以通过VIN向外部供电;也可以通过此引脚向UNO直接供电;VIN有电时将忽略从USB或者其他引脚接入的电源。5V---通过稳压器或USB的5V电压,为UNO上的5V芯片供电。3.3V---通过稳压器产生的3.3V电压,最大驱动电流50mA。GND---地脚。存储器ATmega328包括了片上32KBFlash,其中0.5KB用于Bootloader。同时还有2KBSRAM和1KBEEPROM。输入输出1.14路数字输入输出口:工作电压为5V,每一路能输出和接入最大电流为40mA。每一路配置了20-50K欧姆内部上拉电阻(默认不连接)。除此之外,有些引脚有特定的功能o串口信号RX(0号)、TX(1号):与内部ATmega8U2USB-to-TTL芯片相连,提供TTL电压水平的串口接收信号。外部中断(2号和3号):触发中断引脚,可设成上升沿、下降沿或同时触发。(attachInterrupt()DescriptionSpecifiesafunctiontocallwhenanexternalinterruptoccurs.Replacesanypreviousfunctionthatwasattachedtotheinterrupt.MostArduinoboardshavetwoexternalinterrupts:numbers0(ondigitalpin2)and1(ondigitalpin3).Thetablebelowshowstheavailableinterruptpinsonvariousboards.Boardint.0int.1int.2int.3int.4int.5Uno,Ethernet23Mega25602321201918Leonardo3201Due(seebelow)TheArduinoDueboardhaspowerfulinterruptcapabilitiesthatallowsyoutoattachaninterruptfunctiononallavailablepins.YoucandirectlyspecifythepinnumberinattachInterrupt().SyntaxattachInterrupt(interrupt,function,mode)attachInterrupt(pin,function,mode)(ArduinoDueonly)Parametersinterrupt:thenumberoftheinterrupt(int)pin:thepinnumber(ArduinoDueonly)function:thefunctiontocallwhentheinterruptoccurs;thisfunctionmusttakenoparametersandreturnnothing.Thisfunctionissometimesreferredtoasaninterruptserviceroutine.mode:defineswhentheinterruptshouldbetriggered.Fourcontstantsarepredefinedasvalidvalues:LOWtotriggertheinterruptwheneverthepinislow,CHANGEtotriggertheinterruptwheneverthepinchangesvalueRISINGtotriggerwhenthepingoesfromlowtohigh,FALLINGforwhenthepingoesfromhightolow.TheDueboardallowsalso:HIGHtotriggertheinterruptwheneverthepinishigh.(ArduinoDueonly)ReturnsnoneNoteInsidetheattachedfunction,delay()won'tworkandthevaluereturnedbymillis()willnotincrement.Serialdatareceivedwhileinthefunctionmaybelost.Youshoulddeclareasvolatileanyvariablesthatyoumodifywithintheattachedfunction.UsingInterruptsInterruptsareusefulformakingthingshappenautomaticallyinmicrocontrollerprograms,andcanhelpsolvetimingproblems.Goodtasksforusinganinterruptmayincludereadingarotaryencoder,ormonitoringuserinput.Ifyouwantedtoinsurethataprogramalwayscaughtthepulsesfromarotaryencoder,sothatitnevermissesapulse,itwouldmakeitverytrickytowriteaprogramtodoanythingelse,becausetheprogramwouldneedtoconstantlypollthesensorlinesfortheencoder,inordertocatchpulseswhentheyoccurred.Othersensorshaveasimilarinterfacedynamictoo,suchastryingtoreadasoundsensorthatistryingtocatchaclick,oraninfraredslotsensor(photo-interrupter)tryingtocatchacoindrop.Inallofthesesituations,usinganinterruptcanfreethemicrocontrollertogetsomeotherworkdonewhilenotmissingtheinput.Exampleintpin=13;volatileintstate=LOW;voidsetup(){pinMode(pin,OUTPUT);attachInterrupt(0,blink,CHANGE);}voidloop(){digitalWrite(pin,state);}voidblink(){state=!state;}detachInterrupt()DescriptionTurnsoffthegiveninterrupt.SyntaxdetachInterrupt(interrupt)detachInterrupt(pin)o脉冲宽度调制PWM(3、5、6、9、10、11):提供6路8位PWM输出。oSPI(10(SS),11(MOSI),12(MISO),13(SCK)):SPI通信接口。oLED(13号):Arduino专门用于测试LED的保留接口,输出为高时点亮LED,反之输出为低时LED熄灭。2.6路模拟输入A0到A5:每一路具有10位的分辨率(即输入有1024个不同值),默认输入信号范围为0到5V,可以通过AREF调整输入上限。除此之外,有些引脚有特定功能oTWI接口(SDAA4和SCLA5):支持通信接口(兼容I2C总线)。3.AREF:模拟输入信号的参考电压。4.Reset:信号为低时复位单片机芯片。通信接口1.串口:ATmega328内置的UART可以通过数字口0(RX)和1(TX)与外部实现串口通信;ATmega16U2可以访问数字口实现USB上的虚拟串口。2.TWI(兼容I2C)接口:A4(SDA),A5(SCL)3.SPI接口:(10(SS),11(MOSI),12(MISO),13(SCK))下载程序ArduinoUNO上的ATmega328已经预置了bootloader程序,因此可以通过Arduino软件直接下载程序到UNO中,参见[[]]。可以直接通过UNO上ICSPheader直接下载程序到ATmega328,参见[[]]。ATmega16U2的Firmware(固件)也可以通过DFU工具升级,参见[[]]。物理特征ArduinoUNO的最大尺寸为2.7x2.1inches。注意要点ArduinoUNO上USB口附近有一个可重置的保险丝,对电路起到保护作用。当电流超过500mA是会断开USB连接。ArduinoUNO提供了自动复位设计,可以通过主机复位。这样通过Arduino软件下在程序到UNO中软件可以自动复位,不需要在复位按钮。在印制板上丝印RESETEN处可以使能和禁止该功能。
本文标题:Arduino-Uno简介
链接地址:https://www.777doc.com/doc-5186228 .html