基于单片机的数字时钟
C51单片机
王若愚 学号200800800307
2010/7/18
概述
ATC51是美国ATMEL公司生产的低功耗,高性能CMOS8位单片机,片内含4K的可编程的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚。它集Flash程序存储器既可在线编程(ISP)也可用传统方法进行编程及通用8位微处理器于单片机芯片中,ATMEL公司的功能强大,低价位ATS51单片机可为您提供许多高性价比的应用场合,可灵活应用于各种控制领域。
功能特性概述
ATS51提供以下标准功能:4K字节闪速存储器,128字节内部RAM,32个I/O口线,看门狗(WDT),两个数据指针,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,ATS51可降至0HZ的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中到内容,但振荡器停止工作并禁止其它所有工作部件直到下一个硬件复位。
ATS51硬件电路原理
复位及振荡电路
复位电路由按键复位和上电复位两部分组成,如图2所示。ATS系列单片及为高电平复位,通常在复位引脚RST上连接一个电容到VCC,再连接一个电阻到GND,由此形成一个RC充放电回路保证单片机在上电时RST脚上有足够时间的高电平进行复位,随后回归到低电平进入正常工作状态,这个电阻和电容的典型值为8.2K和10uF。
按键复位就是在复位电容上并联一个开关,当开关按下时电容被放电、RST也被拉到高电平,而且由于电容的充电,会保持一段时间的高电平来使单片机复位。
MCS51 LITE使用22.1184MHz的晶体振荡器作为振荡源,由于单片机内部带有振荡电路,所以外部只要连接一个晶振和两个电容即可,电容容量一般在15pF至50pF之间。
复位及振荡电路
RS232串口电路
RS232串口电路使用MAX232CPE作为电平转换芯片,并通过套件提供的串口电缆连接到计算机背后的COM口(9针D型口),用于MCS51 LITE与上位机通信以及和其他串口设备的数据交互。 需要注意的是这里在电路板上对TxD和RxD进行了交叉,对应使用的DB9接头类型为Female,使用的线缆为延长线,也叫做直连线,线缆一头为Female一头为Male。如果电路板上不将RxD和TxD交叉,就应该采用Male类型的接头和交叉线缆(两头均为Female)连接。
串口电平转换电路
八段数码管显示电路
MCS51 LITE包含两个共阳8段数码管显示器,使用动态扫描方式驱动。共阳极作为位选有PNP三极管驱动连接在P1.0和P1.1口,八位段选在通过330Ω限流后连接在单片机的P0口上。由于数码管是共阳的,所以当驱动信号为0时对应的数码管才点亮。
数码管显示电路
按键及LED电路
开发板上提供了8个LED,由P2口控制,同样采用共阳级接法,所以只有当P2口输出
低电平时LED才会点亮。这样做的主要原因是因为单片机的低电平驱动能力高电平强。 4个按键使用10K电阻上拉后连接到单片机的P3.2-P3.5口,中间串接的330Ω电阻起到限流作用。按键没有按下时口线上因为上拉而呈现高电平,当某个按键按下时对应口线会被连接到GND而变成低电平。
另外由于LED的反向截止特性以及按键上拉较弱,P2口及P3.2-P3.5口亦可以兼做通用IO口使用,用来连接外部器件。MCS51 Lite板上也提供了插针方便连接。
按键及LED显示电路
数字时钟设计
实验任务 (1. (2. (3. (4.
开机时,显示12:00:00的时间开始计时;
P0.0/AD0控制“秒”的调整,每按一次加1秒; P0.1/AD1控制“分”的调整,每按一次加1分; P0.2/AD2控制“时”的调整,每按一次加1个小时;
系统板上硬件连线 (1. 把“单片机系统”区域中的P0.0-P0.7端口用8芯排线连接到“动态数码显示”区
域中的A-H端口上;
(2. 把“单片机系统”区域中的P1.0、p1.1、p2.3、p2.6端口分别连接到数码管的段选
位A1-A4上。
(3. 把“单片机系统”区域中的 P3.2-P3.5端口分别用导线连接到“式键盘”区
域中的K1—K4端口上;
C51的其他功能的实现
本实验板采用的是一个4位八段数码管,如果在自主设计区域加几块点阵就可以按意愿显示一定的图案,如果加上液晶,可以扩充显示信息的容量。
开发板有转换速度可达到17us 的8位AD转换器TLC9和10位的DA转换器TLC5615。可以做成数字电压或者是数字温度计。
单片机来产生不同的频率非常方便,不同频率对应着不同的音阶,对于不同的节拍(即不同音阶之间的间隔)我们也可以用单片机的定时/计数器来完成。这样就可以用单片机做一个电子琴。
心得 总结
对于开发板的焊接工作较为容易,但是仍要注意芯片的焊接方向是否正确,以及电容的正负极是否反向等。编程可以使用C语言,也可使用汇编语言,但是较为难,需要对板子的整体结构和功能有所了解,并且需要一定的基础。
通过这次实践学习,基本掌握了一些单片机的原理及使用方法,为以后的学习奠定了基础。
附录
START: MOV SECOND,#00H MOV MINITE,#00H MOV HOUR,#12
MOV DISPBIT,#00H MOV T2SCNTA,#00H MOV T2SCNTB,#00H MOV TEMP,#0FEH LCALL DISP MOV TMOD,#01H
MOV TH0,#(65536-2000) / 256 MOV TL0,#(65536-2000) MOD 256 SETB TR0 SETB ET0 SETB EA
WT: JB SECONDK,NK1 LCALL DELY10MS JB SECONDK,NK1 INC SECOND MOV A,SECOND CJNE A,#60,NS60 MOV SECOND,#00H NS60: LCALL DISP JNB SECONDK,$ NK1: JB MINITEK,NK2 LCALL DELY10MS JB MINITEK,NK2 INC MINITE MOV A,MINITE CJNE A,#60,NM60 MOV MINITE,#00H NM60: LCALL DISP JNB MINITEK,$ NK2: JB HOURK,NK3 LCALL DELY10MS JB HOURK,NK3 INC HOUR MOV A,HOUR
CJNE A,#24,NH24 MOV HOUR,#00H NH24: LCALL DISP JNB HOURK,$ NK3: LJMP WT DELY10MS:
MOV R6,#10 D1: MOV R7,#248 DJNZ R7,$ DJNZ R6,D1 RET DISP:
MOV A,#DISPBUF ADD A,#8 DEC A MOV R1,A MOV A,HOUR MOV B,#10 DIV AB MOV @R1,A DEC R1
MOV A,B MOV @R1,A DEC R1 MOV A,#10 MOV@R1,A DEC R1
MOV A,MINITE MOV B,#10 DIV AB MOV @R1,A DEC R1 MOV A,B MOV @R1,A DEC R1 MOV A,#10 MOV@R1,A DEC R1
MOV A,SECOND MOV B,#10 DIV AB MOV @R1,A DEC R1 MOV A,B MOV @R1,A DEC R1 RET INT_T0:
MOV TH0,#(65536-2000) / 256 MOV TL0,#(65536-2000) MOD 256 MOV A,#DISPBUF ADD A,DISPBIT MOV R0,A MOV A,@R0
MOV DPTR,#TABLE MOVC A,@A+DPTR MOV P1,A
MOV A,DISPBIT MOV DPTR,#TAB MOVC A,@A+DPTR MOV P3,A INC DISPBIT MOV A,DISPBIT CJNE A,#08H,KNA MOV DISPBIT,#00H KNA: INC T2SCNTA MOV A,T2SCNTA CJNE A,#100,DONE MOV T2SCNTA,#00H INC T2SCNTB MOV A,T2SCNTB CJNE A,#05H,DONE MOV T2SCNTB,#00H INC SECOND MOV A,SECOND CJNE A,#60,NEXT MOV SECOND,#00H INC MINITE MOV A,MINITE CJNE A,#60,NEXT MOV MINITE,#00H INC HOUR MOV A,HOUR
CJNE A,#24,NEXT
MOV HOUR,#00H NEXT: LCALL DISP DONE: RETI
TABLE: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,40H TAB: DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH END
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- sarr.cn 版权所有 赣ICP备2024042794号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务