ImageVerifierCode 换一换
格式:DOCX , 页数:28 ,大小:435.25KB ,
资源ID:19610223      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/19610223.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于单片机的个性化电子钟Word格式.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于单片机的个性化电子钟Word格式.docx

1、4 程序模块框图5 程序清单6 设计或调试过程中碰到的问题及决计方法7 测试数据,误差分析,补偿方法,补偿前后精度比较8 完成课程设计后的收获或体会,对单片机课程设计提出改进意见。三 课程设计验收标准:本次课程设计的成绩由大部分组成:即硬件设计软件设计和课程设计报告。硬件设计主要是电路图设计(可以用手工画或计算机辅助设计)。软件部分在答辩时验收,并结合答辩情况进行评定。1 电路原理图设计(20%),包括以下知识点:CPU及时钟,复位电路显示接口电路键盘接口电路蜂鸣器驱动电路电源部分2 软件设计及答辩(60%),包括以下知识点:主程序及初始化程序定时中断及计时程序定时中断及显示程序键盘程序闹铃程

2、序按键声程序3 课程设计报告(20%),具体要求见上面所述.四 基础较好的学生可以结合实际应用自拟题目,题目和具体设计内容定好后由指导老师比准。 指导老师:乐金松 2014,12,28单片机系统原理图及工作原理描述1MCU:采用40个引脚的芯片。4个8位的并行I/o口:p0,p1,P2和P3,可以外接各种元器件和电路,控制各个I/O口高低电平的输出,以实现预期的功能。还有复位键,晶振时钟,EA口等组成单片机最小系统。 2晶振模块:晶振大小为11.0592MHZ。分析整个振荡槽路可知,利用Cv来改变频率是有限的:决定振荡频率的整个槽路电容C=Cbe,Cce,Cv三个电容串联后和Co并联再和C1串

3、联。可以看出:C1越小,Co越大,Cv变化时对整个槽路电容的作用就越小。因而能“压控”的频率范围也越小。实际上,由于C1很小(1E-15量级),Co不能忽略(1E-12量级,几PF)。所以,Cv变大时,降低槽路频率的作用越来越小,Cv变小时,升高槽路频率的作用却越来越大。这一方面引起压控特性的非线性,压控范围越大,非线性就越厉害;另一方面,分给振荡的反馈电压(Cbe上的电压)却越来越小,最后导致停振。3数码管显示模块:此为共阴极的八个数码管,p0口控制各个数码管的段选;再通过P2.2,P2.3,P2.4口,控制138译码器输入来控制译码器的8个输出口,以达到数码管的位控制。如:当p2口输入 为

4、11100011时,则控制第一个数码管点着,即LED1被点亮,其他熄灭。4复位模块:上电或开关复位要求电源接通后,单片机自动复位,并且在单片机运行期间,用开关操作也能使单片机复位。上电后,由于电容C5的充电和反相门的作用,使RST持续一段时间的高电平。当单片机已在运行当中时,按下复位键K后松开,也能使RST为一段时间的高电平,从而实现上电或开关复位的操作。5.独立按键模块:分别为P3.0,P3.1,P3.2,P3.3口,为共阴极接法,当按键被按下时接入。6总电源模块:实现5V电压转换,给其他元器件与电路供电。7蜂鸣器模块:接入口为p1.5, 当输入高电平时就会鸣响。工作原理见附页程序模块框图主

5、程序: 大概流程功能:中断程序:程序清单; 1、其中:P1.2,P1.3,P1.4,P1.5,P1.6,P1.7分别控制LED6,LED5,LED4 LED3 LED2 LED1的公共端 P0口位正序连接的LED数码管段控制端口 2、产生2MS定时中断,每次中断调用扫描显示程序 3、系统时钟为12MHZ,N=1983* LED1 EQU 7FH LED2 EQU 7EH LED3 EQU 7DH LED4 EQU 7CH LED5 EQU 7BH LED6 EQU 7AH SCAN_COUNT EQU 79H ;扫描显示计数器 H_MEM1 EQU 78H M_MEM1 EQU 77H S_M

6、EM1 EQU 76HH_MEM EQU 75H M_MEM EQU 74H S_MEM EQU 73H TIMER_COUNT EQU 72H ;定时器中断次数软件计数器 TEMP EQU 6EH ;模式寄存器 FLASH_FLAG EQU 20H.0 ;定义闪烁标志位- ORG 0000H LJMP MAIN ORG 000BH ;安装中断向量 LJMP T0_INT ;和外部中断向量- ORG 0030HMAIN: MOV SP,#2FH MOV TL0,#(65536-1983)MOD 256 ;初始化时间常数 MOV TH0,#(65536-1983)/256 MOV TMOD,#0

7、0000001B SETB ET0 ;开放定时器0中断 SETB TR0 ;开启定时器0 SETB EA LCALL CLR_MEM ;-键盘扫描程序-KEYSCAN: JNB P3.0,RING1KEYSCAN1: JNB P3.1,RING2KEYSCAN2: JNB P3.2,RING3 LJMP KEYSCAN-按键声程序-RING1: CALL D10MS CPL P1.5 ;取反蜂鸣器 JNB P3.0,$ CPL P1.5 LJMP MODERING2: JNB P3.1,$ LJMP UPSET_MODE11RING3: JNB P3.2,$ LJMP DOWNSET_MODE

