武汉理工单片机实习报告.docx
《武汉理工单片机实习报告.docx》由会员分享,可在线阅读,更多相关《武汉理工单片机实习报告.docx(50页珍藏版)》请在冰豆网上搜索。
武汉理工单片机实习报告
一、实习目的
1、巩固《单片机原理与应用》理论课的理论知识;
2、熟悉单片机应用系统的硬件设计及软件设计的基本方法;
3、将《单片机原理与应用》理论课的理论知识应用于实际的应用系统中;
4、训练单片机应用技术,锻炼实际动手能力。
二、实习纪律与要求
1、实习纪律
1)参加实习的学生必须按照实习大纲的要求,在指导教师的指导下,全面完成实习任务;
2)听从指导教师安排,严格遵守实习纪律;
3)因故在实习期间缺勤累计超过规定时间的三分之一,不得参加本次实习考核,但可在补足所缺天数后再给予考核并评定实习成绩。
2、基本要求
1)利用PROTEL等软件进行硬件设计;
2)利用KeiluV2软件完成应用系统软件设计;
3)利用PROTEUS软件进行仿真设计;
4)完成单片机最小系统和应用系统电路板的焊接;
5)对电路进行调试;
6)利用stc-isp软件完成在系统编程、下载,并完成系统软件调试;
7)题目由指导教师提供;
8)要求每个学生单独完成硬件软件设计、仿真、焊接、调试任务;
9)写出实习报告,实习报告主要包括以下内容:
目录、摘要、关键词、基本原理、方案论证、硬件设计、软件设计(带流程图、程序清单)、仿真结果、实物运行结果照片、结论、参考文献等;
10)实习完成后通过答辩;
11)答辩时交实习报告电子文档,通过答辩后根据修改意见修改并打印、装订成册。
三、实习地点
武汉理工大学信息工程学院通信实验室。
四、实习时间
19-20周
五、实习内容
1、实习所需主要材料(供参考)
(1)单片机最小系统部分
序
号
名称
数量
1
万能实验电路板
1块
2
单片机STC89C52
1只
3
晶振12MHz
1只
4
30PF瓷片电容
2只
5
10k/0.25W电阻
1只
6
10uF/16V电解电容
1只
7
2k/0.25W电阻
1只
8
10k/9脚排阻
1只
9
5V/500mA直流电源
1个
10
排针、按钮、LED、导线等
若干
(2)下载电路部分
序
号
名称
数量
1
万能实验电路板
1块
2
MAX232
1片
3
0.1uF瓷片电容
4只
4
DB9插座
1只
5
RS-232C串口电缆(9针)
1根
(3)扩展电路部分
扩展电路部分材料根据设计方案确定。
(4)软件部分
序
号
名称
数量
1
电路设计软件PROTEL
1套
2
编程软件KeiluV2
1套
3
仿真软件PROTEUS
1套
4
下载软件stc-isp
1套
(5)工具
序
号
名称
数量
1
PC(带RS-232C口)
1台
2
万用表
1块
3
电烙铁
1只
4
焊锡、松香等
若干
2、任务
1)利用上述材料完成包含如下系统功能组件的单片机最小系统的设计、焊接、调试
(1)键盘
一个4X4的矩阵键盘,其中,10个按键是0~9数字键;另外6个是功能键,用于功能选择和控制。
(2)显示电路
由6个7段LED数码管组成的显示电路。
(3)温度检测
利用DS18B20可编程1-Wire数字温度传感器芯片,或利用AD590温度传感器芯片和A/D转换器芯片采集温度温度信号。
(4)串口串行通信
利用51的串口实现串行通信接口电路。
2)完成ISP下载电路的设计、焊接
3)完成系统软件的设计,包括程序结构设计、流程图绘制、程序设计,实现如下功能
(1)功能选择
通过功能选择键,使得单片机处于不同的工作状态并通过LED显示相应的内容。
(2)温度显示
通过功能选择键选择温度检测、显示后,LED显示温度值。
(3)数据输入
通过功能选择键选择数据输入后,将通过键盘键入的0~9按键值显示在LED上,其中,最后输入的显示在最左边,之前键入向右移动一位。
(4)数据通信
将两个单片机最小系统通过串口连接起来,其中一个作为主系统,另一个作为辅系统。
当通过功能选择键选择数据通信后,当在主系统上进行功能
(2)、功能(3)的操作时,辅系统的LED上显示与主系统同样的内容。
4)利用仿真软件完成系统仿真工作
5)在单片机最小系统硬件上实现任务3中规定的功能
3、参考资料
[1]谢自美.电子线路设计·实验·测试(第三版).武汉:
华中科技大学出版社
[2]李群芳.单片微型计算机与接口技术(第3版).电子工业出版社,2008
[3]刘教瑜.单片机原理及应用.武汉理工大学出版社,2011
[4]张东亮.单片机原理与应用.人民邮电出版社,2009
六、实习具体安排
序
号
阶段内容
所需时间
1
方案设计
2天
2
硬件设计
2天
3
软件设计
3天
4
系统仿真
1天
5
电路板焊接
2天
6
系统调试
3天
7
答辩
1天
合计
14天
七、实习考核
学生必须按照实习大纲的要求完成实习的全部内容,并提交实习报告。
指导教师应对学生进行实习考核并评定实习成绩。
实习成绩评定按优、良、中、及格和不及格五级分制。
1、对报告的要求
实习报告要求逻辑清晰、层次分明、书写整洁。
报告包括标题(中英文)、提要、正文(包括①项目要求与说明;②软件流程分析;③调试分析;④实验数据分析;⑤答辩;⑥成绩评定)、附录(图纸.程序清单或软盘)。
实习要求须每人一份,独立完成。
2、对图纸的要求
图纸要求准确全面并与任务要求完成的内容一致。
3、评分标准
1.选题合理、目的明确(10分)
2.方案正确,具有可行性、创新性(20分)
3.结果(如:
硬件成果、软件程序、仿真结果)(20分)
4.态度认真、学习刻苦、遵守纪律(15分)
5.报告的规范化、参考文献充分(不少于5篇)(10分)
6.答辩(25分)
总分(100分)
备注:
成绩等级:
优(90分—100分)、良(80分—89分)、中(70分—79分)、及格(60分—69分)、60分以下为不及格。
概况
实习单位:
武汉理工大学信息工程学院
参观考察单位:
(1)武汉理工大学信息工程学院开放实验室
(2)
(3)
(4)
(5)
(6)
实习开始时间:
2014年6月23日,实习时间共14天。
完成实习报告时间:
2014年7月6日。
实习报告
单片机应用实习
摘要
单片机微型计算机简称单片机,是典型的嵌入式微控制器单片机芯片,常用英文字母的缩写MCU表示单片机,单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
单片机由运算器、控制器、存储器、输入输出设备构成,相当于一个微型的计算机(最小系统),和计算机相比,单片机缺少了外围设备等。
概括的讲:
一块芯片就成了一台计算机。
它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。
同时,学习使用单片机是了解计算机原理与结构的最佳选择。
本次课程设计包括单片机最小系统(包括复位和时钟电路)及供电系统、4*4矩阵键盘、6个8段LED数码管显示电路及串口下载电路,可以实现数据输入、数据显示和串口通信三种功能。
利用Protel电路设计软件进行原理图设计,利用Keil软件编程以及Proteus软件仿真,并最终做出实物。
借此巩固单片机应用、模拟电路、数字电路课程及学会各种工程软件的使用。
关键词:
单片机,电路设计,仿真,调试
Abstract
Summaryspeaking:
a chiphasbecomeacomputer. It hastheadvantagesofsmallvolume, lightweight, cheap, forthestudy, applicationanddevelopmentoffacilitiesprovided. Atthesametime, learningtousetheMCUisto understandthe principleandstructureofthecomputerthe best choice.
Thecurriculumdesign includes MCUminimumsystem (includingthereset andclockcircuit) andpowersupplysystem, 4*4matrixkeyboard, 6 LED8segmentdigitaltubedisplay circuitandthe serialdownloadcircuit, canrealizethe datainput, data showedthatthreekindsof functionand serialcommunication. UsingProtelcircuit design softwareschematic design, usingKeilsoftware programmingandProteus softwaresimulation, andultimately makeinkind. Theuseofsinglechipapplication to consolidate, analogcircuit, digital circuit course andlearnallkindsof Engineeringsoftware.
Keywords:
singlechip, circuitdesign, simulation, debugging
1.基本原理
本系统主要由键盘显示电路、数字温度计和串口实现串行通信接口电路模块组成。
具有功能选择,温度显示,数据输入,数据通信等功能。
1.1键盘显示电路
在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式。
在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。
这样,一个端口(如P2口)就可以构成4*4=16个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显,比如再多加一条线就可以构成20键的键盘,而直接用端口线则只能多出一键(9键)。
由此可见,在需要的键数比较多时,采用矩阵法来做键盘是合理的。
,利用p0口控制数码管的段选,利用p1口控制数码管位选。
1.2数字温度计
图1.1DS18B20温度传感器引脚图
DS18B20是一种单总线数字温度传感器。
测试温度范围-55℃-125℃,温度数据位可配置为9、10、11、12位,对应的刻度值分别为0.5℃、0.25℃、0.125℃、0.0625℃,对应的最长转换时间分别为93.75ms、187.5ms、375ms、750ms。
出厂默认配置为12位数据,刻度值为0.0625℃,最长转换时间为750ms。
从以上数据可以看出,DS18B20数据位越低、转换时间越短、反应越快、精度越低。
单总线,意味着没有时钟线,只有一根通信线。
单总线读写数据是靠控制起始时间和采样时间来完成,所以时序要求很严格,这也是DS18B20驱动编程的难点。
1.3串口通信
串行通信是指使用一条数据线,将数据一位一位地依次传输,每一位数据占据一个固定的时间长度。
其只需要少数几条线就可以在系统间交换信息,特别使用于计算机与计算机、计算机与外设之间的远距离通信。
串口通信实现了主机和辅机之间的串口通信,分别将两个AT89C52芯片上的P3.0(RXD),P3.1(TXD)交错相连,实现一个发送数据,一个接收数据。
51系列单片机的串口有4个模式,可分别用作串并转换、并串转换、异步串行通信(2种模式)。
异步串行通信中,有1+8+1和1+8+1+1两种帧格式,多机通信是特殊的通信方式。
基本原理是两组移位寄存器。
将并行通信转换成串行通信模式(发送部分),或反之(接收部分)。
可全双工运行。
速度通过移位脉冲决定。
具体一般通过定时器1的自动装载模式产生的溢出脉冲给出。
电平上采用的是CMOS逻辑。
2.系统硬件电路设计
系统主要由键盘显示电路、数字温度计和串口实现串行通信接口电路模块组成。
2.1总体方案
本设计采用STC89C52单片机作为本系统的控制模块。
单片机可把由DS18B20等中的数据利用软件来进行处理,从而把数据传输到显示模块,实现功能选择,温度显示,数据输入,数据通信等功能。
以六个七段数码管为显示模块,把单片机传来的数据显示出来,并且显示多样化。
在显示电路中,主要靠按键来实现各种显示要求的选择与切换。
采用单片机控制。
利用单片机丰富的I/O端口,及其控制的灵活性,有较大的活动空间,便于修改。
不但能实现基本的显示功能,而且能在很大的程度上扩展功能,还可以方便的对系统进行升级。
为此我们采用了单片机进行设计,相对来说功能强大,用较少的硬件和适当的软件相互配合可以很容易的实现设计要求。
单片机控制实现方案框图,如下图所示
DS18B20
单片机
数码管显示
矩阵键盘
串口通信
图2.1单片机控制实现方案框图
2.2STC89C52单片机最小系统
单片机最小系统,是指用最小的元件组成的单片机可以工作的系统。
对51系列单片机来说,最小系统一般应该包括:
单片机、晶振电路、复位电路、按键输入、显示输出等。
单片机接口电路主要用来连接计算机和其他外部设备。
图为AT89C52单片机的最小系统。
控制模块键盘显示电路用单片机最小系统进行按键识别和数码管显示的控制,利用P2口进行按键的扫描和状态读取,利用p0口控制数码管的段选,利用p1口控制数码管位选。
从而实现键盘和数码管显示的协调。
最小系统图如下图4.2所示。
单片机系统里都有晶振,在单片机系统里晶振作用非常大,全程叫晶体振荡器,他结合单片机内部电路产生单片机所需的时钟频率,单片机晶振提供的时钟频率越高,那么单片机运行速度就越快,单片接的一切指令的执行都是建立在单片机晶振提供的时钟频率。
图2.2STC89C52单片机最小系统
2.2.1复位电路
单片机的置位和复位,都是为了把电路初始化到一个确定的状态,一般来说,单片机复位电路作用是把一个例如状态机初始化到空状态,而在单片机内部,复位的时候单片机是把一些寄存器以及存储设备装入厂商预设的一个值。
单片机复位电路原理是在单片机的复位引脚RST上外接电阻和电容,实现上电复位。
当复位电平持续两个机器周期以上时复位有效。
复位电平的持续时间必须大于单片机的两个机器周期。
具体数值可以由RC电路计算出时间常数。
复位电路由按键复位和上电复位两类。
(1)上电复位
STC89系列单片及为高电平复位,通常在复位引脚RST上连接一个电容到VCC,再连接一个电阻到GND,由此形成一个RC充放电回路保证单片机在上电时RST脚上有足够时间的高电平进行复位,随后回归到低电平进入正常工作状态,这个电阻和电容的典型值为10K和10uF。
(2)按键复位
按键复位就是在复位电容上并联一个开关,当开关按下时电容被放电、RST也被拉到高电平,而且由于电容的充电,会保持一段时间的高电平来使单片机复位。
电路图如图2.3。
图2.3复位电路
2.2.2晶振电路
单片机系统里都有晶振,对单片机最小系统来说晶振作用非常大,全称叫晶体振荡器,它结合单片机内部电路产生单片机所需的时钟频率,单片机晶振提供的时钟频率越高,那么单片机运行速度就越快,单片接的一切指令的执行都是建立在单片机晶振提供的时钟频率。
在通常工作条件下,普通的晶振频率绝对精度可达百万分之五十。
高级的精度更高。
有些晶振还可以由外加电压在一定范围内调整频率,称为压控振荡器。
晶振用一种能把电能和机械能相互转化的晶体在共振的状态下工作,以提供稳定,精确的单频振荡。
单片机晶振的作用是为系统提供基本的时钟信号。
通常一个系统共用一个晶振,便于各部分保持同步。
有些通讯系统的基频和射频使用不同的晶振,而通过电子调整频率的方法保持同步。
晶振通常与锁相环电路配合使用,以提供系统所需的时钟频率。
如果不同子系统需要不同频率的时钟信号,可以用与同一个晶振相连的不同锁相环来提供。
STC89C52使用11.0592MHz的晶体振荡器作为振荡源,由于单片机内部带有振荡电路,所以外部只要连接一个晶振和两个电容即可,电容容量一般在20pF至33pF之间,本设计选用30pF晶振。
其电路原理图如2.4所示
图2.4晶振电路
2.2.3电源电路
对于单片机而言,电源给整个系统供电。
电源电路如下图所示:
其中1N5819是限流二极管,当电流过大时,可以对整个电路起到保护作用。
电容C4、C5起到滤波的作用,使整个51系统可以稳定的工作。
LED灯是电源指示灯,当接通开关时,可以指示系统是否在工作。
电源电路如下图所示
图2.5电源电路
2.3键盘与显示电路
2.3.1矩阵键盘
行线和列线接单片机的I/O口作为输出端,行线初始为低电平,而列线所接的I/O口则作为输入。
这样,当按键没有按下时,所有的输入端都是高电平,代表无键按下。
行线输出是低电平,一旦有键按下,则输入线就会被拉低,这样,通过读入输入线的状态就可得知是否有键按下了。
矩阵键盘的扫描有有循环扫描和中断扫描两种。
在本次实习中采用循环扫描的方式。
循环扫描方式利用CPU在完成其他工作的空余,调用键盘扫描子程序来响应键输入要求。
在执行键功能程序时,CPU不再响应键输入要求。
键盘扫描程序通常具备4项功能:
第一,判断键盘上有无键按下。
第二,去除键抖动影响。
在判断有键按下,软件延时一段时间后,再判断键盘状态。
如果仍为有键按下状态,则确定;否则按键抖动处理。
第三,扫描键盘,得到按键的键号。
第四,判别闭合的键是否释放。
在系统初始化后,CPU必须反复轮流调用扫描式显示子程序和键盘输入程序。
在识别有键闭合后,执行规定的操作,然后再重新进人上述循环。
本次使用的矩阵键盘与单片机的P2口连接来进行扫描。
获得相应的键值,执行相关的操作。
原理图如下所示:
图2.6矩阵键盘原理图
2.3.2显示电路
LED数码管显示是利用半导体发光制成条形的发光二极管,封装在一起组成数字或其他符号形状。
数码管根据公共端不同,分为共阴极和共阳极两种形式。
本次设计采用共阳极数码管,考虑到六位数码显示管显示,点亮的时间太短,LED的亮度太低,肉眼无法看清,所以一般均取几个ms左右为宜,这就要求在编写程序时,选通某一位LED使其点亮并保持一定的时间。
这样就可以是数码管稳定的显示。
数码管的与原理图如下所示:
图2.7数码管电路图
2.4数字温度计电路设计原理
2.4.1DS18B20芯片的结构
DS18B20的测温原理,低温度系数晶振的振荡频率受温度的影响很小用于产生固定频率的脉冲信号送给减法计数器1,高温度系数晶振随温度变化其震荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入,图中还隐含着计数门,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量.计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55℃所对应的基数分别置入减法计数器1和温度寄存器中,减法计数器1和温度寄存器被预置在-55℃所对应的一个基数值。
减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到减法计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温图2中的斜率累加器用于补偿和修正测温过程中的非线性其输出用,于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值,这就是DS18B20的测温原理。
另外,由于DS18B20单线通信功能是分时完成的,他有严格的时隙概念,因此读写时序很重要。
系统对DS18B20的各种操作必须按协议进行。
操作协议为:
初始化DS18B20(发复位脉冲)→发ROM功能命令→发存储器操作命令→处理数据。
图3.8DS18B20原理图
2.5串口串行通信电路设计
串行通信是指使用一条数据线,将数据一位一位地依次传输,每一位数据占据一个固定的时间长度。
其只需要少数几条线就可以在系统间交换信息,特别使用于计算机与计算机、计算机与外设之间的远距离通信。
数据在单条一位宽的传输线上,一比特接一比特地按顺序传送的方式称为串行通信。
在并行通信中,一个字节(8位)数据是在8条并行传输线上同时由源传到目的地;而在串行通信方式中,数据是在单条1位宽的传输线上一位接一位地顺序传送。
这样一个字节的数据要分8次由低位到高位按顺序一位地传送。
由此可见,串行通信的特点如下:
1、节省传输线,这是显而易见的。
尤其是在远程通信时,此特点尤为重要。
这也是串行通信的主要优点。
2、数据传输效率低。
与并行通信比,这也这是显而易见的。
这也是串行通信的主要缺点。
例如:
传送一个字节,并行通信只需要1T的时间,而串行通信至少需要8T的时间。
由此可见,串行通信适合于远距离传送,可以从几米到数千公里。
对于长距离、低速率的通信,串行通信往往是唯一的选择。
并行通信适合于短距离、高速率的数据传输,通常传输距离小于30米。
特别值得一提的是,现成的公共电话网是通用的长距离通信介质,它虽然是为传输声音信号设计的,但利用调制解调技术,可使现成的公共电话网系统为串行数据通信提供方便、实用的通信线路。
如下图4.4.1所示为串行通信示意图
3软件实现与仿真
3.1PROTEUS简介
Proteus软件是英国LabCenterElectronics公司出版的EDA工具软件(该软件中国总代理为广州风标电子技术有限公司)。
它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。
它是目前比较好的仿真单片机及外围器件的工具。
虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。
Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。
是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列处理器,并持续增加其他系列处理器模型。
在编译方面,它也支持IAR、Keil和MATLAB等多种编译器.
Proteus资源丰富:
1.Proteus可提供的仿真元器件资源:
仿真数字和模拟、交流和直流等数千种元器件,有30多个元件库。
2.Proteus可提供的仿真仪表资源:
示波器、逻辑分析仪、虚拟终端、SPI调试器、I2C调试器、信号发生器、模式发生器、交直流电压表、交直流电流表。
理论上同一种仪器可以在一个电路中随意的调用。
3.除了现实存在的仪器外,