单片机实验报告
单片机计数器实验报告

计数器实验报告㈠实验目的1.学习单片机内部定时/计数器的使用和编程方法;2.进一步掌握中断处理程序的编程方法。
㈡实验器材1.G6W仿真器一台2.MCS—51实验板一台3.PC机一台4.电源一台5.信号发生器一台㈢实验内容及要求8051内部定时计数器,按计数器模式和方式1工作,对P3.4(T0)引脚进行计数,使用8051的T1作定时器,50ms中断一次,看T0内每50ms 来了多少脉冲,将计数值送显(通过LED发光二极管8421码来表示),1秒后再次测试。
㈣实验说明1.本实验中内部计数器其计数器的作用,外部事件计数器脉冲由P3.4引入定时器T0。
单片机在每个机器周期采样一次输入波形,因此单片机至少需要两个机器周期才能检测到一次跳变,这就要求被采样电平至少维持一个完整的机器周期,以保证电平在变化之前即被采样,同时这就决定了输入波形的频率不能超过机器周期频率。
2.计数脉冲由信号发生器输入(从T0端接入)。
3.计数值通过发光二极管显示,要求:显示两位,十位用L4~L1的8421码表示,个位用L8~L5的8421码表示4.将脉搏检查模块接入电路中,对脉搏进行计数,计算出每分钟脉搏跳动次数并显示㈤实验框图(见下页)程序源代码ORG 00000H LJMP MAINORG 001BH ;T0的中断入口地址AJMP MAIN1MAIN:MOV SP,#60HMOV TMOD,#15H ;设置T1做定时器,T0做计数器,都于方式1工作MOV 20H,#14H ;装入中断次数MOV TL1,#0B0H ;装入计数值低8位MOV TH1,#3CH ;装入计数值高8位MOV TL0,#00H计数器主程序框图中断返回恢复现场NY 是否到1秒?显示置T1定时常数INT _T1入口保护现场清T0计数值中断服务程序框图开 始置T0,T1模式及初始值设置初始常数开中断等 待MOV TH0,#00HSETB TR1 ;启动定时器T1SETB TR0 ;启动计数器T0SETB ET1 ;允许T1中断SETB EA ;允许CPU中断SJMP $ ;等待中断MAIN1:PUSH PSWPUSH ACCCLR TR0CLR TR1 ;保护现场MOV TL1,#0B0H ;装入计数值低8位MOV TH1,#3CH ;装入计数值高8位,50ms;允许T1中断DJNZ 20H,RETUNT ;未到1s,继续计时MOV 20H ,#14H;1s到重新开始SHOW: ;显示计数器T0的值MOV R0,TH0 ;读计数器当前值MOV R1,TL0MOV A,R1MOV B,#0AHDIV AB;将计数值转为十进制MOV C,ACC.3 ;显示部分,将A中保存的十位赋给L0~L3 MOV P1.0,CMOV C,ACC.2MOV P1.1,CMOV C,ACC.1MOV P1.2,CMOV C,ACC.0MOV P1.3,CMOV A,B ;将B中保存的各位转移到A中MOV C,ACC.3 ;将个位的数字显示在L4~L7上MOV P1.4,CMOV C,ACC.2MOV P1.5,CMOV C,ACC.1MOV P1.6,CMOV C,ACC.0MOV P1.7,CRETUNT:MOV TL0,#00H ;将计数器T0清零MOV TH0,#00HSETB TR0SETB TR1POP ACCPOP PSWRETI ;中断返回在频率为1000HZ时,L0~L7显示为50;频率为300HZ时,L0~L7显示为15,结果正确,程序可以正确运行。
单片机实验报告一 单片机软件实验

