上QQ阅读APP看书,第一时间看更新
2.4 使用字节控制流水灯
任务书:用操作字节(即并行I/O口控制)的方法,控制图2-1所示流水灯每次亮三个并循环流动。
点亮顺序是
VL7、VL6、VL5同时亮→VL6、VL5、VL4同时亮→VL5、VL4、VL3同时亮→
VL4、VL3、VL2同时亮→VL3、VL2、VL1同时亮→VL2、、VL1、VL0同时亮→
VL7、VL1、VL0同时亮→VL7、VL6、VL0同时亮
2.4.1 编程思路
51系列单片机是8位单片机,每一组端口共有8个引脚。每个引脚可输出一个电平(0或1),一组端口可同时输出8个电平,这8个电平正好构成了一个字节。用字节操作来控制同时点亮几个LED的流动,要比位操作简单得多。例如,在图2-1所示的流水灯电路中,若要点亮VL1、VL3、VL5、VL7,只需P0端口从高位P0.7到低位P0.0输出01010101。将这8位二进制数转换为十六进制数为0x55,编程语句可写成P0=0x55。因此,用字节控制可以轻易地实现三个灯的流动。