8、11-MODE: INC TEMP MOV A,TEMP CJNE A,#5,EXIT1 MOV TEMP,#0EXIT1: JNB P3.0,$ LJMP KEYSCAN1-加键-UPSET_MODE11: CJNE A,#1,UPSET_MODE12;判断模式1,是就进入下一程序,否跳转另一模式判断 INC H_MEM MOV A,H_MEMCJNE A,#24,UP_EXIT MOV H_MEM,#0 LJMP KEYSCAN2UPSET_MODE12: CJNE A,#2,UPSET_MODE23 INC M_MEM MOV A,M_MEM CJNE A,#60,UP_EXIT MOV

9、 M_MEM,#0 LJMP KEYSCAN2 UPSET_MODE23: CJNE A,#3,UPSET_MODE24 INC H_MEM1 MOV A,H_MEM1 CJNE A,#24,UP_EXIT MOV H_MEM1,#0UPSET_MODE24: CJNE A,#4,UP_EXIT INC M_MEM1 MOV A,M_MEM1 CJNE A,#60,UP_EXIT MOV M_MEM1,#0 LJMP KEYSCAN UP_EXIT: JNB P3.1,$ -减键-DOWNSET_MODE11: CJNE A,#1,DOWNSET_MODE12 DEC H_MEM CJNE A

10、,#0FFH,DOWN_EXIT MOV H_MEM,#23DOWNSET_MODE12: CJNE A,#2,DOWNSET_MODE21 DEC M_MEM MOV M_MEM,#59DOWNSET_MODE21: CJNE A,#3,DOWNSET_MODE22 DEC H_MEM1 MOV H_MEM1,#23DOWNSET_MODE22: CJNE A,#4,DOWN_EXIT DEC M_MEM1 MOV M_MEM1,#59DOWN_EXIT: JNB P3.2,$*定时中断程序*T0_INT: PUSH ACC ;保护现场 PUSH PSW PUSH DPL PUSH DPH

11、SETB RS1 ;选择2区工作寄存器单元 MOV TL0,#(65536-1983)MOD 256 ;恢复时间常数 MOV TH0,#(65536-1983)/256 LJMP MODE0 DIS: LCALL DISPLAY INC TIMER_COUNT MOV A,TIMER_COUNT CJNE A,#250,T0_INT1 MOV TIMER_COUNT,#0 CPL FLASH_FLAG ;每2MS*250=500MS取反闪烁标志位 JNB FLASH_FLAG,T0_INT1 INC S_MEM MOV A,S_MEM CJNE A,#60,T0_INT1 ;对秒,分,时单元加

12、1 MOV S_MEM,#0 ;满计数后清零 INC M_MEM MOV A,M_MEM CJNE A,#60,T0_INT1 MOV M_MEM,#0 INC H_MEM MOV A,H_MEM CJNE A,#24,T0_INT1 MOV H_MEM,#0 -闹钟-T0_INT1: ;每一次中断 MOV A,M_MEM ;将现在的时间跟闹铃模式 CJNE A,M_MEM1,T0_INT2 ;设置的时间比较 CJNE A,H_MEM1,T0_INT2CPL P1.5 ;取反蜂鸣器控制位T0_INT2: POP DPH ;中断结束恢复现场,注意出栈顺序 POP DPL POP PSW POP

13、ACC RETI*-MODE0(正常)-MODE0: CJNE A,#0,MODE1 MOV R3,S_MEM ;秒单元二翻十 MOV R2,#0 LCALL BTID MOV A,R6 ANL A,#0FH MOV DPTR,#LED_CODE MOVC A,A+DPTR MOV LED1,A ANL A,#0F0H SWAP A MOV DPTR,#LED_CODE MOV LED2,A MOV R3,M_MEM ;分钟单元二翻十 MOV A,R6 MOVC A,A+DPTR JNB FLASH_FLAG,MODE0_BCD1 CPL ACC.7 ;点亮小数点MODE0_BCD1: MOV

14、 LED3,A MOV LED4,A MOV R3,H_MEM ;时钟单元二翻十 JNB FLASH_FLAG,MODE0_BCD2MODE0_BCD2: MOV LED5,A MOV LED6,A LJMP DIS-MODE1(时钟小时校准)-MODE1: CJNE A,#1,MODE2 MOV R3,S_MEM ; MOV R3,M_MEM ; JNB FLASH_FLAG,MODE1_BCD1MODE1_BCD1: MOV R3,H_MEM ; JNB FLASH_FLAG,MODE1_BCD2 CPL ACC.7 ; MOV A,#00H MODE1_BCD2:MOV A,R6 JNB

15、 FLASH_FLAG,MODE1_BCD3 ;另时钟单元数码管闪烁MOV A,#00H ;对数码管熄灭MODE1_BCD3:MOV LED6,A ;送显示到数码管 -MODE2(时钟分钟校准)- MODE2: CJNE A,#2,MODE3MOV R3,S_MEM ; JNB FLASH_FLAG,MODE2_BCD1点亮小数点 MODE2_BCD1: JNB FLASH_FLAG,MODE2_BCD3 ;另分钟单元闪烁 MOV A,#00H ;熄灭数码管MODE2_BCD3: MOV LED4,A JNB FLASH_FLAG,MODE2_BCD2MODE2_BCD2: MOV LED6,A LJMP DIS-MODE3(闹铃小时校准)- MODE3: CJNE A,#3,MODE4 MOV R3,S_MEM1 ; MOV A,R

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1