您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > arduino最全的中文教程
Arduino使用教程Arduino控制器控制器控制器控制器使用使用使用使用教程教程教程教程Arduino使用教程概概概概述述述述什么什么什么什么是是是是Arduino?Arduino是一块基与开放原始代码的Simplei/o平台,並且具有使用类似java,C语言的开发环境。让您可以快速使用Arduino语言与Flash或Processing…等软件,作出互动作品。Arduino可以使用开发完成的电子元件例如Switch或Sensors或其他控制器、LED、步进电机或其他输出裝置。Arduino也可以独立运作成为一个可以跟软件沟通的平台,例如说:flashprocessingMax/MSPVVVV或其他互动软件…Arduino开发IDE界面基于开放原始码原则,可以让您免费下载使用开发出更多令人惊奇的互动作品。什么什么什么什么是是是是Roboduino?DFRduino与Arduino完全兼容,只是在原来的基础上作了些改进。Arduino的IO使用的孔座,做互动作品需要面包板和针线搭配才能进行,而DFRduino的IO使用针座,使用我们的杜邦线就可以直接把各种传感器连接到DFRduino上。特色描述特色描述特色描述特色描述1.开放原始码的电路图设计,程式开发界面免费下载,也可依需求自己修改!!2.DFRduino可使用ISP下载线,自我將新的IC程序烧入「bootloader」;3.可依据官方电路图,简化DFRduino模组,完成独立云作的微处理控制器;4.可简单地与传感器、各式各样的电子元件连接(如:红外线,超声波,热敏电阻,光敏电阻,伺服电机等);5.支援多样的互动程式如:Flash,Max/Msp,VVVV,PD,C,Processing等;6.使用低价格的微处理控制器(ATMEGA168V-10PI);7.USB接口,不需外接电源,另外有提供9VDC输入接口;8.应用方面,利用DFRduino,突破以往只能使用滑鼠,键盘,CCD等输入的裝置的互动內容,可以更简单地达成单人或多人游戏互动。性能描述性能描述性能描述性能描述1.DigitalI/O数字输入/输出端共0~13。2.AnalogI/O模拟输入/输出端共0~5。3.支持USB接口协议及供电(不需外接电源)。4.支持ISP下载功能。5.支持单片机TX/RX端子。6.支持USBTX/RX端子。7.支持AREF端子。8.支持六組PWM端子(Pin11,Pin10,Pin9,Pin6,Pin5,Pin3)。9.输入电压:接上USB时无须外部供电或外部5V~9VDC输入。10.输出电压:5VDC输出和3.3VDC输出和外部电源输入。11.采用AtmelAtmega168V-10PI单片机。12.DFRduino大小尺寸:宽70mmX高54mm。Arduino使用教程第一第一第一第一课课课课Arduino语言语言语言语言Arduino语言是建立在C/C++基础上的,其实也就是基础的C语言,Arduino语言只不过把AVR单片机(微控制器)相关的一些寄存器参数设置等都函数化了,不用我们去了解他的底层,让不太了解AVR单片机(微控制器)的朋友也能轻松上手。那么这里就简单的注释一下Arduino语言。/*************基础C语言*************/关键字关键字关键字关键字::::•if•if...else•for•switchcase•while•do...while•break•continue•return•goto语法符号语法符号语法符号语法符号::::•;•{}•//•/**/运算符运算符运算符运算符::::•=•+•-•*•/•%•==•!=Arduino使用教程•••=•=•&&•||•!•++•--•+=•-=•*=•/=数据类型数据类型数据类型数据类型::::•boolean布尔类型•char字符类型•byte字节类型•int整数类型•unsignedint无符号整型•long长整型•unsignedlong无符号长整型•float实数类型•double•string•array•void数据类型转换数据类型转换数据类型转换数据类型转换::::•char()•byte()•int()•long()•float()常量常量常量常量::::•HIGH|LOW表示数字IO口的电平,HIGH表示高电平(1),LOW表示低电平(0)。Arduino使用教程•INPUT|OUTPUT表示数字IO口的方向,INPUT表示输入(高阻态),OUTPUT表示输出(AVR能提供5V电压40mA电流)。•true|falsetrue表示真(1),false表示假(0)。/**************************************/以上为基础c语言的关键字和符号,有c语言基础的都应该了解其含义,这里也不作过多的解释。/*************Arduino语言*************/结构结构结构结构•voidsetup()初始化变量,管脚模式,调用库函数等•voidloop()连续执行函数内的语句功能功能功能功能数字数字数字数字I/O•pinMode(pin,mode)数字IO口输入输出模式定义函数,pin表示为0~13,mode表示为INPUT或OUTPUT。•digitalWrite(pin,value)数字IO口输出电平定义函数,pin表示为0~13,value表示为HIGH或LOW。比如定义HIGH可以驱动LED。•intdigitalRead(pin)数字IO口读输入电平函数,pin表示为0~13,value表示为HIGH或LOW。比如可以读数字传感器。模拟模拟模拟模拟I/O•intanalogRead(pin)模拟IO口读函数,pin表示为0~5(ArduinoDiecimila为0~5,Arduinonano为0~7)。比如可以读模拟传感器(10位AD,0~5V表示为0~1023)。•analogWrite(pin,value)-PWM数字IO口PWM输出函数,Arduino数字IO口标注了PWM的IO口可使用该函数,pin表示3,5,6,9,10,11,value表示为0~255。比如可用于电机PWM调速或音乐播放。扩展扩展扩展扩展I/O•shiftOut(dataPin,clockPin,bitOrder,value)SPI外部IO扩展函数,通常使用带SPI接口的74HC595做8个IO扩展,dataPin为数据口,clockPin为时钟口,bitOrder为数据传输方向(MSBFIRST高位在前,LSBFIRST低位在前),value表示所要传送的数据(0~255),另外还需要一个IO口做74HC595的使能控制。•unsignedlongpulseIn(pin,value)脉冲长度记录函数,返回时间参数(us),pin表示为0~13,value为HIGH或LOW。比如value为HIGH,那么当pin输入为高电平时,开始计时,当pin输入为低电平时,停止计时,然后返回该时间。时间函数时间函数时间函数时间函数Arduino使用教程•INPUT|OUTPUT表示数字IO口的方向,INPUT表示输入(高阻态),OUTPUT表示输出(AVR能提供5V电压40mA电流)。•true|falsetrue表示真(1),false表示假(0)。/**************************************/以上为基础c语言的关键字和符号,有c语言基础的都应该了解其含义,这里也不作过多的解释。/*************Arduino语言*************/结构结构结构结构•voidsetup()初始化变量,管脚模式,调用库函数等•voidloop()连续执行函数内的语句功能功能功能功能数字数字数字数字I/O•pinMode(pin,mode)数字IO口输入输出模式定义函数,pin表示为0~13,mode表示为INPUT或OUTPUT。•digitalWrite(pin,value)数字IO口输出电平定义函数,pin表示为0~13,value表示为HIGH或LOW。比如定义HIGH可以驱动LED。•intdigitalRead(pin)数字IO口读输入电平函数,pin表示为0~13,value表示为HIGH或LOW。比如可以读数字传感器。模拟模拟模拟模拟I/O•intanalogRead(pin)模拟IO口读函数,pin表示为0~5(ArduinoDiecimila为0~5,Arduinonano为0~7)。比如可以读模拟传感器(10位AD,0~5V表示为0~1023)。•analogWrite(pin,value)-PWM数字IO口PWM输出函数,Arduino数字IO口标注了PWM的IO口可使用该函数,pin表示3,5,6,9,10,11,value表示为0~255。比如可用于电机PWM调速或音乐播放。扩展扩展扩展扩展I/O•shiftOut(dataPin,clockPin,bitOrder,value)SPI外部IO扩展函数,通常使用带SPI接口的74HC595做8个IO扩展,dataPin为数据口,clockPin为时钟口,bitOrder为数据传输方向(MSBFIRST高位在前,LSBFIRST低位在前),value表示所要传送的数据(0~255),另外还需要一个IO口做74HC595的使能控制。•unsignedlongpulseIn(pin,value)脉冲长度记录函数,返回时间参数(us),pin表示为0~13,value为HIGH或LOW。比如value为HIGH,那么当pin输入为高电平时,开始计时,当pin输入为低电平时,停止计时,然后返回该时间。时间函数时间函数时间函数时间函数Arduino使用教程•unsignedlongmillis()返回时间函数(单位ms),该函数是指,当程序运行就开始计时并返回记录的参数,该参数溢出大概需要50天时间。•delay(ms)延时函数(单位ms)。•delayMicroseconds(us)延时函数(单位us)。数学函数数学函数数学函数数学函数•min(x,y)求最小值•max(x,y)求最大值•abs(x)计算绝对值•constrain(x,a,b)约束函数,下限a,上限b,x必须在ab之间才能返回。•map(value,fromLow,fromHigh,toLow,toHigh)约束函数,value必须在fromLow与toLow之间和fromHigh与toHigh之间。•pow(base,exponent)开方函数,base的exponent次方。•sq(x)平方•sqrt(x)开根号三角函数三角函数三角函数三角函数•sin(rad)•cos(rad)•tan(rad)随机数函数随机数函数随机数函数随机数函数•randomSeed(seed)随机数端口定义函数,seed表示读模拟口analogRead(pin)函数。•longrandom(max)随机数函数,返回数据大于等于0,小于max。•longrandom(min,max)随机数函数,返回数据大于等于min,小于max。外部中断函数外部中断函数外部中断函数外部中断函数•attachInterrupt(interrupt,,mode)外部中断只能用到数字IO口2和3,interrupt表示中断口初始0或1,表示一个功能函数,mode:LOW低电平中断,CHANGE有变化就中断,RISING上升沿中断,FALLING下降沿中断。•detachInterrupt(interrupt)中断开关,interrupt=1开,interrupt=0关。中断使能函数中断使能函数中断使能函数中断使能函数•interrupts()使能中断•noInterrupts()禁止中断串口收发函数串口收发函数串口收发函数串口收发函数•Serial.begin(speed)串口定义波特率函数,speed表
本文标题:arduino最全的中文教程
链接地址:https://www.777doc.com/doc-3596906 .html