广告灯的左移右移任务做单一灯的左移右移,硬件电路如图所示,八个发光二极管L1-L8分别接在单片机的P1.0-P1.7接口上,输出“0”时,发光二极管亮,开始时P1.0→P1.1→P1.2→P1.3→┅→P1.7→P1.6→┅→P1.0亮,重复循环。电路原理图硬件连线把单片机的P1.0-P1.7用8芯排线连接到八路发光二极管的L1-L8端口上,要求:P1.0对应着L0,P1.1对应着L1,……,P1.7对应着L7。程序设计内容我们可以运用输出端口指令MOVP1,A或MOVP1,#DATA,只要给累加器值或常数值,然后执行上述的指令,即可达到输出控制的动作。每次送出的数据是不同,具体的数据如下表1所示:P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0说明L7L6L5L4L3L2L1L011111110L0亮11111101L1亮11111011L2亮11110111L3亮11101111L4亮11011111L5亮10111111L6亮01111111L7亮程序框图汇编源程序ORG0START:MOVR2,#8MOVA,#0FEHSETBCLOOP:MOVP1,ALCALLDELAYRLCADJNZR2,LOOPMOVR2,#8LOOP1:MOVP1,ALCALLDELAYRRCADJNZR2,LOOP1LJMPSTARTDELAY:MOVR5,#20;D1:MOVR6,#20D2:MOVR7,#248DJNZR7,$DJNZR6,D2DJNZR5,D1RETEND