我是靠谱客的博主 勤奋凉面,最近开发中收集的这篇文章主要介绍51单片机c语言多个定时程序,51单片机C语言程序(二)定时计数器中断.doc,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

51单片机C语言程序(二)定时/计数器?中断

程序一

利用定时/计数器T0从P1.0输出周期为1s 的方波,让发光二极管以1HZ闪烁,#include? //52单片机头文件#include //包含有左右循环移位子函数的库#define uint unsigned int??? //宏定义#define uchar unsigned char? //宏定义sbit P1_0=P1^0;uchar tt;void main()????? //主函数{TMOD=0x01;//设置定时器0为工作方式1TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;//开总中断ET0=1;//开定时器0中断TR0=1;//启动定时器0while(1);//等待中断产生}

void timer0() interrupt 1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;tt++;if(tt==20){?tt=0;?P1_0=~P1_0;}}

?

程序二

利用定时/计数器T1产生定时时钟,由P1口控制8个发光二极管,使8个指示灯依次一个一个闪动,闪动频率为10次/秒(8个灯依次亮一遍为一个周期),循环。#include? //52单片机头文件#include //包含有左右循环移位子函数的库#define uint unsigned int??? //宏定义#define uchar unsigned char? //宏定义sbit P1_0=P1^0;uchar tt,a;void main()????? //主函数{TMOD=0x01;//设置定时器0为工作方式1TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;//开总中断ET0=1;//开定时器0中断TR0=1;//启动定时器0a=0xfe;while(1);//等待中断产生}

void timer0() interrupt 1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;tt++;if(tt==2){?tt=0;?P1=a;?a=_crol_(a,1);}}

?

程序三

?同时用两个定时器控制蜂鸣器发声,定时器0控制频率,定时器1控制同个频率持续的时间,间隔2s依次输出1,10,50,100,200,400,800,1k(hz)的方波

#include? //52单片机头文件#include //包含有左右循环移位子函数的库#define uint unsigned int??? //宏定义#define uchar unsigned char? //宏定义sbit beep=P2^3;uchar tt;uint fre,flag;

void main()????? //主函数{fre=50000;beep=0;TMOD=0x11;//设置定时器0,定时器1为工作方式1TH0=(65536-fre)/256;TL0=(65536-fre)%256;TH1=(65536-50000)/256;TL1=(65536-50000)%256;EA=1;//开总中断ET0=1;//开定时器0中断ET1=1;TR1=1;TR0=1;//启动定时器0while(1);//等待中断产生}

void timer0() interrupt 1?? //定时器0中断{TR0=0;??? //进中断后先把定时器0中断关闭,防止内部程序过多而造成中断丢失TH0=(65536-fre)/256;TL0=(65536-fre)%256;tt++;if(flag<40)??? //以下几个if分别用来选取不同的频率?if(tt==10)??{???tt=0;???fre=50000;???beep=~beep;??}if(flag>=40&&flag<80)?{??tt=0;??fre=50000;??beep=~beep;??}if(flag>=80&&flag<120)?{??tt=0;??fre=10000;??beep=~beep;??}if(flag>=120&&flag<160)?{??tt=0;??fre=5000;??beep=~beep;??}if(flag>=160

最后

以上就是勤奋凉面为你收集整理的51单片机c语言多个定时程序,51单片机C语言程序(二)定时计数器中断.doc的全部内容,希望文章能够帮你解决51单片机c语言多个定时程序,51单片机C语言程序(二)定时计数器中断.doc所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(51)

评论列表共有 0 条评论

立即
投稿
返回
顶部