单片机C语言程序设计:TIMER0与TIMER1控制条形LED

C语言是一种计算机程序设计语言。它既有高级语言的特点,又具有汇编语言的特点。它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。因此,它的应用范围广泛。

单片机C语言程序设计:TIMER0与TIMER1控制条形LED

TIMER0与TIMER1控制条形LED硬件原理图

单片机C语言程序设计:TIMER0与TIMER1控制条形LED

TIMER0与TIMER1控制条形LED程序如下:

/* 名称:TIMER0 与 TIMER1 控制条形 LED

说明:定时器 T0 定时控制上一组条形 LED,滚动速度较快

定时器 T1 定时控制下一组条形 LED,滚动速度较慢

*/

#include《reg51.h》

#include《intrins.h》

#define uchar unsigned char

#define uint unsigned int

uchar tc0=0,tc1=0;

//主程序

void main()

{

P0=0xfe;

P2=0xfe;

TMOD=0x11; //定时器 0、定时器1 均工作于方式 1

TH0=(65536-15000)/256; //定时器 0:15ms

TL0=(65536-15000)%256;

TH1=(65536-50000)/256; //定时器 1:50ms

TL1=(65536-50000)%256;

IE=0x8a;

TR0=1; //启动定时器

TR1=1;

while(1);

//T0 中断函数

void Time0() interrupt 1

{

TH0=(65536-15000)/256; //恢复定时器0初值

TL0=(65536-15000)%256;

if(++tc0==10) //150ms 转换状态

{

tc0=0;

P0=_crol_(P0,1);

}

}

//T1 中断函数

void Time1() interrupt 3

{

TH0=(65536-50000)/256; //恢复定时器 1 初值

TL0=(65536-50000)%256;

if(++tc1==10) //500ms 转换状态

{

tc1=0;

P2=_crol_(P2,1);

}

}

      

         扩展程序设计:单片机C语言程序设计之TIMER0控制流水灯

技术专区

  • Alexa语音服务软件扩展STM32Cube
  • 结合DNN API驱动未来神经网络应用的解决方案
  • 针对于高端移动通信和汽车市场的四集群设计
  • 一款基于帧捕捉的开源图形调试器应用设计
  • 即将成为标准配置的最新安全技术:后视摄像系统
  • 单片机C语言程序设计:TIMER0与TIMER1控制条形LED已关闭评论
    A+
发布日期:2019年07月14日  所属分类:物联网