单片机基础课程设计题目
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
测量温度范围−50℃~110℃。 精度误差小于0.5℃。 LED数码直读显示。
43
2 . 实验原理 本题目使用铂热电阻PT100,其阻值会随着温度的变化而改变
显示归零,走时停止。
28
29
题目5 1. 设计要求
音乐倒数计数器
利用AT89C51单片机结合字符型LCD显示器设计一个简易的倒数
计数器,可用来煮方便面、煮开水或小睡片刻等。做一小 段时间倒计数,当倒计数为0时,则发出一段音乐声响,通 知倒计数终了,该做应当做的事。 定时闹钟的基本功能如下。
字符型LCD(16 2)显示器。
K1—进入设置现在的时间。 K2—设置小时。
12
K3—设置分钟。
K4—确认完成设置。
程序执行后工作指示灯LED闪动,表示程序开始执行,LCD显 示“00:00:00”,然后开始计时。 2. 实验原理 题目难点在于键盘的指令输入,由于每个按键都具有相应的 一种或多种功能,程序中需要大量使用do{}while或
K3—设置倒计数的时间为10分钟,显示“1000”。
K4—设置倒计数的时间为20分钟,显示“2000”。
复位后LCD的画面应能显示倒计时的分钟和秒数,此时按K1键
,
31
则在LCD上显示出设置画面。此时,若: a. 按操作键K2—增加倒计数的时间1分钟。 b. 按操作键K3—减少倒计数的时间1分钟。
c. 按操作键K4—设置完成。
键盘实现菜单功能的方法,已在题目4详细说明,不再赘 述。本题目最大难点是实现音乐的播放。作者利用定时计数
器,通过载入不同的计数初值,产生频率不同的方波,输入
到蜂鸣器(SOUNER)中,使其发出频率不同的声音。本设计 中单片机晶振为1.0592MHz,通过计算各音阶频率,可得1、2、 3、4、5、6、7共7个音应赋给定时器的初值为64580、64684、 64777、64820、64898、64968、65030。
时间,按下按键4后,时钟复位到修改后的时间,时钟重新
开始运转,如下页图所示。
21
22
题目4 1. 设计要求
定时闹钟
使用AT89C51单片机结合字符型LCD显示器设计一个简易的定
时闹钟LCD时钟,若LCD选择有背光显示的模块,在夜晚 或黑暗的场合中也可使用。 定时闹钟的基本功能如下:
显示格式为“时时:分分”。
17
复位”按键按下,程序将TR0置为0,同时将存储时间的变 量清零,从而中断停止,并实现复位。
本题目采用专用数码管显示控制芯片MAX7219。MAX7219是
美国MAXIM公司生产的串行输入/输出共阴极显示驱动器, 该芯片最多可驱动8位7段数字LED显示器或个LED和条形
图显示器。其引脚图及引脚功能参见有关参考资料。
时间,按下按键4后,时钟复位到修改后的时间,时钟重
新开始运转,如下页图所示。
15
16
题目3
1. 设计要求
秒表
用AT89C51设计一个2位的LED数码显示作为“秒表”:显示 时间为00—99秒,每秒自动加1,另设计一个“开始”键 和一个“复位”键。
2. 实验原理
题目难点在于通过对键盘的扫描对时钟的走时/停止进行控 制,项目采用定时器T0作为计时器,每10ms发生一次中断 ,每100次中断加1s。在此期间,如“开始”按键按下, 程序方将TR0置为1,从而开启中断,时钟开始走时;如“
(5) 宽范围工作电压2.0-5.5V。
(6) 工作电流为2.0A时,小于300nA。
(7) 功耗很低,保持数据和时钟信息时功率小于1mW。
8
3. 电路设计(Proteus软件仿真通过)
9
4. Proteus仿真 打开元器件单片机属性窗口,在“Program File”栏中添加上
面编译好的目标代码文件“keil-1.hex”;在“Clock
)的器件。
负电压特性,电源极性接反时,温度计不会因发热而烧毁,
但不能正常工作。
采用3引脚PR-35封装或8引脚SOIC封装。
39
3.电路设计(Proteus仿真通过) 本项目制作的数字温度计电路原理图,如下所示:
40
4. Proteus仿真
加载目标代码文件 打开元器件单片机属性窗口,在 “Program File”栏中添加上面编译好的目标代码文件 “keil-6.hex”;在“Clock Frequency”栏中输入晶振频率为 11.0592MHz。
4
5
6
(7) 键盘采用动态扫描方式查询。所有的查询、设置功能均
由功能键K1、K2完成。 2. 工作原理 本设计采用市场上流行的时钟芯片DS1302进行制作。DS1302 是DALLAS公司推出的涓流充电时钟芯片,内含一个实时
时钟/日历和31字节静态RAM,可以通过串行接口与计算
机进行通信,使得管脚数量减少。实时时钟/日历电路能 够计算2100年之前的秒、分、时、日、星期、月、年的 ,具有闰年调整的能力。 DS1302时钟芯片的主要功能特性:
7
(1) 能计算2100年之前的年、月、日、星期、时、分、秒的 信息;每月的天数和闰年的天数可自动调整;时钟可设置
为24或12小时格式。
(2) 31B的8位暂存数据存储RAM。 (3) 串行I/O口方式使得引脚数量最少。 (4) DS1302与单片机之间能简单地采用同步串行的方式进行 通信,仅需3根线。
2
题目11 题目12 题目13 题目14 题目15
数字频率计 8位竞赛抢答器的设计 单词记忆测试器程序设计 数字电压表设计 可编程作息时间控制器设计
题目16
题目17 题目18 题目19 题目20
节日彩灯控制器的设计
双机之间的串行通信设计 电子琴设计 数字音乐盒的设计 单片机控制步进电机
题目21
单片机控制直流电动机
课程设计题目
1Fra Baidu bibliotek
目录----课程设计题目
题目1
题目2 题目3 题目4 题目5
智能电子钟(LCD显示)
电子时钟(LCD显示) 秒表 定时闹钟 音乐倒数计数器
题目6
题目7 题目8 题目9 题目10
基于数字温度传感器的数字温度计
基于热敏电阻的数字温度计 十字路口交通灯控制 波形发生器设计 电容、电阻参数单片机测试系统的设计
由LED闪动来做秒计数表示。
一旦时间到则发出声响,同时继电器启动,可以扩充控
制家电开启和关闭。
23
程序执行后工作指示灯LED闪动,表示程序开始执行,LCD
显示“00:00”,按下操作键K1~K4动作如下: (1) K1—设置现在的时间。 (2) K2—显示闹钟设置的时间。 (3) K3—设置闹铃的时间。 (4) K4—闹铃ON/OFF的状态设置,设置为ON时连续三次发 出“哗”的一声,设置为OFF发出“哗”的一声。
简单的编程实现9~12位的数字读数方式。 DS18B20的性能如下。
独特的单线接口仅需要一个端口引脚进行通信。 多个DS18B20可以并联在串行传输的数据线上,实现多点 组网功能。无须外部器件。
38
可通过数据线供电,电压范围为3.0~5.5V。
零待机功耗。
温度以9或12位的数字读数方式。 用户可定义报警设置。 报警搜索命令识别并标志超过程序限定温度(温度报警条件
while{}循环结构,以检测是否有按键按下。按键检测函数
的详解如下(略)
13
3. 参考电路(Proteus软件仿真通过)
14
4. Proteus仿真 加载目标代码文件 打开元器件单片机属性窗口,在
“Program File”栏中添加上面编译好的目标代码文件
“keil-2.hex”;在“Clock Frequency”栏中输入晶振频 率为11.0592MHz。 启动仿真,按下按键1后,可发现LED停止闪烁,即时钟停止 走时,时钟停在当前时刻,按下按键2和按键3后,可改变
设置当前时间或闹铃时间如下。
(1) K1—时调整。 (2) K2—分调整。
24
(3) K3—设置完成。
(4) K4—闹铃时间到时,发出一阵声响,按下本键可以停止 声响。 本项目的难点在于4个按键每个都具有两个功能,以最终实现 菜单化的输入功能。采用通过逐层嵌套的循环扫描,实现
嵌套式的键盘输入。以对小时的设置的流程为例,其流程
“Program File”栏中添加上面编译好的目标代码文件
“keil-5.hex”;在“Clock Frequency”栏中输入晶振频率 为11.0592MHz。 启动仿真如下页图所示,当闹钟到达时,可以听见蜂鸣器演 奏的乐曲。再次提示,本题目必须选用蜂鸣器SOUNDER,否
则不能发出声音。
35
36
DS18B20,用3位共阳极LED数码管以串口传送数据,实现
温度显示。
37
2. 实验原理
从温度传感器DS18B20可以很容易直接读取被测温度值,进 行转换即满足设计要求。 DS18B20温度传感器是美国DALLAS半导体公司最新推出的一 种改进型智能温度传感器,与传统的热敏电阻等测温元件
相比,它能直接读出被测温度,并且可根据实际要求通过
3
题目1 1. 设计要求
智能电子钟(LCD显示)
以AT89C51单片机为核心,制作一个LCD显示的智能电子钟:
(1) 计时:秒、分、时、天、周、月、年。 (2) 闰年自动判别。 (3) 五路定时输出,可任意关断(最大可到16路)。 (4) 时间、月、日交替显示。
(5) 自定任意时刻自动开/关屏。
(6) 计时精度:误差≤1秒/月(具有微调设置)。
题目6 1. 设计要求
基于数字温度传感器的数字温度计
利用数字温度传感器DS18B20与单片机结合来测量温度。利
用数字温度传感器DS18B20测量温度信号,计算后在LED数 码管上显示相应的温度值。其温度测量范围为−55℃~ 125℃,精确到0.5℃。数字温度计所测量的温度采用数字 显示,控制器使用单片机AT89C51,测温传感器使用
如下页图。
25
26
2. 参考电路(Proteus软件仿真通过)
27
3. Proteus仿真 加载目标代码文件 打开元器件单片机属性窗口,在
“Program File”栏中添加上面编译好的目标代码文件
“keil-3.hex”;在“Clock Frequency”栏中输入晶振频 率为12MHz。 启动仿真,下页图示为按下“开始”按键后的情况,在按下 前,数码管无显示。期间如果按下“复位”按键,则LED
32
在此基础上,可将乐曲的简谱转化为单片机可以“识别”的 “数组谱”,进一步加入对音长、休止符等的控制量后,
可以实现音乐的播放。
3.电路设计(Proteus仿真通过) 本题目制作的带有LCD显示的音乐倒数计数器电路原理图,如 下页图所示。
33
34
4. Proteus仿真 加载目标代码文件 打开元器件单片机属性窗口,在
显示格式为“TIME 分分:秒秒”。
30
用4个按键操作来设置当前想要倒计数的时间。一旦按下键
则开始倒计数,当计数为0时,发出一阵音乐声。 程序执行后工作指示灯LED闪动,表示程序开始执行,按下操 作键K1~K4动作如下。 K1—可调整倒计数的时间1~60分钟。
K2—设置倒计数的时间为5分钟,显示“0500”。
18
MAX7219的典型应用参考电路
19
3. 电路设计(Proteus软件仿真通过)
20
4. Proteus仿真 加载目标代码文件 打开元器件单片机属性窗口,在
“Program File”栏中添加上面编译好的目标代码文件
“keil-2.hex”;在“Clock Frequency”栏中输入晶振频率 为11.0592MHz。 启动仿真,按下按键1后,可发现led停止闪烁,即时钟停止 走时,时钟停在当前时刻,按下按键2和按键3后,可改变
Frequency”栏中输入晶振频率为11.0592MHz。 仿真如下页图所示,其中,浮动窗口中显示的为DS1302当前时 钟状态:
10
图
智能电子钟仿真效果
11
题目2 1. 设计要求
电子时钟(LCD显示)
以AT89C51单片机为核心的时钟,在LCD显示器上显示当前的时
间: 使用字符型LCD显示器显示当前时间。 显示格式为“时时:分分:秒秒”。 用4个功能键操作来设置当前时间。功能键K1~K4功能如下。
启动仿真如下页图所示,其中,DS18B20窗口显示的为
当前环境温度,若调整DS18B20旁边的箭头,可改变环境温度 ,可以看到LED显示屏上的温度值发生相应的变化。
41
42
题目7
1. 设计要求
基于热敏电阻的数字温度计
使用热敏电阻类的温度传感器件利用其感温效应,将随被测温
度变化的电压或电流用单片机采集下来,将被测温度在显示 器上显示出来: