- 1、本文档共5页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
单片机实验报告-数字时钟设计报告
一、实验目的
1、掌握单片机的主要原理及相关的功能和特点。
2、熟悉单片机测试与调试的一般步骤与操作。
3、掌握定时/计数功能在单片机系统中的实现方法。
4、领会单片机实验模块设计思想。
二、实验内容
本次实验主要是利用STC89C52单片机实现数字时钟设计,实验从硬件电路组成和单
片机编程两个部分来实现数字时钟的设计。
(1)硬件电路设计
该系统的硬件电路设计主要包括PCB板的设计、电源的设置、单片机与外设的连接以
及时钟芯片的接入。利用AltiumDesigner软件来进行电路板设计,将STC89C52芯片与
时钟模块(DS1302)以及屏幕连接,整个电路如图1所示。
图1数字时钟使用STC89C52的电路图
(2)单片机程序设计
本实验使用keil软件对单片机程序进行编程,主要的部分如下:
(2.1)定义单片机IO口
首先定义单片机IO口,其定义方式如下:
#includereg52.h
sbitRow0=P1^0;//定义P1.0作为数码管的Row0控制端
sbitRow1=P1^7;//定义P1.7作为数码管的Row1控制端
sbitRow2=P1^1;//定义P1.1作为数码管的Row2控制端
sbitRow3=P2^0;//定义P2.0作为数码管的Row3控制端
sbitCol0=P1^2;//定义P1.2作为数字管的Col0控制端
sbitCol1=P1^3;//定义P1.3作为数字管的Col1控制端
sbitCol2=P1^4;//定义P1.4作为数字管的Col2控制端
sbitCol3=P1^5;//定义P1.5作为数字管的Col3控制端
sbitCol4=P1^6;//定义P1.6作为数字管的Col4控制端
(2.2)定义LED数码管数据和定义变量
//定义LED数码管数据
unsignedcharcode
table[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
unsignedchari,j,k,m,n,s;
(2.3)调用初始化函数
再调用初始化函数,用于完成I/O口、定时器0/1及外部中断的初始化,代码如下:
voidinit(void){
TMOD=0x01;//定时器0的模式1
TH0=0x3c;//定时器0赋初值
TL0=0xb0;
EA=1;//外部总中断开启
ET0=1;//允许定时器0中断
ET1=0;//不允许定时器1中断
TR0=1;//开启定时器0
TR1=1;//关闭定时器1
}
(2.4)主函数
最后我们考虑到,应该实现的LED点阵的显示函数和定时更新时钟的函数,本实验的
核心代码如下:
voidmain(){
init();//调用初始化函数
while(1){
display();//调用LED点阵显示函数
number_refresh();//调用定时更新时钟函数
}
}
(2.5)LED点阵显示函数
为保证LED点阵的正常工作,可利用多次延时函数,定义LED点阵显示函数,每次显
示一位数字,实现数字从左往右以及从右往左的滚动移动显示,具体实现如下:
voiddisplay(int){
P2=0xfe;//定义P2这一行位先低电平,控制第一位显示
P0=table[m];//将得到的数字m显示在第一位数码管
Delay_1ms(2);//延时1ms
P2=0xf
文档评论(0)