编写程序,用单片机控制8支发光二极管每支闪烁5次,再移向下支闪烁5次,右循环不止
要求:1.使用P1口作为信号输出口2.延时时间为2S(注:实验系统晶振频率为6MHZ)3.延时程序可通过定时器中断或指令循环来实现4.编写程序的首地址为4000H。5.可...
要求:1.使用P1口作为信号输出口 2.延时时间为2S(注:实验系统晶振频率为6MHZ)
3.延时程序可通过定时器中断或指令循环来实现 4.编写程序的首地址为4000H。
5.可使用仿真软件proteus来完成设计 展开
3.延时程序可通过定时器中断或指令循环来实现 4.编写程序的首地址为4000H。
5.可使用仿真软件proteus来完成设计 展开
3个回答
展开全部
这个程序很简单,我觉得你自己在我的指导下也可以写出来,这样可以增加你的记忆,也可以多学一点东西。就是不明白为什么要从4000H开始执行,这样你的电路就要增EPROM(或EEPROM)了。
程序你可以这样写,
1、让一位亮(MOV P1.0,#0H )
2、闪的次数(MOV R1,#5H ) 命令后面不写了
3、调用2秒延时程序。
4、取反 。
5、调用2秒延时程序。
6、减一判断R1是否到0,没到返回4,到了向下执行。
7、左移一位。
8、转移到2。这样就完成一个循环了。
至于仿真软件proteus 那就简单了,你自己画,如果不会画,找一个图自己修改一下就可以了。
这样写好玩吧?我也好长时间没有用汇编写了,命令有一点小的瑕疵(取反的位数),你可以自琢磨一下再写。
程序你可以这样写,
1、让一位亮(MOV P1.0,#0H )
2、闪的次数(MOV R1,#5H ) 命令后面不写了
3、调用2秒延时程序。
4、取反 。
5、调用2秒延时程序。
6、减一判断R1是否到0,没到返回4,到了向下执行。
7、左移一位。
8、转移到2。这样就完成一个循环了。
至于仿真软件proteus 那就简单了,你自己画,如果不会画,找一个图自己修改一下就可以了。
这样写好玩吧?我也好长时间没有用汇编写了,命令有一点小的瑕疵(取反的位数),你可以自琢磨一下再写。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询