首页 新闻 会员 周边 捐助

求单片机汇编程序(不用延时)

0
[待解决问题]

P1口的P1.0~P1.7分别接八个发光二极管。开机后:
1)第一秒钟L1和L3亮,第二秒钟L2和L4亮,第三秒钟L5和L7亮,第四秒钟L6,L8亮;
2)第五秒钟L1、L3、L5和L7亮,第六秒钟L2、L4、L6和L8亮;
3)第七秒钟八个二极管全亮,第八秒钟全灭;
4)以后又从头开始,L1和L3亮, 然后L2和L4亮,....一直循环下去。
要求:编写程序模拟一时序控制装置。由51系列单片机的内部定时器1,按工作方即作为十六位定时器使用每0.1秒钟T1溢出中断一次。在此基础上可增加外部中断反序工作。

karoyeeqx的主页 karoyeeqx | 菜鸟二级 | 园豆:204
提问于:2018-06-09 20:42
< >
分享
所有回答(1)
0

 int time=0;

switch(time)

{

case 0:P1=P1.0|P1.2;break;


case 10:P1=P1.1|P1.3;break;

以此类推,defult直接过

}
中断中time++;

if(time==80)time=0;

这个是最简单的思路了.反序另外写一套就行.

吴瑞祥 | 园豆:29449 (高人七级) | 2018-06-09 22:50
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册