m0_62444164 2022-06-30 09:56 采纳率: 100%
浏览 109
已结题

单片机定时器流水灯 C语言版51单片机

#include<reg51.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsingned char
#define long_time0 10
uint n=0;
void init_time0(void);
void main(void)
{
init_time0();
}
void init_time0(void)
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
TR0=1;
while(1);
}
void time0(void)interrupt 1 using 0
{
static uint i=0;
i++;
if(long_time0==i)
{
P0=~(0x01<<n);
if(++n==8)n=0;
i=0;
}
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
}
单片机外接12MHz晶振,编程设置TO定时器工作在定时模式,定时时间1秒钟,每当1秒钟定时F间到达,控制PO口的8个LED灯的亮灭,实现流水灯控制。流水灯流动时,每个状态只让2个灯亮,最左边的2个灯开始亮。当最右边的2个灯亮的状态结束后,恢复到最左边的2个灯亮,依次重复。
能否用上述代码改成这个题目要求

  • 写回答

1条回答 默认 最新

      报告相同问题?

      相关推荐 更多相似问题

      问题事件

      • 系统已结题 7月8日
      • 已采纳回答 6月30日
      • 创建了问题 6月30日

      悬赏问题

      • ¥15 mysql 视图里面如何写时间排序
      • ¥20 misc尽快完成,急! ! !
      • ¥15 protel99.SE提示一下弹窗
      • ¥15 银河麒麟v10 执行.run失败如何解决
      • ¥15 如何用Python打开LA文件
      • ¥15 用mysql做一个高校工资管理系统
      • ¥21 Multisim设计用三端集成稳压器设计稳压电路
      • ¥15 tp6,在iframe里的网址通过获取url参数失败
      • ¥15 打开opendaylight查看拓扑,为什么直接就显示了两个Switch,在mininet配置了一个topo,这两个Switch还在
      • ¥15 无法远程连接pgsql