单片机课程设计Proteus仿真电路图.ppt
《单片机课程设计Proteus仿真电路图.ppt》由会员分享,可在线阅读,更多相关《单片机课程设计Proteus仿真电路图.ppt(129页珍藏版)》请在冰豆网上搜索。
1课程设计题目课程设计题目2目录目录-课程设计题目课程设计题目题目题目11智能电子钟(智能电子钟(LCDLCD显示)显示)题目题目22电子时钟(电子时钟(LCDLCD显示)显示)题目题目33秒表秒表题目题目44定时闹钟定时闹钟题目题目55音乐倒数计数器音乐倒数计数器题目题目66基于数字温度传感器的数字温度计基于数字温度传感器的数字温度计题目题目77基于热敏电阻的数字温度计基于热敏电阻的数字温度计题目题目88十字路口交通灯控制十字路口交通灯控制题目题目99波形发生器设计波形发生器设计题目题目1010电容、电阻参数单片机测试系统的设计电容、电阻参数单片机测试系统的设计题目题目1111数字数字频率计频率计题目题目128128位竞赛抢答器的设计位竞赛抢答器的设计题目题目1313单词记忆测试器程序设计单词记忆测试器程序设计题目题目1414数字电压表设计数字电压表设计题目题目1515可编程作息时间控制器设计可编程作息时间控制器设计题目题目1616节日彩灯控制器的设计节日彩灯控制器的设计题目题目1717双机之间的串行通信设计双机之间的串行通信设计题目题目1818电子琴设计电子琴设计题目题目1919数字音乐盒的设计数字音乐盒的设计题目题目2020单片机控制步进电机单片机控制步进电机题目题目2121单片机控制直流电动机单片机控制直流电动机34题目题目11智能电子钟(智能电子钟(LCDLCD显示)显示)1.1.设计要求设计要求以以AT89C51AT89C51单片机为核心,制作一个单片机为核心,制作一个LCDLCD显示的智能电子钟:
显示的智能电子钟:
(1)
(1)计时:
秒、分、时、天、周、月、年。
计时:
秒、分、时、天、周、月、年。
(2)
(2)闰年自动判别。
闰年自动判别。
(3)(3)五路定时输出,可任意关断(最大可到五路定时输出,可任意关断(最大可到1616路)。
路)。
(4)(4)时间、月、日交替显示。
时间、月、日交替显示。
(5)(5)自定任意时刻自动开自定任意时刻自动开/关屏。
关屏。
(6)(6)计时精度:
误差计时精度:
误差11秒秒/月(具有微调设置)。
月(具有微调设置)。
5(7)(7)键盘采用动态扫描方式查询。
所有的查询、设置功能均键盘采用动态扫描方式查询。
所有的查询、设置功能均由功能键由功能键K1K1、K2K2完成。
完成。
2.2.工作原理工作原理本设计采用市场上流行的本设计采用市场上流行的时钟芯片时钟芯片DS1302DS1302进行制作。
进行制作。
DS1302DS1302是是DALLASDALLAS公司推出的涓流充电时钟芯片,内含一个实时公司推出的涓流充电时钟芯片,内含一个实时时钟时钟/日历和日历和3131字节静态字节静态RAMRAM,可以通过串行接口与计算,可以通过串行接口与计算机进行通信,使得管脚数量减少。
实时时钟机进行通信,使得管脚数量减少。
实时时钟/日历电路能日历电路能够计算够计算21002100年之前年之前的秒、分、时、日、星期、月、年的,的秒、分、时、日、星期、月、年的,具有闰年调整的能力。
具有闰年调整的能力。
DS1302DS1302时钟芯片的时钟芯片的主要功能特性主要功能特性:
6
(1)
(1)能计算能计算21002100年之前的年、月、日、星期、时、分、秒的年之前的年、月、日、星期、时、分、秒的信息;每月的天数和闰年的天数可自动调整;时钟可设置信息;每月的天数和闰年的天数可自动调整;时钟可设置为为2424或或1212小时格式。
小时格式。
(2)31B
(2)31B的的88位暂存数据存储位暂存数据存储RAMRAM。
(3)(3)串行串行I/OI/O口方式使得引脚数量最少。
口方式使得引脚数量最少。
(4)DS1302(4)DS1302与单片机之间能简单地采用同步串行的方式进行与单片机之间能简单地采用同步串行的方式进行通信,仅需通信,仅需33根线。
根线。
(5)(5)宽范围工作电压宽范围工作电压2.0-5.5V2.0-5.5V。
(6)(6)工作电流为工作电流为2.0A2.0A时,小于时,小于300nA300nA。
(7)(7)功耗很低,保持数据和时钟信息时功率小于功耗很低,保持数据和时钟信息时功率小于1mW1mW。
3.3.电路设计(电路设计(ProteusProteus软件仿真通过)软件仿真通过)74.Proteus4.Proteus仿真仿真打开元器件单片机属性窗口,在打开元器件单片机属性窗口,在“ProgramFile”ProgramFile”栏中添加上栏中添加上面编译好的目标代码文件面编译好的目标代码文件“keil-1.hex”keil-1.hex”;在;在“ClockClockFrequency”Frequency”栏中输入晶振频率为栏中输入晶振频率为11.0592MHz11.0592MHz。
仿真如仿真如下页图下页图所示,其中,浮动窗口中显示的为所示,其中,浮动窗口中显示的为DS1302DS1302当前时当前时钟状态钟状态:
8图图智能电子钟仿真效果智能电子钟仿真效果9题目题目22电子时钟(电子时钟(LCDLCD显示)显示)1.1.设计要求设计要求以以AT89C51AT89C51单片机为核心的时钟,在单片机为核心的时钟,在LCDLCD显示器上显示当前的时显示器上显示当前的时间:
间:
使用字符型使用字符型LCDLCD显示器显示当前时间。
显示器显示当前时间。
显示格式为显示格式为“时时:
分分:
秒秒时时:
分分:
秒秒”。
用用44个功能键操作来设置当前时间。
个功能键操作来设置当前时间。
功能键功能键K1K1K4K4功能如下功能如下。
nK1K1进入设置现在的时间。
进入设置现在的时间。
nK2K2设置小时。
设置小时。
10nK3K3设置分钟设置分钟。
nK4K4确认完成设置。
确认完成设置。
程序执行后工作指示灯程序执行后工作指示灯LEDLED闪动,表示程序开始执行,闪动,表示程序开始执行,LCDLCD显示显示“0000:
0000:
00”00”,然后开始计时。
,然后开始计时。
2.2.实验原理实验原理题目难点在于键盘的指令输入,由于每个按键都具有相应的一题目难点在于键盘的指令输入,由于每个按键都具有相应的一种或多种功能,程序中需要大量使用种或多种功能,程序中需要大量使用dowhiledowhile或或whilewhile循环结构,以检测是否有按键按下。
按键检测函数的详解循环结构,以检测是否有按键按下。
按键检测函数的详解如下(略)如下(略)113.3.参考电路(参考电路(ProteusProteus软件仿真通过)软件仿真通过)124.Proteus4.Proteus仿真仿真加载目标代码文件加载目标代码文件打开元器件单片机属性窗口,在打开元器件单片机属性窗口,在“ProgramFile”ProgramFile”栏中添加上面编译好的目标代码文件栏中添加上面编译好的目标代码文件“keil-2.hex”keil-2.hex”;在;在“ClockFrequency”ClockFrequency”栏中输入晶振栏中输入晶振频率为频率为11.0592MHz11.0592MHz。
启动仿真,按下按键启动仿真,按下按键11后,可发现后,可发现LEDLED停止闪烁,即时钟停止停止闪烁,即时钟停止走时,时钟停在当前时刻,按下按键走时,时钟停在当前时刻,按下按键22和按键和按键33后,可改变后,可改变时间,按下按键时间,按下按键44后,时钟复位到修改后的时间,时钟重后,时钟复位到修改后的时间,时钟重新开始运转,如新开始运转,如下页图下页图所示。
所示。
1314题目题目33秒表秒表1.1.设计要求设计要求用用AT89C51AT89C51设计一个设计一个22位的位的LEDLED数码显示作为数码显示作为“秒表秒表”:
显示:
显示时间为时间为00990099秒,每秒自动加秒,每秒自动加11,另设计一个,另设计一个“开始开始”键键和一个和一个“复位复位”键。
键。
2.2.实验原理实验原理题目难点在于通过对键盘的扫描对时钟的走时题目难点在于通过对键盘的扫描对时钟的走时/停止进行控停止进行控制,项目采用定时器制,项目采用定时器T0T0作为计时器,每作为计时器,每10ms10ms发生一次中断,发生一次中断,每每100100次中断加次中断加1s1s。
在此期间,如。
在此期间,如“开始开始”按键按下,程按键按下,程序方将序方将TR0TR0置为置为11,从而开启中断,时钟开始走时;如,从而开启中断,时钟开始走时;如“15复位复位”按键按下,程序将按键按下,程序将TR0TR0置为置为00,同时将存储时间的变,同时将存储时间的变量清零,从而中断停止,并实现复位。
量清零,从而中断停止,并实现复位。
本题目采用专用本题目采用专用数码管显示控制芯片数码管显示控制芯片MAX7219MAX7219。
MAX7219MAX7219是是美国美国MAXIMMAXIM公司生产的串行输入公司生产的串行输入/输出共阴极显示驱动器,输出共阴极显示驱动器,该芯片最多可驱动该芯片最多可驱动88位位77段数字段数字LEDLED显示器或个显示器或个LEDLED和条形和条形图显示器。
其引脚图及引脚功能参见有关参考资料。
图显示器。
其引脚图及引脚功能参见有关参考资料。
16MAX7219MAX7219的典型应用参考电路的典型应用参考电路173.3.电路设计(电路设计(ProteusProteus软件仿真通过)软件仿真通过)184.Proteus4.Proteus仿真仿真加载目标代码文件加载目标代码文件打开元器件单片机属性窗口,在打开元器件单片机属性窗口,在“ProgramProgramFile”File”栏中添加上面编译好的目标代码文件栏中添加上面编译好的目标代码文件“keil-keil-2.hex”2.hex”;在;在“ClockFrequency”ClockFrequency”栏中输入晶振频率为栏中输入晶振频率为11.0592MHz11.0592MHz。
启动仿真,按下按键启动仿真,按下按键11后,可发现后,可发现ledled停止闪烁,即时钟停止走停止闪烁,即时钟停止走时,时钟停在当前时刻,按下按键时,时钟停在当前时刻,按下按键22和按键和按键33后,可改变时后,可改变时间,按下按键间,按下按键44后,时钟复位到修改后的时间,时钟重新开后,时钟复位到修改后的时间,时钟重新开始运转,如始运转,如下页图下页图所示。
所示。
1920题目题目44定时闹钟定时闹钟1.1.设计要求设计要求使用使用AT89C51AT89C51单片机结合字符型单片机结合字符型LCDLCD显示器设计一个简易的定显示器设计一个简易的定时闹钟时闹钟LCDLCD时钟,若时钟,若LCDLCD选择有背光显示的模块,在夜晚选择有背光显示的模块,在夜晚或黑暗的场合中也可使用。
或黑暗的场合中也可使用。
定时闹钟的基本功能如下:
定时闹钟的基本功能如下:
n显示格式为显示格式为“时时:
分分时时:
分分”。
n由由LEDLED闪动来做秒计数表示。
闪动来做秒计数表示。
n一旦时间到则发出声响,同时继电器启动,可以扩充控一旦时间到则发出声响,同时继电器启动,可以扩充控制家电开启和关闭。
制家电开启和关闭。
21n程序执行后工作指示灯程序执行后工作指示灯LEDLED闪动,表示程序开始执行,闪动,表示程序开始执行,LCDLCD显示显示“0000:
00”00”,按下,按下操作键操作键K1K1K4K4动作如下:
动作如下:
(1)K1
(1)K1设置现在的时间设置现在的时间。
(2)K2
(2)K2显示闹钟设置的时间显示闹钟设置的时间。
(3)K3(3)K3设置闹铃的时间设置闹铃的时间。
(4)K4(4)K4闹铃闹铃ON/OFFON/OFF的状态设置,设置为的状态设置,设置为ONON时连续三次发出时连续三次发出“哗哗”的一声,设置为的一声,设置为OFFOFF发出发出“哗哗”的一声。
的一声。
设置当前时间或闹铃时间如下。
设置当前时间或闹铃时间如下。
(1)K1
(1)K1时调整时调整。
(2)K2(