arduino入门很简单(中).ppt
《arduino入门很简单(中).ppt》由会员分享,可在线阅读,更多相关《arduino入门很简单(中).ppt(92页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第6章发光二极管LEDO6.1 使用到的专用器件O6.2 驱动单个LED程序O6.3 驱动LED点阵O6.4 使用74HC595驱动LEDO6.5 使用MAX7219驱动LEDO6.6 RGB三色LEDO6.7 七段数码管6.1 使用到的专用器件O在本节中只需要使用到一个专用的器件LED二极管。LED二极管的类型和规格有很多,这里使用的是一个蓝色的5MM发光二极管。6.2 驱动单个LED程序O驱动LED的程序非常简单。要持续地点亮一个LED二极管,只需要为LED二极管提供一个额定范围内恒定的电压即可。Arduino开发板的针脚有输入和输出两种模式,将针脚设置为输出模式后就可以做为电源。指定Ar
2、duino针脚模式的函数原型如下:OpinMode(pin,mode)6.2.1 使用数字针脚点亮LEDO由于数字针脚只能输出高电压和低电压,因此在不借用其他元件的情况下只可以点亮或者熄灭LED。1.电路图2.程序Oint pin=10;/指定LED连接的针脚Ovoid setup()O pinMode(pin,OUTPUT);/设置针脚模式为输出O digitalWrite(pin,HIGH);/设置针脚输出电压OOvoid loop()O O6.2.2 使用模拟针脚点亮LEDO经过前面讲解可以得知,analogWrite()函数可以修改针脚的输出电压(05V)。那么,就可以通过为analo
3、gWrite()函数传入不同的参数来控制针脚的输出电压,进而就可以控制LED的亮度。6.2.3 使用LED发送S.O.S摩尔斯码O摩尔斯电码可以很方便地用来发送英文字母、数字以及部分符号。摩尔斯电码是通过控制电信号的长短来发声信息的。SOS这三个字母的摩尔斯电码表示如下:O 6.2.4使用LED发送摩尔斯电码O从示例6-5中的代码中也可以看出dot()和dash()函数是非常类似的,只是等待的时间不同而已,而这个等待的时间也是以一个基准的时间变量stdd来设置的。那么,我们就可以进一步地将上面这两个个函数用一个函数来实现:Ovoid dot(int ledPin,int len,int std
4、d)O digitalWrite(ledPin,HIGH);O delay(stdd*len);O digitalWrite(ledPin,LOW);O delay(stdd*2);O6.2.5 LED跑马灯6.2.6使用LED模拟交通灯6.3 驱动LED点阵O6.3.1 LED点阵显示表情O6.3.2 LED点阵跑马灯O6.3.3 回纹灯O6.3.4 矩形回缩灯6.3.1LED点阵显示表情6.3.2LED点阵跑马灯O在6.3.5小节中实现了由三个LED组成的简易跑马灯,在本节就在8*8的LED点阵上来实现跑马灯。这个示例的电路不需要改动,我们直接编写对应的程序就可以了。6.3.3回纹灯O回纹
5、表示的是从外圈向中心回旋的方式,在我们将要实现的回纹灯就是使用LED点阵来实现这一描述。回纹灯的实现电路与之前的LED点阵示例接法相同,因此这里只需要重新设计程序即可。6.3.4矩形回缩灯O矩形回缩灯就是从LED点阵最外圈的8*8矩形回缩到最小的2*2的矩形(以8*8点阵为例),以这种形式来展现类似矩形缩放的效果。其电路接法与前面的所有示例相同,因此这里只需要重新编写程序即可。6.4使用74HC595驱动LEDO6.4.1 74HC595使用方式O6.4.2 使用74HC595驱动LED点阵6.4.1 74HC595使用方式O74HC595是一个CMOS(Complementary Metal
6、-Oxide-Semiconductor)器件6.4.2 使用74HC595驱动LED点阵6.5 使用MAX7219驱动LEDO6.5.1 MAX7219LED显示驱动器O6.5.2 MAX7219的数据格式O6.5.3 MAX7219的寄存器O6.5.4 LedControl库O6.5.5 Arduino通过MAX7219控制8*8LED点阵O6.5.6 MAX7219级联控制8*40LED点阵6.5.1MAX7219LED显示驱动器OMAX7219是小巧但功能强大的串行输入输出共阴极显示驱动器。它非常容易驱动七段LED数码管和LED点阵。6.5.2 MAX7219的数据格式OMAX7219
7、的数据是以16位为一个单位的。D15D15D14D14D13D13D12D12D11D11D10D10D9D9D8D8D7D7D6D6D5D5D4D4D3D3D2D2D1D1D0D0X XXXX寄存器地址数据6.5.3 MAX7219的寄存器OMAX7219有14个可编址的寄存器,他们可以通过D11D8的值来指定。寄存器寄存器寄存器地址寄存器地址1616进制表示制表示D15D12D11D10D9D8No-OpNo-OpX00000 xX0Digit 0Digit 0X00010 xX1Digit 1Digit 1X00100 xX2Digit 2Digit 2X00110 xX3Digit 3
8、Digit 3X01000 xX4Digit 4Digit 4X01010 xX5Digit 5Digit 5X01100 xX6Digit 6Digit 6X01110 xX7Digit 7Digit 7X10000 xX8Decode ModeDecode ModeX10010 xX9IntensityIntensityX10100 xXAScan LimitScan LimitX10110 xXBShutdownShutdownX11000 xXCDisplay TestDisplay TestX11110 xXF6.5.4LedControl库OLedControl函数库是一个可以全面
9、控制MAX7219的一个第三方库,它可以从http:/playground.arduino.cc/uploads/Main/LedControl.zip获取。6.5.5Arduino通过MAX7219控制8*8LED点阵O1.MAX7219控制8*8LED点阵的连接电路O2.Arduino通过MAX7219控制8*8LED的代码实现1.MAX7219控制8*8LED点阵的连接电路2.Arduino通过MAX7219控制8*8LED的代码实现6.5.6MAX7219级联控制8*40LED点阵O所谓级联就是将两个以上的设备通过某种方式连接起来,起到扩容的效果。MAX7219的级联非常容易,只需要将
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- arduino 入门 简单
限制150内