单片机课设.docx
- 文档编号:8967726
- 上传时间:2023-05-16
- 格式:DOCX
- 页数:32
- 大小:978.24KB
单片机课设.docx
《单片机课设.docx》由会员分享,可在线阅读,更多相关《单片机课设.docx(32页珍藏版)》请在冰点文库上搜索。
单片机课设
洛阳理工学院
课程设计报告
课程名称单片机原理与接口技术
设计题目基于STC单片机的实验平台开发设计
专业通信工程
班级B110509
学号B11050901
姓名杜莹
完成日期2013年12月30日
课程设计任务书
设计题目:
基于STC单片机的实验平台开发设计
一、设计内容
利用STC系列单片机作为微控制器开发一套软、硬结合的单片机实验平台,主要包括以下内容:
1.使用Proteus7.8进行仿真电路原理图设计,主要包括LCD显示模块、串口通信模块、数码管显示模块、LED发光二极管、键盘等接口电路的设计;
2.结合电路原理图,在KeiluVision4软件环境下,进行实验平台软件设计。
主要包括流水灯、计数器、定时器、LCD字符显示、键盘控制等功能程序设计;
3.进行电路元器件的识别,学习分立元件、集成电路等芯片的焊接方法与技巧,集中进行电路板焊接与测试;
4.将编写的各模块程序下载到测试后的实验平台上,验证硬件实现的效果是否与软件仿真一致;
5.结合器件选择、原理图设计、硬件焊接、软件编程调试、软硬件联调等方面写出课程设计报告。
二、设计要求
1.完成综合实验平台的电路结构分析,进行模块分解,掌握各部分电路的工作原理;
2.每组协作完成电路板的焊接,掌握故障排除方法,完成实验平台的硬件设计及开发;
3.结合KeiluVision4软件在焊接无误的单片机实验平台上开发出流水灯、LCD显示模块,通信模块等程序设计;
4.根据分组情况,从硬件、软件方面对学生进行逐一答辩考核;
5.按照要求撰写课程设计论文。
指导教师:
舒云星、李传锋
2013年12月16日
课程设计评语
成绩:
指导教师:
_______________
年月日
基于STC单片机的实验平台开发设计
摘要
STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。
STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。
在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
具有以下标准功能:
8k字节Flash,512字节RAM,32位I/O口线,看门狗定时器,内置4KBEEPROM,MAX810复位电路,3个16位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双共串口。
另外STC89C52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。
空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
最高运作频率35MHz,6T/12T可选。
利用STC89C52单片机作为微控制器开发一套软、硬件相结合的单片机实验平台,在KeilC环境下进行软件设计,主要包括流水灯、数码管显示以及LCD显示模块,在Protues中仿真成功,下载到电路板中验证成功。
实现流水灯的跳转显示流动,应用中断实现数码管60之内计数以及LCD显示不同字符的功能。
STC51单片机开发板是一款功能强大、集成度高且可扩展强的单片机实验开发系统。
它将单片机实验、编程器、仿真器集成到一个系统上,成本与价格低廉,而且摆脱了传统单片机开发套件繁琐的方式,同时,还可进行多种实验,非常适合用于单片机教学配套实验版,另外板上具有大量的外扩接口,可非常方便的进行系统扩展,适用于科研实验或学生参加电子设计竞赛。
在本次实验中可以实现多种功能,如流水灯、LED计数以及液晶显示两行字符,并可以用按键控制其不同功能间的转换。
本设计是采用Keilc编程及Protus仿真电路进行仿真,最终下载到电路板上实现不同的功能。
关键词:
STC单片机,仿真设计,实验平台,计数器,串行通信。
ExperimentPlatformDevelopmentDesignBasedon
STCMicrocontroller
ABSTRACT
STC51MCUdevelopmentboardisapowerful,highlyintegratedandscalablestrongsinglechipexperimentdevelopmentsystem.Itwillsinglechipexperiment,programmer,simulatorandintegratedintoasystem,costandlowprice,andgetridofthetraditionalMCUdevelopmentkitcumbersomeway,atthesametime,canalsocarryoutavarietyofexperiments,verysuitableforsinglechipcomputerteachingsupportingexperimentalversion,theotherplateisprovidedwithalargenumberofexternalexpansioninterface,whichisveryconvenientforsystemextended,suitableforscientificresearchexperimentsorstudentstoparticipateinelectronicdesigncontest.
Inthisexperimentyoucanachieveavarietyoffunctions,suchaswaterlights,LEDcountandliquidcrystaldisplaytwolinesofcharacters,andcanusekeystocontroltheswitchingbetweendifferentfunctions.
ThisdesignistheuseofKeilcprogrammingandProtussimulationcircuitsimulation,finallytodownloadontoacircuitboardtoachievedifferentfunctions.
STC51MCUdevelopmentboardisapowerful,highlyintegratedandscalablestrongsinglechipexperimentdevelopmentsystem.Itwillsinglechipexperiment,programmer,simulatorandintegratedintoasystem,costandlowprice,andgetridofthetraditionalMCUdevelopmentkitcumbersomeway,atthesametime,canalsocarryoutavarietyofexperiments,verysuitableforsinglechipcomputerteachingsupportingexperimentalversion,theotherplateisprovidedwithalargenumberofexternalexpansioninterface,whichisveryconvenientforsystemextended,suitableforscientificresearchexperimentsorstudentstoparticipateinelectronicdesigncontest.
Inthisexperimentyoucanachieveavarietyoffunctions,suchaswaterlights,LEDcountandliquidcrystaldisplaytwolinesofcharacters,andcanusekeystocontroltheswitchingbetweendifferentfunctions.
ThisdesignistheuseofKeilcprogrammingandProtussimulationcircuitsimulation,finallytodownloadontoacircuitboardtoachievedifferentfunctions.
KEYWORDS:
STCmicrocontroller,Simulationdesign,Experimentplatform,Counter,Serialcommunication
目录
摘要I
前言1
第1章实验平台概述2
1.1设计题目2
1.2系统设计目的和内容2
1.2.1设计目的2
1.2.2设计内容2
1.2.3设计要求2
1.2.4设计步骤2
第2章整体设计方案3
2.1开发板整体外观3
2.2整板电路PROTUES仿真电路3
2.3软件功能描述4
2.4仿真软件PROTUES中的效果图4
第3章硬件电路设计6
3.1两位一体共阴数码管6
3.1.1数码管概述6
3.1.2数码管内部结构7
3.1.3两位一体共阴数码管和74LS373锁存器接口电路9
3.2LCD1602液晶10
3.2.1LCD1602液晶简介10
3.2.2LCD1602液晶引脚介绍10
3.2.3LCD1602液晶外围接口电路11
3.3串口通信11
3.3.1串口通讯概述11
3.3.2MAX232接口电路11
第4章软件设计12
4.1程序整体流程图12
4.2程序清单13
第5章调试及故障分析18
5.1焊接准备阶段元器件测试、电路原理图故障分析18
5.2电路焊接过程中的故障分析18
5.3程序编写过程中的故障分析18
5.4实物演示效果19
结论20
谢辞21
参考文献22
附 录23
前言
目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。
导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。
更不用说自动控制领域的机器人、智能仪表、医疗器械了。
因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。
单片机应用的意义不仅在于它的广阔范围及所带来的经济效益,更重要的意义在于,单片机的应用从根本上改变了控制系统传统的设计思想和设计方法。
以前采用硬件电路实现的大部分控制功能,正在用单片机通过软件方法来实现。
以前自动控制中的PID调节,现在可以用单片机实现具有智能化的数字计算控制、模糊控制和自适应控制。
这种以软件取代硬件并能提高系统性能的控制技术称为微控技术。
随着单片机应用的推广,微控制技术将不断发展完善。
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
作为嵌入式系统控制核心的单片机具有其体积小、功能全、性价比高等诸多优点。
51系列单片机是国内目前应用最广泛的单片机之一,随着嵌入式系统、片上系统等概念的提出和普遍接受及应用,51系列单片机的发展又进入了一个新的阶段。
在今后很长一段时间内51系列单片机仍将占据嵌入式系统产品的中低端市场
MCS51系列单片机分为51和52两个子系列,包括80C51、87C51、80C52、87C52等典型产品型号。
它们的基本结构基本相同,主要差别仅在于片内存储器、计数器、中断源的配置有所不同,其中52子系列在存储器容量、计数器和中断源数量方面都高于51子系列。
本次实验是使用89C52进行属数码管显示,流水灯键控,LCD显示,是基础实验,主要是为了使初学者更加熟悉单片机,熟练掌握实验技巧,未进行相关的扩展实验。
第1章实验平台概述
1.1设计题目
基于51系列单片机的实验平台开发设计
1.2系统设计目的和内容
1.2.1设计目的
此次课程设计,有如下目的:
(1)通过本次课程设计,使学生熟悉单片机控制系统的组成与原理及开发流程。
(2)加深学生对电子产品的制作调试及基本的焊接方法有深入的理解。
(3)巩固单片机、接口等理论知识。
(4)提高学生的基本操作能力。
1.2.2设计内容
设计内容主要包括以下几点:
1、设计电路原理图,本次实验中为LCD显示模块、数码管显示模块、LED发光二极管的流水灯模块三种模块的设计。
2、在keil环境下,进行软件设计,把LCD显示、数码管显示、流水灯的相关功能控制程序编写出来。
把设计的原理图在Protus中仿真出来并用程序完成相关功能控制。
3、由老师讲解元器件的识别及焊接方法后学生自己按照原理图进行焊接。
4、经老师检查通过后连接计算机输入已编好的程序,并观察实物的功能实现情况。
1.2.3设计要求
1、能够自我识别元器件,说出元器件名称及功能,掌握电路工作原理,明白设计的每一个程序并能解释清楚。
2、能够合作完成电路的焊接,掌握故障排除方法,完成实验平台的硬件设计及开发。
3、能点单片机板上实现要求的功能并知道如何调试,完成最后的课程设计答辩。
1.2.4设计步骤
先在Protus中仿真实验并成功通过测试,之后在老师的指导下把LCD显示器、数码管、LED二极管及开关电容等部分焊接到电路板上,最后把设计好的keil程序下载到电路板上。
完成后根据要求写出设计报告。
第2章整体设计方案
1
2
2.1开发板整体外观
图2-1开发板整体外观
2.2整板电路PROTUES仿真电路
图2-2Protus仿真电路
2.3软件功能描述
Proteus是英国Labcenter公司开发的电路分析与实物仿真及印制电路板设计软件,它可以仿真、分析各种模拟电路与集成电路,软件提供了大量模拟与数字元器件及外部设备,各种虚拟仪器,特别是它具有对单片机及其外围电路组成的综合系统的交互仿真功能。
Proteus主要由ISIS和ARES两部分组成,ISIS的主要功能是原理图设计及与电路原理图的交互仿真,ARES主要用于印制电路板的设计。
Proteus的ISIS是一款Labcenter出品的电路分析实物仿真系统,可仿真各种电路和IC,并支持单片机,元件库齐全,使用方便,是不可多得的专业的单片机软件仿真系统。
1全部满足我们提出的单片机软件仿真系统的标准,并在同类产品中具有明显的优势。
2具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS-232动态仿真、C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。
3目前支持的单片机类型有:
68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。
4支持大量的存储器和外围芯片。
总之该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大,可仿真51、AVR、PIC。
一句话,实现单片机的模拟仿真
2.4仿真软件PROTUES中的效果图
图2-3为流水灯的仿真效果图
图2-4为数码管仿真效果图
图2-5为LCD仿真效果图
第3章硬件电路设计
3.1两位一体共阴数码管
2
3
3.1
3.1.1数码管概述
数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示);按能显示多少个“8”可分为1位、2位、4位等等数码管;
按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。
共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管,共阳数码管COM)的数码管,在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮,当某一字段的阴极为高电平时,相应字段就不亮。
共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮,当某一字段的阳极为低电平时,相应字段就不亮。
如图3-1
图3-1
另附上引脚图,如图3-2
图3-2
3.1.2数码管内部结构
led数码管(LEDSegmentDisplays)是由多个发光二极管封装在一起组成“8”字型的器件,引线已在内部连接完成,只需引出它们的各个笔划,公共电极。
led数码管常用段数一般为7段有的另加一个小数点,还有一种是类似于3位“+1”型。
位数有半位,1,2,3,4,5,6,8,10位等等,led数码管根据LED的接法不同分为共阴和共阳两类,了解LED的这些特性,对编程是很重要的,因为不同类型的数码管,除了它们的硬件电路有差异外,编程方法也是不同的。
图2是共阴和共阳极数码管的内部电路,它们的发光原理是一样的,只是它们的电源极性不同而已。
颜色有红,绿,蓝,黄等几种。
led数码管广泛用于仪表,时钟,车站,家电等场合。
选用时要注意产品尺寸颜色,功耗,亮度,波长等。
下面将介绍常用LED数码管内部引脚图片。
图3-3LED数码管引脚定义图3-410引脚数码管实物图
8段LED数码管如图3-5所示:
图3-58段LED数码管结构及外形
LED数码管通过7个发光二极管亮暗的不同组合可以显示各种数字,另外一个圆的型发光二级管(图3-3(a)中以dp显示)显示小数点。
只要为LED数码管提供了段码就可以显示不同的符号和数字。
LED数码管共计8段。
正好是一个字节。
习惯上是以“a”段对应段码字节的最低位。
各段与字节中各位对应关系如表3-1所示。
表3-1段码与字节中各位对应关系
代码位
D7
D6
D5
D4
D3
D2
D1
D0
显示段
dp
g
f
e
d
c
b
a
按照表3-1中的格式,显示各种字符的8段LED数码管的段码如表3-2所示(以共阴极为例)。
表3-28段LED数码管段码
显示字符
段符号
十六进制代码
dp
g
f
e
d
c
b
a
共阴极
共阳极
0
0
1
1
1
1
1
1
3FH
C0H
1
0
0
0
0
0
1
1
0
06H
F9H
2
0
1
0
1
1
0
1
1
5BH
A4H
3
0
1
0
0
1
1
1
1
4FH
B0H
4
0
1
1
0
0
1
1
0
66H
99H
5
0
1
1
0
1
1
0
1
6DH
92H
6
0
1
1
1
1
1
0
1
7DH
82H
7
0
0
0
0
0
1
1
1
07H
F8H
8
0
1
1
1
1
1
1
1
7FH
80H
9
0
1
1
0
1
1
1
1
6FH
90H
3.1.3两位一体共阴数码管和74LS373锁存器接口电路
图3-6
3.2LCD1602液晶
3.2.1LCD1602液晶简介
1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。
它由若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此所以它不能很好地显示图形(用自定义CGRAM,显示效果也不好)。
1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。
目前市面上字符液晶绝大多数是基于HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780写的控制程序可以很方便地应用于市面上大部分的字符型液晶。
3.2.2
LCD1602液晶引脚介绍
1602采用标准的16脚接口(如右图),其中:
①第1脚:
VSS为电源地
②第2脚:
VCC接5V电源正极
③第3脚:
V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。
⑤第4脚:
RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。
⑥第5脚:
RW为读写信号线,高电平
(1)时进行读操作,低电平(0)时进行写操作。
⑦第6脚:
E(或EN)端为使能(enable)端。
⑧第7~14脚:
D0~D7为8位双向数据端。
⑨第15~16脚:
空脚或背灯电源。
15脚背光正极,16脚背光负极。
3.2.3LCD1602液晶外围接口电路
图3-7
3.3串口通信
3.3.1串口通讯概述
串口通信(SerialCommunication),是指外设和计算机间,通过数据信号线、地线、控制线等,按位进行传输数据的一种通讯方式。
这种通信方式使用的数据线少,在远距离通信中可以节约通信成本,但其传输速度比并行传输低
3.3.2MAX232接口电路
图3-8
1软件设计
4.1程序整体流程图
这是流水灯和LCD的程序流程图
这是数码管的程序流程图
4.2程序清单
#include
sbitRS=P1^6;//定义LCD的RS脚
sbitRW=P1^7;//定义LCD的RW脚
sbitP25=P2^5;//定义74138的A控制端
sbitP26=P2^6;//定义74138的B控制端
sbitP27=P2^7;//定义74138的C控制端
unsignedcharlcd;//定义LCD的数据D0-D7
unsignedcharled[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
//定义LED的字段显示0
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机