单片机时钟程序C语言(刚学的),帮看看错在哪啊,仿真总是一闪就灭

程序太长只能附加文件... 程序太长只能附加文件 展开
 我来答
意法半导体(中国)投资有限公司 2020-01-15
展开全部
单片机(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。
陈帅帅2
2015-09-29 · TA获得超过164个赞
知道小有建树答主
回答量:341
采纳率:0%
帮助的人:118万
展开全部
#include <reg51.h>
unsigned char DispBuf[8];

/*
函数:T1INTSVC()
功能:定时器T1的中断服务函数
*/
void T1INTSVC() interrupt 3
{
static unsigned char n = 0;
TR1 = 0;
TH1 = (65536-3000)/256;
TL1 = (65536-3000)%256;
TR1 = 1;
    P1=~(1<<n);
P2=DispBuf[n];
n++;
n &= 0x07;
}


/*
函数:DispClear()
功能:清除数码管的所有显示
*/
void DispClear()
{
unsigned char i;
for ( i=0; i<8; i++ )
{
DispBuf[i] = 0x00;
}
}


/*
函数:DispChar()
功能:在数码管上显示字符
参数:
x:数码管的坐标位置(0~7)
c:要显示的字符(仅限十进制数字和减号)
*/
void DispChar(unsigned char x, unsigned char c)
{
//0123456789的数码管字型数据
code unsigned char Tab[] = {0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};
x &= 0x07;
if ( c == '-' )
{
DispBuf[x] = 0x40;
}
else if ( ( c >= '0' ) && ( c <= '9' ) )
{
DispBuf[x] = Tab[c-'0'];
}
}


/*
函数:DispStr()
功能:在数码管上显示字符串
参数:
x:数码管的坐标位置(0~7)
*s:要显示的字符串(字符仅限十进制数字和减号)
*/
void DispStr(unsigned char x, unsigned char *s)
{
unsigned char c;
for (;;)
{
c = *s;
if ( c == '\0' ) break;
s++;
DispChar(x,c);
x++;
}
}


/*
函数:DispDotOn()
功能:显示指定位的小数点
参数:x为数码管坐标
*/
void DispDotOn(unsigned char x)
{
DispBuf[x] |= 0x80;
}


/*
函数:DispInit()
功能:数码管扫描显示初始化
*/
void DispInit()
{
DispClear();
EA = 0;
TMOD |= 0x10;
TMOD |= 0x01;
TH1 = 0xFC;
TL1 = 0x66;
TR1 = 1;
ET1 = 1;
EA = 1;
}
/*
Disp.h
数码管扫描显示驱动程序头文件
*/


#ifndef Disp_h_
#define Disp_h_


//清除数码管的所有显示
void DispClear();


//在数码管位置x(0~7)处显示字符c(仅限十进制数字和减号)
void DispChar(unsigned char x, unsigned char c);


//在数码管位置x(0~7)处显示字符串*s
void DispStr(unsigned char x, unsigned char *s);


//显示指定位置x(0~7)处的小数点
void DispDotOn(unsigned char x);


//数码管扫描显示初始化
void DispInit();


#endif //Disp_h_

LED点亮都要延时一段时间,建议吧点亮的程序放在定时器中断里面我有现成的八位数码管后台刷新的程序,在主函数里面包含Display.h就可以了。

意法半导体(中国)投资有限公司
2020-01-15 广告
单片机(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制... 点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式