《二极管循环点亮.docx》由会员分享,可在线阅读,更多相关《二极管循环点亮.docx(4页珍藏版)》请在三一办公上搜索。
1、一. 实验要求1. P1 口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。2. P1 口做输入口,接八个扭子开关,以实验机上74LS273做输出口,编写程序读取开关状态, 将此状态,在发光二极管上显示出来。二. 实验目的1. 学习P1 口的使用方法。2. 学习延时子程序的编写和使用。三. 实验电路及连线TD63B 74132UADO 3 u.Dl 4 泓I为 7UAD4 ?3 UAL-? 14 3 17I 时? 1#SW4D1Q1D2D孕D4Q4D宰D6Q占D7Q7D8CLKCLR Fg15 PU5Ti ?06P07四. 实验说明1.P1 口是准双向口。它作为输出口时与一般的双向
2、口使用方法相同。由准双向口结构可知当P1 口作为输入口时,必须先对它置高电平使内部MOS管截止。因为内部上拉电阻阻值是20KQ40KQ,故不会对外部输入产生影响。若不先对它置高,且原来是低电平,则MOS管导通, 读入的数据是不正确的。2.延时子程序的延时计算问题 对于程序DELAY:MOV R0, #00HDELAY1:MOV R1, #0B3HDJNZ R1, $DJNZ R0, DELAY1查指令表可知MOV, DJNZ指令均需用两个机器周期,而一个机器周期时间长度为12 /11.0592MHz,所以该段程序执行时间为:(0B3 + 1)X256+1)X2X 12:11O592OO= 100.002mS五. 实验程序框图程序框图:源代码:ORG 0000HLJMP STARTORG 0040HSTART:MOV SP,#60HMOV A,#0FEHROTATE: MOV P1,A ;写 P1 口RL A;循环左移LCALL DELAY涎时NOPSJMP ROTATEDELAY:;延时子程序(1秒)MOV R0,#0AHDELAY1: MOV R1,#00HDELAY2: MOV R2,#0B2HDJNZ R2,$DJNZ R1,DELAY2DJNZ R0,DELAY1RETEND