单片机实验指导书修订版Word文档下载推荐.docx
- 文档编号:21775279
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:26
- 大小:1.21MB
单片机实验指导书修订版Word文档下载推荐.docx
《单片机实验指导书修订版Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《单片机实验指导书修订版Word文档下载推荐.docx(26页珍藏版)》请在冰豆网上搜索。
数码管是该实验板上最能验证程序功能的输出器件。
数码管旁边有四个跳线帽,分别用来控制四个数码管工作状态。
当然这种控制只是在硬件上的控制,在软件上的控制则可以通过对74SL573锁存器的编程实现。
数码管可用于静态显示,和动态扫描。
●4x4矩阵键盘:
我们可以通过键盘来控制流水灯的亮灭,也可用它来控制数码管上数字或字母的显示。
键盘和数码管结合可以通过编写程序来实现计算器功能,日历等。
●EEPROM:
AT24C02,在单片机应用中,作为EEPROM储存器用,与单片机通过I2C通信。
优点是掉电后仍可以保存数据。
比如单片机运行时,手动设置了一些参数,可以用它保存起来.即可对其进行读操作又可进行写操作,并且在断电后可保存数据.
●实时时钟芯片:
本实验板含有一片DS1302芯片,内含有一个实时时钟/日历和31字节静态RAM通过简单的串行接口与单片机进行通信实时时钟/日历电路提供秒、分、时、日、日期、月、年的信息每月的天数和闰年的天数可自动调整时钟操作可通过AM/PM指示决定采用24或12小时格式DS1302与单片机之间能简单地采用同步串行的方式进行通信。
另外该芯片含备份电源接口,掉电后,时钟仍然能够正确的运行。
4实验项目
HNIST型单片机实验系统可以进行多种创新设计项目,具体包括:
●单片机I/O控制实验,如跑马灯实验、交通灯实验等;
●定时器相关实验
●数码管显示实验
●LED点阵实验
●6264外部扩展RAM实验
●串转并的I/O口实验
●RS—232串口通信实验
●基于18B20的单总线实验
●直流电机实验
●交流电机实验
●LCD128×
64点阵液晶显示实验
●串行A/D转换实验
●PS2接口键盘实验
●I2C总线串行EEPROM实验
●DS1302实时时钟实验
第二部分uVision使用入门
2.1KeilC51简介
KeilC51是德国KeilSoftware公司出品的51系列兼容单片机开发工具。
它集编辑、编译、仿真与调试于一体,支持C语言与汇编语言开发。
与汇编相比,C语言在功能、结构性、可读性、可维护性上有明显的优势。
KeilC51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。
KeilC51生成的目标代码效率非常之高,多数语言的汇编代码很紧凑,容易理解,在开发大型软件时更能体现高级语言的优势。
用过汇编语言后再使用C来开发,体会更加深刻。
C51工具包目前的集成开发环境uVision将项目管理,源代码编辑和程序调试等组合在一个功能强大的环境中(如下图2.1所示).开发人员可用uVision集成开发环境所自带的编辑器或其他编辑器编辑C语言或汇编语言源文件,然后分别由C51急A51编译器编译生成可重定位的目标文件(.obj)。
目标文件可由LIB51创建生成库文件,也可以与库文件一起经BL51连接定位生成绝对目标文件(.ABS)。
.ABS文件由OH51转换生成标准的Hex文件,以供调试器dScope51或tScope51进行源代码级调试,也可由仿真器使用直接对目标板进行调试,或直接写入程序存储器如EPROM进行验证。
目前,集成开发环境使用较多的版本为uVisio,而且此集成开发环境支持8051的所有KEIL工具,因此,下面内容主要以uVision进行介绍。
图2.1uVision集成开发环境
2.2uVision使用入门
1、uVision的启动
根据一般应用软件安装方法进行本软件安装,安装完成后就是软件的应用了。
首先双击桌面uVision图标,运行uVision,几秒钟后出现进入KeilC51uVision启动界面,如下图2.2所示。
图2。
2uVision启动界面
2、uVision的开发流程
在进行下面工作之前,建议为一个项目建立一个文件夹,把和本工程相关的源程序,头文件,以及工程文件等都保存到此文件夹。
1)建立工程
单击Project菜单,在弹出的下拉菜单中选中NewProject选项,如下图2。
3所示。
图2.3建立工程菜单
2)保存工程
选择你要保存的路径,输入工程文件的名字,然后点击保存.
图2.4保存所建立工程文件
3)选择器件
keilC51几乎支持所有的51核的单片机,这里以使用较多的Atmel公司的AT89S52来说明,如下图所示,先选择Atmel并双击展开。
图2.5器件选择—选择公司
然后选择AT89S52,右边栏是对这个单片机的基本描述,然后点击“确定”。
图2.6器件选择—选择芯片
4)加载标准启动文件
单击“是(Y)”,屏幕如下图2.7所示.
图2.7是否加载8051STARTUP文件
5)编辑源程序
在下图2。
8中,单击“File”菜单,再在下拉菜单中单击”New”选项,或直接单击快捷按钮
图2.8 新建源程序
新建文件后屏幕如下图2。
9所示。
图2.9源程序编辑界面
单击菜单上的“File"
,在下拉菜单中选中"
SaveAs”选项单击,或单击保存快捷按钮
,屏幕如下图所示,在”文件名”栏右侧的编辑框中,键入欲使用的文件名,同时,必须键入正确的扩展名。
注意,如果用C语言编写程序,则扩展名为(。
c);
如果用汇编语言编写程序,则扩展名必须为(。
asm)。
此处我们保存为“Test1.c"
然后,单击”保存”按钮。
10源程序保存
6)添加源程序到工程
回到编辑界面后,单击“Target1”前面的“+"
号,然后在“SourceGroup1”上单击右键,弹出如下菜单:
图2.11将源程序添加到工程
然后单击“AddFiletoGroup‘SourceGroup1’”屏幕如下图2.12所示。
12选择所要添加到工程中的源程序
选中刚才保存的“Test1。
c”文件,单击“Add”后关闭对话框,屏幕如下图2。
13所示。
此时,我们可以注意到“SourceGroup1”文件夹中多了一个子项“Text1.c”。
图2.13添加了源程序的工程管理器窗口
7)设置目标文件属性
单击“Project”菜单,在下拉菜单中单击“
”在下图中,单击“Output"
中单击“CreateHEXFile”选项,使程序编译后产生HEX代码,单击“确定”。
14目标文件属性设置
8)编译工程
单击“Project”菜单,再在下拉菜单中单击“BuiltTarget"
选项(或者使用快捷键F7,或直接单击图标
或图标
),屏幕如下图2。
15所示。
15编译工程示意图
9)下载程序
运行progisp,弹出对话框如下图2.16所示。
图2.16下载程序过程示意图
然后点击调入,在弹出的对话框中选中之前所生成的hex文件打开,再点击自动,即下载程序完毕。
第三部分实验项目
实验1跑马灯设计
一、实验目的
通过本次实验,掌握单片机通用I/O口和Keil平台的使用。
二、实验仪器
PC机,HNIST型单片机实验系统。
三、实验原理
1、系统方案
利用单片机的P1口作为控制端口,使4个发光二极管按照一定的花样亮灭,循环变化。
2、软件算法
四、实验数据记录
源程序
五、问题与讨论
在采用单片机的I/O口作为输入口或输出口时需要考虑哪些因素?
实验2交通灯控制
通过本次实验,掌握单片机内部定时器的使用和中断处理程序的编写。
以单片机为核心,通过P2口控制4组发光二极管,每组有红绿蓝三色,模拟交通灯的控制.
初始状态为南北通行:
南北绿灯、东西红灯保持25秒;
后转为过渡状态:
南北黄灯、东西红灯保持5秒;
再转为东西通行:
东西绿灯、南北红灯保持25秒;
最后转为过渡状态:
东西黄灯、南北红灯保持5秒。
以上过程循环执行.
利用单片机内部的定时器实现定时。
主程序流程图
定时器中断处理子程序流程图
1、扩充功能,实现救护车优先通过十字路口。
2、显示交通灯各状态的倒计时。
实验3电子钟设计
通过本次实验,掌握数码管的动态显示。
以单片机为核心,扩展三极管9013驱动数码管的位码,74573芯片驱动数码管的段码,显示时钟数据。
时钟更新由单片机内部的定时器完成。
2、数码管显示模块
数码管结构如下图所示。
对于共阴接法,要显示相应字符,使相应段点亮,则向相应的阳极端口提供高电平。
共阴极数码管的码表如下所示:
字符
代码
0xfc
6
0xbe
C
0x9c
1
0x60
7
0xe0
d
0x7a
2
0xda
8
0xfe
E
0x9e
3
0xf2
9
0xf6
F
0x8e
4
0x66
A
0xee
无显示
0x00
5
0xb6
b
0x3e
数码管有两种工作方式:
静态显示和动态显示。
静态显示的特点是每个数码管的段码都需要独立的数据锁存器锁存,当送入字形码后,显示字形可一直保持,直到送入新字形码为止,显示亮度较高.
动态显示则是轮流选中多个数码管显示不同字符,由于人眼的视觉惰性,感觉是同时显示。
为了减少硬件成本,通常采用动态显示.
3、整体电路
4、软件算法
引入校正时间和定时闹铃功能。
实验4矩阵式键盘显示
通过本次实验,掌握矩阵键盘的应用。
PC机,HNIST型单片机实验系统。
以单片机为核心,通过P2口驱动矩阵式键盘,高四位接入键盘的列线,低四位接入键盘的行线,并进行逐行扫描,若检测到按键,则计算出键值,并送数码管显示。
2、键盘模块
3、显示模块
参看实验3相关内容。
键盘扫描子程序流程图见下页。
1、怎样消除按键的机械抖动?
2、如何处理多个键同时按下的情况?
键盘扫描子程序流程图
实验5LED点阵显示
通过本次实验,掌握LED点阵显示的应用.
以单片机为核心,扩展74138芯片驱动LED点阵的行线,74595芯片控制LED点阵的列线,实现在LED点阵上循环显示数字0~9。
2、LED点阵模块
LED点阵由行线驱动阴极,列线驱动阳极。
其电路结构如下所示。
3、行线驱动模块
74LS138芯片是3线-8线译码器。
当一个选通端(G1)为高电平,另两个选通端(/G2A和/G2B)为低电平时,可将地址端(A、B、C)的二进制编码在一个对应的输出端以低电平译出,Y0—Y7为输出端.
4、列线驱动模块
74LS595芯片是串入并出8位锁存器。
Qa~Qh为八位并行输出端,可以直接控制点阵LED的列线.SER为串行数据输入端。
SCK上升沿时片内寄存器的数据移位。
Qa→Qb→Qc→…→Qh。
RCK上升沿时,片内寄存器数据送到输出端.
5、软件算法
定时器中断子程序流程图见下页。
若显示的数字出现左右倒相,上下倒位,请分析原因,给出解决方法.
定时器中断子程序流程图
实验6马达调速控制
指导学生设计步进电机调速控制器.通过本次实验,使学生掌握步进电机的驱动控制。
以单片机为核心,通过P1口输出脉冲信号,驱动步进电机旋转。
通过P2口引入键盘,实现对步进电机的启停、转向和8级转速控制.
2、步进电机驱动模块
(1)转向控制
步进电机以四相四拍方式工作,若按
顺序通电为正转,按
顺序通电为反转.
(2)转速控制
每改变1次节拍,步进电机旋转7。
5度。
调节脉冲周期,就可以控制步进电机的转速。
3、键盘模块
参看实验4相关内容.
步进电机驱动子程序流程图
键盘处理子程序流程图
怎样克服步进电机和负载的惯性?
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 实验 指导书 修订版