南昌大学实验报告学生姓名:学号:专业班级:实验类型:⃞验证⃞综合⃞设计⃞创新实验日期:2019.4.9 实验成绩:实验一单片机软件实验(一)实验目的1.掌握51单片机keil软件集成开发环境,能够使用汇编语言编写应用程序。
2.掌握使用集成开发环境Keil进行单片机程序开发的方法3.掌握使用集成开发环境Keil进行单片机程序跟踪调试的方法。
(二)设计要求熟悉51单片机的keil软件集成开发环境,使用汇编语言编写“1+2+3+…+100”的程序。
(三)实验原理KeilC51软件使用:在KeilC51集成开发环境下,建立一个工程并编辑源程序,熟悉Keil C51集成开发环境下各种菜单、命令的使用。
(四)实验设备PC机,Keil C51集成开发环境。
(五)实验结果对汇编程序进行编译、链接、调试,在Keil C51软件中运行仿真结果如下图所示,由于“1+2+……100”运行结果超过8位二进制所能表示的范围,计算结果将存放于两个8位工作寄存器单元R2、R3中。
其中,低八位存放于R2中,高八位存放于R3中,R4中存放计算数。
下图中的寄存器窗口中可以显示计算结果为0x13ba。
调出存储器窗口Memory:选择菜单命令View →Memory Window →Memory 1:可见计算结果存放于当前工作寄存器R2(02H)与R3(03H)中,为0x13BA。
(六)结果讨论与心得体会第一次使用Keil C51软件,初步了解了软件:Keil uVision4的使用方法,初步了解了Keil软件中程序的编辑,新工程的建立运行,初步对单片机实验进行了解,加强了实验动手操作能力。
第一次尝试单步调试,能观察到内存中每一个单元的变化,感到单片机系统复杂中的严谨,收获颇丰。
(七)附录:实验源代码实验源代码如下:ORG 0000HLJMP MAINORG 0050H MAIN:MOV R2,#00HMOV R3,#00HMOV R4,#64HMOV A,#00HCLR C LOOP:MOV A,R2ADD A,R4MOV R2,AMOV A,#00HADDC A,R3MOV R3,ADJNZ R4,LOOPSJMP $END。
单片机实验报告 附含说明书

第一章 DICE-5208K开发型单片机综合实验仪概述一、系统简介DICE-5208K型单片机实验系统由DICE-5208K开发型单片机综合实验箱、DICE-3000型仿真器、扩展卡和DICE-51仿真开发系统软件等组成。
是《MCS-51单片机原理与接口》、《单片机控制技术》、《C8051Fxxx高速SOC单片机原理及应用》、《EDA》、《VHDL硬件描述语言》、《CPLD/FPGA应用基础》等课程教学的配套实验设备。
新增加了几乎所有最实用、新颖的接口电路(如1 WIRE /I2C/SPI总线等)和通讯类接口实验(如USB2.0通讯/TCP/IP网络通讯/CAN总线/红外线收发等)。
可进行MCS-51、C8051F嵌入式单片机、CPLD/FPGA等课程的开放式实验教学。
二、主要特点1.该实验系统配置DICE-3000型高性能MCS-51硬件仿真器,64K数据空间,64K程序空间全部开放,不占用CPU资源,采用双CPU模式,仿真CPU和用户CPU独立运行,上位仿真软件支持汇编、C语言、PL/M语言。
可运行于WIN98/2000/NT/XP操作系统平台。
2.实验系统带有ISP在线下载电路,学生在完成实验后可脱离仿真机和PC机独立运行学生自行设计的单片机系统。
(可在线编程AT89S51/52/53系列单片机)。
3.该实验系统可扩展C8051F020嵌入式实验开发模块, 并配有DICE-EC5型USB高速通讯仿真器,通过4脚的JTAG接口可以进行非侵入式、全速的在线系统调试、仿真;集成开发环境支持Silicon Labs IDE和KEIL C软件。
4.该实验系统可扩展CPLD/FPGA模块,并配有相应的并口下载电路,轻松变成一台EDA实验开发平台。
5.该实验系统可扩展“数控式电子演示装置”,该装置是本公司的专利产品,结合上位演示软件和USB接口,可为该实验系统扩展多达十五个生动、形象、复杂的实验,其中大部分是闭环实验,实验践性非常强。
单片机四个实验报告流程图

