在这里插入图片描述
代码:
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar code DSY_CODE[]=
{
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x7f,0x6f,0x00
}
uchar Display_Buffer[3]={0,0,0}
uint Count = 0
sbit Clear_Key = P3^6
void Show_Count_ON_DSY()
{
Display_Buffer[2] = Count / 100
Display_Buffer[1] = Count % 100 /10
Display_Buffer[0] = Count % 10
if(Display_Buffer[2]==0)
{
Display_Buffer[2] = 0x0a
if(Display_Buffer[1]==0)
{
Display_Buffer[1]=0x0a
}
}
P0 = DSY_CODE[Display_Buffer[0]]
P1 = DSY_CODE[Display_Buffer[1]]
P2 = DSY_CODE[Display_Buffer[2]]
}
void main()
{
P0 = 0xff
P1 = 0xff
P2 = 0xff
IE = 0x81
IT0 = 1
while(1)
{
if(Clear_Key == 0)
Count = 0
Show_Count_NO_DSY()
}
}
void EX_INT0() interrupt 0
{
Count ++
}
INT0:外部中断0触发方式控制位,1表示边沿触发,0表示电平触发;
EX0:外部中断0允许位,1表示允许外部中断0的中断申请;
ET0:定时/计数器0中断允许位,1表示允许定时/计数器0的溢出中断;
IE0:外部中断0中断申请标志位,1表示有中断申请。
扩展资料:
单片机使用注意事项:
1、降低外时钟频率
外时钟是高频的噪声源,除能引起对本应用系统的干扰之外,还可能产生对外界的干扰,以8051为例,最短指令周期1μs时,外时钟是12mhz。而同样速度的motorola 单片机系统时钟只需4mhz微控制器产生的最有影响的高频噪声大约是时钟频率的3倍。
2、低噪声系列单片机
改进的技术将、地安排在两个相邻的引脚上,外部去耦在pcb设计上更容易安排。
3、时钟监测电路、看门狗技术与低电压复位
时钟监控有效与省电指令stop是一对矛盾。只能使用其中之一。 看门狗技术是监测应用程序中的一段定时中断低电压复位技术是监测单片机电源电压,当电压低于某一值时产生复位信号。由于单片机技术的发展,单片机本身对电源电压范围的要求越来越宽。
电源电压从当初的5v降至3.3v并继续下降到2.7v、2.2v、1.8v。在是否使用低电压复位功能时应根据具体应用情况权衡一下。
4、eft技术
毛刺会成为触发信号干扰正常的时钟信号。交替使用施密特电路和rc滤波可以使这类毛刺不起作用,这就是eft技术。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)