单片机原理和应用实验指导书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《单片机原理与应用》课程实验指导书
电子、机电及电气工程与自动化专业适用
吴茂屈丽丽王飞编
佛山科学技术学院
二00九年十月
前言
以往我校的单片机实验教学通常是使用启东DAIS系列单片机微机仿真实验系统进行单片机实验教学的,DAIS系统可以做二十多项试验,系统机构十分复杂,功能非常强大,但是在使用过程中也发现了一些不足的地方那个:厂家为了技术保密,把核心电路都屏蔽了,我们不能了解实验系统的工作原理,另外系统庞大,不方便学生带回宿舍实验,不方便学生课外学习。
根据我校学生对单片机课程学习的需求,我们在参考其他公司的产品的基础上,结合课程的实际情况,开发了适合学生入门学习的单片机学习板,FD-51学习板,该学习板设置了包括LED数码管、LCD1602液晶、AD\DA转换器件等单元电路,可以做几十个单片机实验,而且本实验板我们是以配件的形式提供给学生,让学生自己焊接调试线路板。
学生不但可以学习软件编程技术,还可以学习硬件焊接及调试技术,可以更好地锻炼学生的动手操作能力。
目录
系统介绍 (2)
软件实验:
实验一清零程序....................... . (4)
实验二拆字程序................................... . (5)
实验三拼字程序................................... . (5)
实验四数据区传送子程序 (6)
实验五查找相同数个数 (6)
硬件实验:
实验A 工业顺顺序控制 (7)
实验B 简单IO口扩展实验 ......... .. (8)
实验一 P1口输出流水灯实验 (11)
实验二 P1口输出交通灯实验 (11)
实验三八段数码管显示实验 (12)
实验四键盘实验........................... (12)
实验五遥控解码实验...................... (12)
实验六计数器实验.................................... (13)
实验七继电器控制实验................................. .. (13)
实验八定时器实验 (14)
实验九单片机串行口通讯实验 (14)
实验十电子时钟 (14)
实验十一外部中断实验(急救车与交通灯) (15)
实验十二 AT24C02读写实验........... .................... (15)
实验十三 93C46读写实验 ........... ..................... (16)
实验十四 LCD1602字符型液晶控制显示实验 (16)
实验十五 LCD12864点阵型液晶控制显示实验 (17)
实验十六 A/D转换(数字电压表)实验 (17)
实验十七 D/A转换(波形发生器) 实验 (18)
实验十八 DS18B20温度采集及处理实验...................... (19)
系统介绍
一、FD-51单片机学习板简介
为了适应我校单片机课程教学的需要,我们在参考其他厂家学习板的基础上,再根据我校单片机课程教学大纲的要求,基于简单、使用的原则,开发了FD-51单片机实验板。
1、FD-51单片机学习板特点
采用STC89**系列在系统可编程(ISP)单片机,利用传统串口就可以对单片机芯片进行批量烧写,可以当编程器使用。
在系统可编程技术即In System Programming ,插好实验单片机芯片后,可以在系统写入程序代码到芯片内部,烧写程序时候不用频繁拔下插入芯片,只要鼠标点击即可把程序写入单片机,彻底告别以前那样用编程器反复烧写拨插芯片的烦恼。
烧写时不再需要12V的VPP编程电压,在系统编程使得芯片寿命更长,超过普通芯片89C51的10倍以上,性能更高,写入速度更快,稳定性更好,写入完成后自动运行新程序,可以立即查看到程序运行结果,具有所见即所得特性,修改程序效率极高,易用性接近仿真器,学习使用更方便、更快捷!
2、FD-51学习板集成的硬件资源
FD51实验板集成了学习单片机常用的各种硬件资源,主要有:
1、集成了5位高亮度数码管。
可以用于计数器试验、数字显示试验、单片机电子钟试验和温度测量试验等,通过该试验可以掌握数码管动态扫描的用法。
板上5位数码管最大计数可达“99999”,计数最大值仅为“9999”,其中第五位数码管在温度测量实验中可以显示温度符号“℃”,特别方便温度测量试验。
2、集成了8位高亮度LED流水灯。
可用于交通灯程序实验、流水灯试验,可监视P1口状态或用作硬件标志位。
3、4只独立按键K1~K4。
可用于外中断试验、定时器计数试验、键盘扫描试验等。
4、蜂鸣器(小喇叭)。
可用于单片机声音报警发声试验。
5、继电器。
通过继电器控制试验,掌握继电器的驱动原理和编程方法。
6、I2C串行接口EEPROM存储器24C02。
7、SPI串行接口EEPROM存储器93C46。
8、1602字符型液晶(LCD)接口。
应用范围最广的带背光字符型液晶模块,1602LCD可显示2行,每行16个字符,广泛用于各种便携式仪器仪表中。
通过试验掌握液晶模块的驱动方法
9、12864中文液晶模块液晶接口。
可显示中文,开发中文液晶应用系统的最常用液晶器件。
10、RS232串行通信接口。
用来实验单片机和电脑相互通信的接口,可以把单片机采集到的数据(如DS18B20测到的实时温度数据)通过RS232串口发送到电脑上进行后续处理、存储。
同时电脑也可以通过RS232接口向单片机发出控制指令,比如控制实验板上的继电器动作等。
11、温度传感器DS18B20接口。
12、无线遥控解码接口。
13 TLC1543串行10位AD转换器
14 TLC5615串行10位DA转换器
二、FD-51学习板原理图(见同名PDF文件)
三、FD-51学习板元件清单(见同名PDF文件)
五、WAV6000 简单使用手册(见同名PDF文件)
六、STC-ISP下载程序的使用(见同名PDF文件)
软件实验
实验一清零程序
一、实验目的
掌握汇编语言设计和调试方法,熟悉键盘操作。
二、实验内容
把20H-2FH的内容清零。
三、程序框图
四、实验步骤
用连续或单步方式运行程序,检查20-2F中执行程序前后的内容变化。
五、思考
假使把20H-2FH中的内容改成FF,如何修改程序。
六、实验报告要求。
1、在实验报告纸上填写实验项目,实验日期,指导老师等项目,抄写实验目的,实验内容,画出实验框图。
2、单步运行程序,填写下表内容。
3、写出20-2F中执行程序前后的内容变化,说明是否实现实验内容要求。
实验二拆字程序
一、实验目的
掌握汇编语言设计和调试方法。
二、实验内容
把20H的内容拆开,高位送21H低位,低位送22H低位,21H、22H高位清零,一般本程序用于把数据送显示缓冲区时用。
三、程序框图
四、实验步骤
用连续或单步方式运行程序,检查20—22H中内容变化情况。
五、思考
如何用断点方式调试本程序。
六、实验报告要求
参考实验一
实验三拼字程序实验
一、实验目的
进—步掌握汇编语言设计和调试方法。
二、实验内容
把20H、21H的低位分别送入22H高低位,一般本程序用于把显示缓冲区的数据取出拼装成—个字节。
三、程序框图
四、实验步骤
单步或用断点方式运行程序,检查22H内容变化情况。
五、思考
六、实验报告要求
参考实验一
实验四数据区传送子程序
一、实验目的
掌握RAM中的数据操作。
二、实验内容
把R2源RAM区首址内的R3字节数据传送到R4目的RAM区。
三、程序框图
四、实验步骤
在R2中输入源首址(例如20H),R4中输入目的地址(例如40H), R3中输入字节数(例如10H),运行程序,检查20-30H中内容是否和40H-50H中内容完全—致。
五、思考
六、实验报告要求
参考实验一
实验五查找相同数个数实验
一、实验目的
熟悉汇编语言编程。
二、实验内容
在20—2FH中查出有几个字节是零,把个数放在30H中。
三、程序框图
四、实验步骤
在20—2FH的几个单元中填入零,运行本程序后检查30H中是几个单元数。
五、思考
修改程序,查找其它内容。
六、实验报告要求
参考实验一
实验A 工业顺序控制
(设计型)
一、实验目的
掌握工业顺序控制程序的简单编程,中断的使用。
二、设计实验预备知识
1、在工业控制中,像冲压、注塑、轻纺、制瓶等生产过程,都是一些断续生产过程,按某种程序有规律地完成预定的动作,对这类断续生产过程的控制称顺序控制,例注塑机工艺过程大致按“合模—>注射—>延时—>开模—>产伸—>产退”顺序动作,用单片机最容易实现。
2、设计实验中可采用用外部中断0,编中断服务程序的关键是:
⑴.保护进入中断时的状态,并在退出中断之前恢复进入的状态。
⑵.必须在中断程序中设定是否允许中断重入,即设置EX0位。
一般中断程序进入时应保护PSW、ACC以及中断程序使用但非其专用的寄存器,本设计实验中未涉及。
三、实验设计内容
1、设计采用CPU的P1口来控制注塑机的七道工序,利用七只发光二极管的点亮来模拟控制注塑机的每道工序,低电平有效。
2、设计采用CPU的为报警闪光输出。
3、设计采用CPU的为报警声音输出。
4、设计采用CPU的故障报警按钮,为解除报警按钮,为运行按钮。
5、要求设定每道工序之间有2秒的延时。
四、实验参考接线图:
参考原理图
五、实验调试步骤
1、用中断方式编写K1 K2功能程序及延时程序。
2、用连续方式开始运行程序,此时应在等待开工状态。
3、按K3,各道工序应正常运行。
4、按K1,应有声音,闪光报警(人为设置故障)。
5、按K2,即排除故障,程序应从报警的那道工序继续执行。
6、按K3,停止运行。
回到等待开工状态。
六、思考:
1、如何用数码管显示工序状态及延时时间?
实验B 简单I/O口扩展实验
1、学习仿真软件PROTEUS的使用。
2、学习使用串行数据转并行数据芯片74HC595的方法及编程技术。
二、实验内容
1、使用PROTEUS设计一个包括一个CPU及1片74HC595的串口转并口电路。
2、编程使连接在74HC595上的LED实现流水灯功能。
三、实验电路
四、实验步骤
1、编写编译程序,下载运行,检验运行结果
五、思考
74HC595 相关资料
74HC595
1 、描述74HC595是硅结构的CMOS器件,兼容低电压TTL电路,遵守JE DEC标准。
74HC595是具有8位移位寄存器和一个存储器,三态输出功能。
移位寄存器和存储器是分别的时钟。
数据在SCHcp的上升沿输入,在STcp的上升沿进入的存储寄存器中去。
如果两个时钟连在一起,则移位寄存器总是比存储寄存器早一个脉冲。
移位寄存器有一个串行移位输入(Ds),和一个串行输出(Q7’),和一个异步的低电平复位,存储寄存器有一个并行8位的,具备三态的总线输出,当使能O E时(为低电平),存储寄存器的数据输出到总线。
8位串行输入/输出或者并行输出移位寄存器,具有高阻关断状态。
三态。
2、特点:8位串行输入/8位串行或并行输出存储状态寄存器,三种状态
输出寄存器可以直接清除100MHz的移位频率
3、输出能力:并行输出,总线驱动;串行输出;标准中等规模集成电路
595移位寄存器有一个串行移位输入(Ds),和一个串行输出(Q7’),和一个异步的低电平复位,存储寄存器有一个并行8位的,具备三态的总线输出,当使能OE 时(为低电平),存储寄存器的数据输出到总线。
4、参考数据:
CPD决定动态的能耗,
PD=CPD×VCC×f1+∑(CL×VCC2×f0)
F1=输入频率,CL=输出电容f0=输出频率(MHz)Vcc=电源电压
5、引脚说明
符号引脚描述
Q0…Q7 15,1,7 并行数据输出
GND 8 地
Q7’9 串行数据输出
MR 10 主复位(低电平)
SHCP 11 移位寄存器时钟输入
STCP 12 存储寄存器时钟输入
OE 13 输出有效(低电平)
DS 14 串行数据输入
VCC 16 电源
6、功能表
输入输出功能
SHCP STCP OE MR DS Q7’Qn
××L ↓×L NC MR为低电平时仅仅影响移位寄存器
×↑L L ×L L 空移位寄存器到输出寄存器
××H L ×L Z 清空移位寄存器,并行输出为高阻状态
↑×L H H Q6 NC 逻辑高电平移入移位寄存器状态0,包含所有的移位寄存器状态移入,例如,以前的状态6(内部Q6”)出现在串行输出位。
×↑L H ×NC Qn’移位寄存器的内容到达保持寄存器并从并口输出
↑↑L H ×Q6’Qn’移位寄存器内容移入,先前的移位寄存器的内容到达保持寄存器并出。
7、注释
H=高电平状态
L=低电平状态
↑=上升沿
↓=下降沿
Z=高阻
NC=无变化
×=无效
当MR为高电平,OE为低电平时,数据在SHCP上升沿进入移位寄存器,在S TCP上升沿输出到并行端口。
实验一 P1口亮灯实验
(输出流水灯实验)
一、验目的
1、学习P1口的使用方法。
2、学习延时子程序的编写和使用。
二、实验内容:
1、P1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。
三、程序框图
四、实验步骤
1、编写编译程序,下载运行,检验运行结果
五、思考
六、实验报告要求
1、在实验报告纸上填写实验项目,实验日期,指导老师等项目,抄写实验目的,实验内容,画出实验框图,写出实验程序。
实验二 P1口亮灯实验
(输出交通灯实验)
一、验目的
1、学习P1口的使用方法。
2、学习延时子程序的编写和使用。
二、实验内容:
1、编写程序,使连接在P1口的LED发光二极管按交通灯的逻辑顺序显示。
三、程序框图
四、实验步骤
1、编写编译程序,下载运行,检验运行结果
五、思考
六、实验报告要求
1、在实验报告纸上填写实验项目,实验日期,指导老师等项目,抄写实验目的,实验内容,画出实验框图,写出实验程序。
实验三八段数码管显示实验
四、实验目的
1、学习数码管的工作原理。
2、学习数码管与单片机的连接,静态显示及动态显示的编程方法。
3、学习计时器的编程。
五、实验内容
1、编程使学习板的LED能静态显示字符。
2、编程使学习板的4位数码管能实现动态显示20-23H的内容。
三、程序框图
四、实验步骤
1、编写编译程序,下载运行,检验运行结果
五、思考
实验四键盘实验
一、验目的
1、学习P1口作为输入的使用方法。
2、学习延时子程序的编写和使用。
二、实验内容:
1、P1口做输入口,接4个轻触开关,编写程序,检测开关是否按下。
三、程序框图
四、实验步骤
1、编写编译程序,下载运行,检验运行结果
五、思考
实验五遥控解码实验
一、验目的
1、学习遥控解码器的原理及使用方法。
2、学习遥控解码器与单片机的连接方法及编程。
二、实验内容:
1、设置遥控解码板密码,连接解码板。
2、编写程序,将键值显示在数码管。
三、程序框图
四、实验步骤
1、编写编译程序,下载运行,检验运行结果
五、思考
实验六定时器、计数器实验
一、验目的
1、学习定时器的编程及使用方法。
二、实验内容:
1、编写程序,实现从0000-9999的技术及显示。
三、程序框图
四、实验步骤
1、编写编译程序,下载运行,检验运行结果
五、思考
实验七继电器控制实验
一、验目的
1、学习继电器的工作原理。
2、学习继电器与单片机的连接方法及编程。
二、实验内容:
1、阅读原理图,掌握继电器与单片机的连接电路。
2、编写程序,控制继电器做断开,吸合的动作。
三、程序框图
四、实验步骤
1、编写编译程序,下载运行,检验运行结果
五、思考
实验八蜂鸣器实验
一、验目的
1、学习蜂鸣器的工作原理。
2、学习蜂鸣器与单片机的连接方法及编程。
二、实验内容:
1、阅读原理图,掌握蜂鸣器与单片机的连接电路。
2、编写程序,控制蜂鸣器做发出BIBI声。
三、程序框图
四、实验步骤
1、编写编译程序,下载运行,检验运行结果
五、思考
实验九单片机串行口通讯实验
一、实验目的
1、通过实验了解单片机与计算机通讯的原理、编程方法。
2、通过实验了解RS-232接口结构及电平转换电路。
二、实验内容
上位机运行通讯调试软件,编程使得FD-51学习板能接受及发送数据。
三、程序框图
四、实验步骤
1、编写编译程序,下载运行,检验运行结果
四、思考
实验十电子时钟
一、验目的
1、综合应用定时器、按键、数码管、蜂鸣器、继电器。
二、实验内容:
1、编写一个具有校准时间及设置定时时间功能的电子时钟,运行到定时时间蜂鸣器报警,继电器接通。
三、程序框图
四、实验步骤
1、编写编译程序,下载运行,检验运行结果
五、思考
实验十一外部中断实验(急救车与交通灯)
一、验目的
1、学习单片机外中断的工作原理及编程方法。
二、实验内容:
用发光管模拟交通灯,用LED数码管显示计时,接一个开关模拟紧急按钮,没按键是交通灯正常运行,有按键中断后,返回继续正常显示。
三、程序框图
四、实验步骤
1、编写编译程序,下载运行,检验运行结果
五、思考
实验十二 AT24C02读写实验
一、验目的
1、学习I2C总线的原理。
2、学习AT24C02与单片机的连接方法及编程。
二、实验内容:
1、阅读原理图,掌握AT4C02与单片机的连接电路。
2、编写程序,将一串数据“1234”数字写入AT24C02。
3、编写程序,将保存在AT24C02的数据1234读出,在数码管上显示出来。
三、程序框图
四、实验步骤
1、编写编译程序,下载运行,检验运行结果
五、思考
实验十三 93C46读写实验
一、验目的
1、学习SPI总线的原理。
2、学习AT93C46与单片机的连接方法及编程。
二、实验内容:
1、阅读原理图,掌握AT4C02与单片机的连接电路。
2、编写程序,将一串数据“1234”数字写入AT93C46。
3、编写程序,将保存在AT93C46的数据1234读出,在数码管上显示出来。
三、程序框图
四、实验步骤
1、编写编译程序,下载运行,检验运行结果
五、思考
实验十四 LCD1602字符型液晶控制显示实验
一、验目的
1、学习字符型液晶显示器的原理及应用。
2、学习RT1602C与单片机的连接方法及编程。
二、实验内容:
1、阅读原理图,掌握RT1602与单片机的连接电路方法。
2、编写程序,使液晶显示器能显示“FOSHAN YNIVERITY”。
三、程序框图
四、实验步骤
1、编写编译程序,下载运行,检验运行结果
五、思考
实验十五 LCD12864点阵型液晶控制显示实验
一、验目的
1、学习点阵型液晶显示器的原理及应用。
2、学习RT12864与单片机的连接方法及编程。
二、实验内容:
1、阅读原理图,掌握12864与单片机的连接电路方法。
2、编写程序,使液晶显示器能显示“佛山大学”。
三、程序框图
四、实验步骤
1、编写编译程序,下载运行,检验运行结果
五、思考
实验十六 A/D转换器实验
一、目的和要求
1、了解串行A/D转换器TLC1543的工作原理。
2、掌握A/D转换器程序设计方法以及与AT89C52单片机的接口电路。
3、掌握A/D转换实验上机调试方法。
二、实验内容
1、将TLC1543的IN0通道连接到实验板上的可调直流0-5V电源上。
要
求A/D转换的数字量,在实验板数码管上以十进制形成显示出来,取三
位小数。
2、编写和调试由单片机控制的TLC1543串行A/D转换、数据变换和数码
管显示程序。
3、测量A/D转换器TLC1543的零点误差和线性度。
四、实验原理
1、参照TLC1543使用说明及实验板原理图及参考程序。
五、实验步骤
1、实验连线,将实验板上TLC1543的 A0端连接到实验板直流0-5V电源
上(可调电阻电压输出端)。
2、编写TLC1543串行A/D转换程序、数据变换和LED数码显示程序。
3、将PC计算机上编写的实验程序代码下载到单片机实验板上,并调试程序。
4、调节可调电阻,输出0V电压,记录数码管显示,测量其零点误差;调
节可调电阻,输出一组电压值(0-5V),记录下数码管显示数据和数字
万用表测量数据,将数据填入自行设计的表格中(分度值可取),根据
数码管显示数据和万用表测量数据分别在坐标纸上画出TLC1543的线
性度曲线,分析误差产生的原因。
六、实验注意事项
1、注意PC计算机与开发板的正确连线。
2、注意调试程序的方法和技巧,在实验报告上说明调试过程的体会。
实验十七 D/A转换器实验
一、目的和要求
1、了解D/A转换器TLC5615的工作原理,
2、掌握D/A转换器与单片机连接的接口电路和程序设计方法。
3、掌握D/A转换实验上机调试方法。
二、实验内容
1、从TLC5615串行口输入数字量,通过D/A转换产生锯齿波、方波和三角波。
2、用示波器观察并记录下输出波形。
四、实验原理
参照TLC5615使用说明及实验板原理图及参考程序。
五、实验步骤
1、编写调试程序
2、用示波器观察DAOUT段的波形。
六、实验注意事项
1、注意电脑与开发板的连线的正确
2、仔细调试程序
实验十八计算机温度数据采集与处理
一、目的和要求
1、了解数字式温度传感器DS18B20的工作原理。
2、掌握温度测量与显示电路的硬件电路和程序设计。
3、掌握本实验上机调试方法。
二、实验内容
1、完成数字化温度传感器DS18B20与单片机实验电路板的连接电路设计。
2、完成温度测量、温度数据换算和温度数据LED显示等程序的编写。
3、上机调试,观察温度显示数据随环境温度变化的情况。
五、实验步骤
1、实验连线,选择实验板上单片机某引脚与DS18B20的数据口I/O脚连
接,并且将DS18B20接上电源和接地。
2、完成温度测量、温度数据换算和温度数据LED显示等程序的编写。
要
求温度数据保留整数部分(小数部分四舍五入)。
3、将PC计算机上编写的实验程序代码下载到单片机实验板上,并调试程序。
六、实验注意事项
1、注意温度传感器DS18B20的正确连线,特别注意电源和地线不能接反。
2、程序设计要求在实验报告中画程序流程图,并加以必要的文字说明,
实验报告附上你的程序清单。
3、如果要求温度数据保留到小数点后一位(四舍五入),如何修改你的程
序。
4、注意调试程序的方法和技巧,在实验报告上说明调试过程的体会。
主要参考书
1、《微型计算机控制技术》,于海生等编著,清华大学出版社,1999年3月第1版。
2、《微型计算机控制技术》,潘新民、王燕芳编著,人民邮电出版社,1999年6月第1版。
3、《微型计算机控制技术》,黄一夫主编,机械工业出版社,1988年。
4、《单片机原理及其接口技术》,胡汉才编,清华大学出版社,2004年2月第2版。
,
5、《智能化集成温度传感器原理与应用》,沙占友等著,机械工业出版
社,2002年7月第1版。
附:参考书目
1.微控制器原理与开发技术,清华大学出版社,1997年12月第一版,
北京,潘新民、王燕芳编著;
2.单片微型计算机实用系统设计,人民邮电出版社,1992年7月第一
版,北京;
3.《单片机原理及应用技术》苏家健等编高等教育出版
社
4..《单片机初级教程》—单片机基础—张迎新等编北京航空航天大
学出版社
5.《单片机试验与实践教程》夏继强等编北京航空航天大学出版社
6.《单片机教程辅导与习题解答》张俊谟等编北京航空航天大学出版社
7.《单片机微机仿真试验系统MCS-51试验指导书》-启东达爱思计算机有限公司第二版。