实验一流水灯
实验目的:用AT89C51控制,使8个LED轮流点亮,周期1S,且LED使用驱动电路。
单片机电路
流程图
开始
将累加器的值赋为0FEH
将累加器的值输出给P1
循环左移一位
延时1秒
实验二定时器/计数器的使
用
实验目的:用T0对1kHz方波进行计数,每满200个使输出翻转;用T1产生20ms定时,满200ms时使翻转,满1s时使翻转。
电路图
流程图
开始
给TMOD赋初值,设
设定定时器初值
开启中断
等待中断
T0中断子程序,翻转T1中断子程序,
翻转
T1中断子程序,
翻转
脉冲个数满200 T1计时满200ms T1计时满1s
实验三 矩阵键盘的使用
单片机电路
流程图
开始 扫描键盘码 延时10ms
再次扫描键盘码
比较两次键盘码
将上次的按键字符左移,将
寻找较键盘码对应的字符
Y
N
实验四双机通信
实验目的:单片机甲同期发送一个自累加数值,周期500ms,用定时器且用中断;单片机乙中断方式接收数据,并通过P1口外接LED显示。
实验电路图:
实验流程图:
单片机乙。
【报告】南邮单片机实验报告

【报告】南邮单片机实验报告一、实验目的本次南邮单片机实验旨在通过实际操作和实践,深入了解单片机的工作原理、编程方法以及其在实际应用中的功能实现。
通过完成一系列实验任务,提高我们对单片机系统的设计、开发和调试能力,为今后在电子信息领域的学习和工作打下坚实的基础。
二、实验设备1、单片机开发板2、计算机3、编程软件(如 Keil C51)4、下载器5、示波器6、万用表三、实验内容(一)点亮 LED 灯1、原理通过控制单片机的引脚输出高低电平,来控制连接在引脚上的 LED 灯的亮灭。
2、编程实现使用 C 语言编写程序,设置相应引脚为输出模式,并通过循环语句实现 LED 灯的闪烁效果。
3、调试与观察将程序下载到单片机中,观察 LED 灯的闪烁情况,使用示波器测量引脚的电平变化,以验证程序的正确性。
(二)数码管显示1、原理数码管由多个发光二极管组成,通过控制不同段的发光二极管的亮灭,可以显示不同的数字和字符。
2、编程实现编写程序,实现数码管的动态扫描显示,将需要显示的数字或字符转换为对应的段码,并通过定时中断实现动态刷新。
3、调试与观察下载程序后,观察数码管的显示效果,检查是否能够正确显示预定的数字和字符。
(三)按键控制1、原理按键连接到单片机的引脚,当按键按下时,引脚的电平发生变化,通过检测引脚电平的变化来实现按键的识别和响应。
2、编程实现设置引脚为输入模式,采用查询或中断的方式检测按键状态,根据按键的不同操作执行相应的功能。
3、调试与观察按下不同的按键,观察系统的响应是否符合预期,如 LED 灯的状态改变、数码管显示内容的变化等。
(四)温度传感器采集与显示1、原理使用数字式温度传感器(如 DS18B20)采集环境温度,传感器将温度转换为数字信号,单片机通过特定的通信协议读取温度数据。
2、编程实现编写驱动程序,实现与温度传感器的通信,读取温度值,并将其转换为合适的显示格式。
3、调试与观察将传感器置于不同的温度环境中,观察数码管或液晶显示屏上显示的温度值是否准确。
单片机实验报告(相当不错,有具体实验结果分析哦)

