当前位置:文档之家› (原创)51单片机C语言程序设计--速学教程实例(入门篇)之定时器0

(原创)51单片机C语言程序设计--速学教程实例(入门篇)之定时器0


void timer0() interrupt 1 using 1
{
mm++;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
if(mm==20)
{
mm=0;
flag_get=1;
}
}
Delay1ms(200);
flag_get=0;
}
else P10=1;
}
}
/******************************************************************/
/*
名称:定时器 0 中断
*/
/*
功能:通过定时 1 秒产生中断使标志位置 1
*/
/******************************************************************/
}
/******************************************************************/
/*
名称:主函数
*/
/*
功能:利用定时器 0 每隔 1 秒使 P1.0 口 LED 灯亮 */
/******************************************************************/
void main()
{
TMOD=0x01;
//定时器设置
TH0=(65536-50000)/256;
//定时器 0 赋初值
TL0=(65536-50000)%256;
EA=1;
//开总中断
ET0=1;
//开定时器 0 中断
TR0=1;ຫໍສະໝຸດ //开始计数while(1)
{
if(flag_get==1)
{
P10=0;
*/
/******************************************************************/
#include <reg52.h>
//头文件调用,写程序时都要加上
#define uint unsigned int //宏定义,为了后面定义变量书写简便
#define uchar unsigned char
/******************************************************************/
/*
名称:定时器 0 演示程序
*/
/*
作者:苏涛
*/
/*
时间:2011-01-11
*/
/*
单位:安徽建筑工业学院 电子与信息工程学院 */
/*
07 级电子信息工程专业 二班
sbit P10=P1^0;
uchar mm=0;
//全局变量
uchar flag_get=0;
//定义标志位,为 1 则灯亮
/******************************************************************/
/*
名称:延时函数
*/
/*
功能:C 语言中常用的 for 循环延时方法
*/
/*
延时长短可以通过变量初值来改变
*/
/******************************************************************/
void Delay1ms(uint count)
{
uint i,j;
for(i=0;i<count;i++)
for(j=0;j<110;j++);
相关主题