实验4.11 液晶滚动显示就是昨天实验的一些修改,比较简单,这里就不单开一篇描述过程了,程序会上传在面包板。 手头上只有共阴极接法的数码管,实验4.12属实折腾了一番,还好最终还是完成了本次实验。下面直接进入正题。 (1)实验目的 利用LIAT中的数码管显示函数库,通过LabVIEW软件控制Arduino Uno控制板,将特定的数据显示在单个数码管上,实现数码管的滚动显示。 (2)硬件连接 《Arduino与LabVIEW开发实战》中使用的是共阳数码管,它的接法是将数码管的阳极接至Arduino Uno控制板上的+5V,将数码管的A、B、C、DP(H,小数点)、D、E、F和G分别接至Arduino Uno控制板上的数字接口D2、D3、D4、D5、D9、D10、D11、D12。 我用的是5011AS数码管,它是共阴极的接法,各引脚对应可以参考下图,中间没有标注的是COM脚,如果是 共阴极 ,那么COM脚都接GND;如果是 共阳极 ,则COM脚都接5V。其他的引脚接法可以参考《Arduino与LabVIEW开发实战》中所述,或者随你心意接,只要在LabVIEW中填入你的连接方式。 (3)程序设计 LabVIEW的前面板:这里的Seven Segment Pins应该填入你当前数码管各引脚连接Arduino Uno的引脚编号,顺序是abcdefgh,我当前的连接方式是ABCDEFGH分别连接D2、D3、D4、D5、D9、D10、D11、D12,所以Seven Segment Pins填入了2、3、4、5、9、10、11、12。 程序框图: LabVIEW程序首先通过设置的串口号与Arduino Uno控制板建立连接,然后调用Seven Segment函数库中的Seven Segment Configure函数节点以配置数码管的管脚连接,接着进入While循环中通过调用Seven Segment Write String函数节点设置写入的数据和滚动间隔的时间。最后,断开与Arduino Uno控制板的连接。 (4)实验与演示 点击运行按钮,LabVIEW程序开始执行,可以看到数码管上滚动显示所设置的数字。由于数码管显示字符的能力有限,一般用来显示数字。也可以显示一些字母,例如h、H、i的大写等等,但是往往会分不清它们和一些数字的区别。 注意 :LIAT中Seven Segment Write String函数节点调用的是Seven Segment Write Char函数节点,而该节点使用的是 共阳极 接法,也就是每次给下位机传输数据时,将对应引脚置低电平。而我使用的是 共阴极 的数码管,对应引脚需要置高电平才能点亮,所以我把Seven Segment Write Char函数节点的VI改了一下,高低电平全部反过来了,所以如果你的数码管也是共阳极的,需要修改Seven Segment Write Char函数节点的VI。 我会把我修改过的Seven Segment Write Char函数节点的VI也放入今天的程序中,有需要的可以直接替换原来的VI进行使用。