学生姓名:学号:专业班级:实验类型:□ 验证□ 综合□ 设计□ 创新实验日期:实验成绩:实验一 I/O 口输入、输出实验地点:基础实验大楼A311一、实验目的掌握单片机P1口、P3口的使用方法。
二、实验内容以P1 口为输出口,接八位逻辑电平显示,LED 显示跑马灯效果。
以P3 口为输入口,接八位逻辑电平输出,用来控制跑马灯的方向。
三、实验要求根据实验内容编写一个程序,并在实验仪上调试和验证。
四、实验说明和电路原理图P1口是准双向口,它作为输出口时与一般的双向口使用方法相同。
由准双向口结构可知当P1口作为输入口时,必须先对它置高电平使内部MOS管截止。
因为内部上拉电阻阻值是20K~40K,故不会对外部输入产生影响。
若不先对它置高,且原来是低电平,则MOS管导通,读入的数据是不正确的。
本实验需要用到CPU模块(F3区)和八位逻辑电平输出模块(E4区)和八位逻辑电平显示模块(B5区)。
2学生姓名:学号:专业班级:实验类型:□ 验证□ 综合□ 设计□ 创新实验日期:实验成绩:五、实验步骤1)系统各跳线器处在初始设置状态。
用导线连接八位逻辑电平输出模块的K0 到CPU 模块的RXD(P3.0 口);用8 位数据线连接八位逻辑电平显示模块的JD4B 到CPU 模块的JD8(P1 口)。
2)启动PC 机,打开THGMW-51 软件,输入源程序,并编译源程序。
编译无误后,下载程序运行。
3)观察发光二极管显示跑马灯效果,拨动K0 可改变跑马灯的方向。
六、实验参考程序本实验参考程序:;//******************************************************************;文件名: Port for MCU51;功能: I/O口输入、输出实验;接线: 用导线连接八位逻辑电平输出模块的K0到CPU模块的RXD(P3.0口);;用8位数据线连接八位逻辑电平显示模块的JD2B到CPU模块的JD8(P1口)。
单片机实验报告二 单片机IO口实验

南昌大学实验报告学生姓名:学号:专业班级:实验类型:⃞验证⃞综合⃞设计⃞创新实验日期:2019.4.16 实验成绩:实验二单片机I/O口实验(一)实验目的1.掌握单片机最小系统的构成,学习如何控制I/O口来驱动发光二极管,掌握移位和软件延时程序的编写。
2.熟练掌握STC型开发板的使用方法和注意事项。
3.掌握应用STC_ISP烧录过程;(二)设计要求利用51单片机及4个LED发光二极管,设计一个单片机流水灯程序,P4.7 /P4.6/ P1.6/ P1.7 来演示跑马灯。
其中流水灯的变化形式多样。
(三)实验原理STC实验箱单片机型号为IAP15W4K32S4-Student,其在线编程与在线仿真可由Keil uVision4集成开发环境和STC系列单片机在线可编程(ISP)电路实现:1.设置STC仿真器:运行STC-ISP在线编程软件,选择“keil 仿真设置”选项,如图1所示,单击“添加型号和头文件到keil中/ 添加STC仿真器驱动到keil中”,弹出“浏览文件夹”对话框,在浏览文件夹中选择keil的安装目录,单击“确定”按钮即完成添加。
根据所用芯片,单击“将IAP15W4K32S4-Student设置为仿真芯片”。
图12.Keil uVision4环境设置:选择菜单命令Project →Options for Target →Debug,选中“STC Monitor-51 Driver”,勾选“Load Application at Startup”选项和“Run to main()”选项,如图2所示。
单击图2右上角的“settings”按钮,弹出硬件参数设置对话框,如图2所示,根据仿真电路所使用的串口号(本机所用为串口5)选择串口端口,如图3所示:图2图33.STC15单击串口TTL电平通信模块结构如图4所示,P1.6、P1.7、P4.6、P4.7所连接的LED灯为共阳极LED,控制对应I/O口为低电平即可点亮LED。
单片机原理实验报告

