用C语言写一个51单片机定时器秒表程序
时间: 2023-05-19 11:01:48 浏览: 260
基于51单片机的C语言开发秒表程序
5星 · 资源好评率100%
好的,以下是一个简单的51单片机定时器秒表程序的C语言代码:
```c
#include <reg51.h>
#define FREQ 11059200UL // 单片机晶振频率
#define TIMER_PRESCALER 12 // 定时器分频系数
sbit LED = P1^0; // 定义LED引脚
unsigned int count = 0; // 计数器
unsigned char seconds = 0; // 秒数
void timer_isr() interrupt 1 // 定时器中断服务程序
{
TH0 = (65536 - FREQ / TIMER_PRESCALER / 1000) / 256; // 重新设置定时器初值
TL0 = (65536 - FREQ / TIMER_PRESCALER / 1000) % 256;
count++; // 计数器加1
if (count == 1000) // 1秒钟到了
{
count = 0; // 计数器清零
seconds++; // 秒数加1
if (seconds == 60) // 1分钟到了
{
seconds = 0; // 秒数清零
}
}
}
void main()
{
TMOD = 0x01; // 设置定时器0为模式1
TH0 = (65536 - FREQ / TIMER_PRESCALER / 1000) / 256;
阅读全文