实验一:系统认识实验一、设计目的:1. 学习 Keil C51 集成开发环境的操作;2. 熟悉 TD-51 系统板的结构及使用。
二、设计内容:编写程序,将 00H~0FH 共 16 个数写入单片机内部 RAM 的 30H~3FH 空间。
三、设计步骤:1. 创建 Keil C51 应用程序(1)运行 Keil C51 软件,进入 Keil C51 集成开发环境。
(2)选择工具栏的 Project 选项,弹出下拉菜单,选择 NewProject 命令,建立一个新的μVision2 工程。
这时会弹出文件保存对话框,选择工程目录并输入文件名 Asm1 后,单击保存。
(3)工程建立完毕后,μVision2 会马上弹出器件选择窗口。
器件选择的目的是告诉μVision2 使用的 80C51 芯片的型号是哪一个公司的哪一个型号,不同型号的 51 芯片内部资源是不同的。
此时选择 SST 公司的 SST89E554RC。
(4)到此建立好一个空白工程,现在需要人工为工程添加程序文件,如果还没有程序文件则必须建立它。
选择工具栏的 File 选项,在弹出的下拉菜单中选择 New 目录。
(5)输入程序,完毕后点击“保存”命令保存源程序,将 Text1 保存成Asm1.asm。
Keil C51 支持汇编和 C 语言,μVision2 会根据文件后缀判断文件的类型,进行自动处理,因此保存时需要输入文件名及扩展名.ASM 或.C。
保存后,文件中字体的颜色会发生一定变化,关键字会变为蓝色。
(6)程序文件建立后,并没有与 Asm1.Uv2 工程建立任何关系。
此时,需要将 Asm1.asm 源程序添加到 Asm1.Uv2 工程中,构成一个完整的工程项目。
在Project Window 窗口内,选中Source Group1 点击鼠标右键,选择 Add Files to Group‘Source Group1’命令,此时弹出添加源程序文件对话框,选择文件Asm1.asm,点击 Add 命令按钮即可将源程序文件添加到工程中。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计课程名称单片机原理及应用课题名称基于1602电子时钟设计专业电子信息工程班级学号姓名指导老师2017年12月21日电气信息学院课程设计任务书课题名称基于1602电子时钟设计姓名专业电子信息工程班级学号指导老师课程设计时间2017年12月4日-2017年12月15日(14、15周)教研室意见意见:审核人:一、任务及要求设计任务:以单片机为核心设计一个电子时钟。
能焊接开发板的同学,在开发板上进行调试。
(1)时间显示在1602液晶上,并且按秒实时更新。
(2)使用按键随时调节时钟的时、分、秒,按键可设计三个有效键,分别为功能选择键、数值增大键和数值减小键。
(3)每次有键按下时地,蜂鸣器都以短“滴”声报警。
(4)如何继续断电前的时间。
设计要求:(1)确定系统设计方案;(2)进行系统的硬件设计;(3)完成必要的参数计算与元器件选择;(4)开发板焊接及测试(5)完成应用程序设计;(6)应用系统的硬件和软件的调试。
二、进度安排第一周:周一:集中布置课程设计相关事宜,并查阅、收集相关设计资料。
周二:系统方案设计。
周三~周五:实验室进行硬件设计,软件设计及调试。
第二周:周一~周二:实验室系统仿真及硬件调试。
周三:实验室检查调试结果。
周四:撰写设计报告。
周五:进行答辩和上交设计说明书。
三、参考资料1、周向红.51系列单片机应用与实践教程.北京航空航天大学出版社.2008.52、周向红.51单片机课程设计.华中科技大学出版社.2011.13、王迎旭.单片机原理及应用(第2版).机械工业出版社.2012.24、郭天祥.51单片机C语言教程(入门提高开发拓展全攻略).电子工业出版社.2012.15、樊思奇.80C51单片机C语言程序设计完全手册.电子工业出版社.2014.56、彭伟.单片机C语言程序设计实训100例基于8051+Proteus仿真.电子工业出版社.2009.67、孙安青.MCS-51单片机C语言编程100例(第二版).中国电力出版社.2017.68、赵建领.零基础学单片机C语言程序设计.机械工业出版社.2012.9目录第1章课题设计 (1)第2章系统方案设计 (1)2.1单片机芯片选择 (1)2.2 显示模块的选择 (1)2.3 时间计算模块的选择 (2)2.4 电路设计最终方案 (2)第3章系统硬件设计 (3)3.1 主控模块 (3)3.2 1602液晶显示模块 (3)3.3 时间计算模块设计 (4)3.4 报警模块 (4)3.5 设置模块 (5)3.6 电源接口(USB供电电路) (5)3.7 晶振电路及复位电路 (6)3.8 单片机与P0口的排阻 (7)第4章系统软件设计 (7)4.1 主函数 (7)4.2 1602液晶屏 (8)4.3 软件原理图 (8)第5章系统调试过程 (9)4.2 1602液晶屏 (9)4.3 软件原理图 (9)总结 (10)参考文献 (10)附录(软件原理图及程序清单) (11)第1章课题设计设计任务:以单片机为核心设计一个电子时钟。
能焊接开发板的同学,在开发板上进行调试。
(1)时间显示在1602液晶上,并且按秒实时更新。
(2)使用按键随时调节时钟的时、分、秒,按键可设计三个有效键,分别为功能选择键、数值增大键和数值减小键。
(3)每次有键按下时地,蜂鸣器都以短“滴”声报警。
(4)如何继续断电前的时间。
第2章系统方案设计2.1单片机芯片选择采用传统的STC89C52RC芯片作为硬件核心:该芯片具有 8KB 在线系统可编程Flash存储器。
STC89C52RC使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能,并且可直接使用串口下载。
2.2 显示模块的选择1602液晶屏显示:1602液晶也叫1602字符型液晶它是一种专门用来显示字母、数字、符号等的点阵型液晶模块采用液晶显示。
液晶显示功耗低,轻便防震。
由于设计显示信息比较多,占用的系统资源少,操作方便。
因本设计显示的字符较多,1602LCD可以显示32个字符,而8段数码管显示的字符较少,且操作比液晶显示略显繁琐,所以采用1602液晶屏组成本设计的显示模块。
流程:LCD初始化-检测忙碌状态-写指令-写数据-显示数据显示模式:16X2显示,5X7点阵,8位数据接口;开显示,无光标,无闪烁;光标右移、文字移动无效。
1602型读写操作规定:因为LCD是个慢显示器件,在写每条指令前要先读其忙碌状态。
忙碌标志位为BF,位于DB7位,BF=0,表示不再执行写指令,BF=1,忙碌就等待。
2.3 时间计算模块的选择方案(1):采用STC89C52RC芯片STC89C52RC单片机内部带有定时/计数功能,此定时功能是通过对外部晶振的脉冲进行计数,从而达到计时功能,只要使用12MHZ实现零误差的计时。
方案(2):采用DS1302芯片DS1302是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟芯片。
该芯片采用3线串行接口方式,可提供年月日、星期、时分秒等时间信息,并可根据月份和闰年的情况自动调整月份的结束日期。
内部带有31个字节RAM,用于存放临时性数据,同时具有可编程涓细电流充电能力。
在跟其他组的对比中,方案(2)的效果更好,但是需要不同的方案做这个电子时钟,于是我们选择了方案(1)。
2.4 电路设计最终方案综上各方案所述,本系统以STC89C52RC单片机为控制核心,通过单片机内部的计时功能,并将得到的数据通过1602液晶显示出来,同时通过对应的按键调整相应的值,并且通过蜂鸣器实现报警功能。
因此本设计的总体方案组成框图如图2-1所示:图2-1 总体方案组成框图第3章系统硬件设计3.1 主控模块本次课程设计主要用到STC89C52RC单片机,硬件原理图(见附录图一)。
端口分配表如3-1所示:表3-1 端口分配表3.2 1602液晶显示模块1602液晶功耗较小可直接与单片机接口相接,电源直接与电源电路相接为+5V,对比度可调。
本设计使用单片机的P0口和P2口与1602进行通信。
另外1602有2行显示,每行显示的字符数为16个,可以用于显示字母、数字、符号等,并具有简单且功能较强的指令集,可以实现字符显示、移动、闪烁等功能。
1602液晶与单片机接口电路如图3-2所示:图3-2 1602液晶显示3.3 时间计算模块设计计时统计和键盘扫描功能均由单片机内部定时器T0的中断服务程序的完成的,即定时器T0每50ms发送中断请求一次,再进行键盘扫描。
时分秒显示共同由一个子函数完成。
定时器中断:定时器T0每50ms产生一次中断,再建立中断次数累计变量。
若中断次数满20次,则秒计数变量S加1即(50ms*20=1s);若秒计数满60,分钟计数变量M 加1,同时将秒计数变量清零;若分钟计数变量满60,小时计数变量H加1,同时将分钟计数变量清零;同理,若小时计数变量满24,将小时计数变量清零。
由此我们时间计算模块得以设计。
3.4 报警模块在本设计中蜂鸣器直接接在单片机P3.0上。
报警模块采用单片机输出1.25KHZ的频率从而使蜂鸣器发出声音。
方波图如图3-4所示:图3-4 方波图3.5 设置模块设置模块采用四个按键K1-K4与单片机P1.0、P1.1、P1.2、P1.3接口相接,其中K1为设置模块的选择位(时分秒),K2是增加键,K3是减少键,K4为确认键。
独立按键与单片机接口电路如图3-5所示:图3-5 独立按键与单片机接口3.6 电源接口(USB供电电路)采用USB接口从电脑接到电源接口中,拨动开关可控制电路的接通和关闭,并用一个发光二极管作电源指示。
电源接口如图3-6所示:图3-6 电源接口3.7 晶振电路及复位电路晶振电路:图3-7-1单片机的工作时间基准是由时钟电路提供的,在单片机的XTAL1和XTAL2两个管脚接一只晶振及两只电容就构成了单片机的时钟电路,电路中对电容器C1和C2对振荡频率有微调作用,通常取30pF石英晶体选择12MHZ,如图3-7-1所示。
复位电路:图3-7-2复位电路主要是由型号为10uF/16V的电解电容,1K,10K的电阻以及按键构成,RST 接芯片的相应引脚RST,构成上电复位和手动复位。
上电复位是经过电容与10K电阻上电之后就进行复位。
手动复位是按下开关为高电平1进行复位,如图3-7-2所示。
3.8 单片机与P0口的排阻本设计主要的硬件89C52以及上拉电阻连接的线路图图3-8 单片机与P0的排阻第4章系统软件设计软件设计是本设计的关键,软件程序编写的好坏直接影响着系统运行情况的良好。
本系统采用具有编写灵活、移植方便、便于模块化设计的C语言编写,并通过Proteus 软件进行仿真,完成各种实质性功能的设计。
4.1 主函数主函数是程序功能总结显示的函数,其主要显示的是时间主要部分;当蜂鸣功能打开,每设置时间时就会发出嘀嘀的响声并且在液晶屏上有相应的提示,此时按按键4确认退出;当进入设置状态完成后退出就回到设置时间显示状态。
主函数程序框图如图4-1所示:图4-14.21602液晶屏1602液晶屏是此设计的主要输出部分,有2行显示,每行16个字符,根据写入的位置而显示,当显示欢迎界面时是流动的,整个屏幕向右移动。
1602LCD流程图如图4-2所示:图4-24.3 软件原理图软件原理图如附录图所示:这个设计中,STC89C52RC主要功能是储存程序、根据程序的内容对各个端口进行判断并作出相应的处理;LCD1602主要功能是将所要显示的显示出来。
通电后,进入欢迎界面,前后延时2.8s,,后显示当前时间,若按下按键1就进入调节状态,此时在按下按键1为设置时间状态,按下按键2为加按下按键3为减,按下按键4为确认调节状态。
第5章系统调试过程系统调试共分为两大部分:一个是软件调试,另一个是硬件调试。
其中软件仿真通过Protues实现;硬件部分现在Protel99SE上设计出硬件电路图,画出PCB图,然后再制造出实物。
调试方法采用先分别调试各单元模块,调通后再进行整体调试的方法,以提高调试效率。
5.1软件调试先根据仿真检测当中的元件是否符合电路的设计,在KeilC51写入程序并且修改至编译正确,在将写好的程序入入到Protues软件单片机芯片上,进行仿真。
仿真结果如下所示:图a : 显示时间图b: 显示调节秒图c:显示调节分图d:显示调节时5.2硬件调试根据仿真后的电路图进行做板,先用万用表检测各元器件是否正确,再焊接电路,完成后检查无误就将程序用单片机板下载到芯片上,后把芯片拔下插入实物板上,即可工作。
上电后,拨动电源开关就进入欢迎界面,2.8s后进入当前时间状态,按下按键1进入调节状态,此时按下按键1为设置时间状态(时分秒),按下按键2为设置为加,按按键3为设置为减,按下按键4为确认调节状态。