单片机学习板的设计.docx
- 文档编号:12142384
- 上传时间:2023-06-04
- 格式:DOCX
- 页数:41
- 大小:1.72MB
单片机学习板的设计.docx
《单片机学习板的设计.docx》由会员分享,可在线阅读,更多相关《单片机学习板的设计.docx(41页珍藏版)》请在冰点文库上搜索。
单片机学习板的设计
摘要
在现在这个电子芯片高速发展的年代,学生们熟练掌握单片机工作原理及其各模块的功能具有时代的意义。
随着经济的发展和人们观念的日趋改变,人们越来越享受高智能自动化的生活。
而在我们的日常生活中,单片机凭借着它简洁的操作、低廉的价格和广泛的用途占据着重要的地位。
所以,单片机给了我们想要的生活。
本论文详细介绍了该开发板的开发过程及相关硬件结构和软件设计。
开发板以STC89C52单片机为核心控制器,板上资源主要包括数据采集处理模块、实时时钟模块、通信模块、液晶显示模块、USB转串口模块、8*8点阵模块等。
针对各个硬件模块开发了相应的软件模块,包括各个控制驱动程序、A/D程序,串口通信程序、液晶显示程序,流水灯驱动程序等。
开发板可以作为主控制模块安装于控制系统中执行控制任务,也可以用作实验板,完成单片机各类通用实验,操作简单,控制结果可见,性价比高,可以应用于高校、科研院所的实验室等场合,具有一定的实用价值和现实意义。
设计的基于STC80C52单片机的开发板,该开发板具有成本低、体积小、可靠性高、功能齐全、低功耗设计、操作方便等特点。
关键词:
芯片;开发板;单片机;液晶
Abstract
Intheeraofrapiddevelopmentofmodernelectronicchipmodules,studentsmasterthefunctionsofthepartsofMCUhavethenecessityofthetimes.Withthedevelopmentofoureconomyandthechangeofourview,peoplearewanttoenjoyawonderfullife,whichfullofintelligenceandautomation.Inourdailylife,TheMCUplaysamoreandmoreimportantroleformmanyfieldforitseasilyoperation,widelybeingusedandinexpensive.SoMCUbeingtheproductgivingourlifewelike.Thispaperintroducesthedevelopmentprocessofthedevelopmentboardandrelatedhardwareandsoftwaredesign.DevelopmentboardusingSTC89C52ascorecontroller,resourceson-boardincludedataacquisitionandprocessingmodule,realtimeclockmodule,communicationmodule,LCDmoduleandsteppermotorinterfacemoduleUSB-to-serialmodule,8*8latticemodule.Designsoftwaremodulecorrespondingtoeachhardwaremodule,includingthedriverandcontrolprograms,A/Dprograms,serialcommunicationprograms,liquidcrystaldisplayprograms,watercampdiverandsoon.Developmentboardcanbeusedasthemaincontrolmoduleinstalledinthecontrolsystemtoperformcontroltasks,alsocanbeusedasexperimentalboard,completeallkindsofuniversalexperimentsofMCU,operatedsimply,controlresultscanbeseen,highcostperformance,canbeappliedtouniversities,researchinstitutes,laboratoriesandsoon,hassomepracticalvalueandpracticalsignificance.DesignadevelopmentboardbasedonSTC89C51MCU,theboardhascharacteristicsoflowcost,smallsize,highreliability,full-featured,low-powerdesignandeasytooperate.
Keywords:
Chipmodules;Developmentboard;MCU;LCD
1绪论
1.1单片机的发展历程
单片机大概可以追溯到20世纪70年代。
1970-1974年之间,诞生了第一代4位单片机。
这类单片机已经具有了并行I/O接口及一些常用的A/D和D/A等资源。
这在当时来说是非常强大的,通过灵活的控制能力,使其应用于电视机、收音机和电子玩具。
随后,潘多拉的盒子便打开。
人们认识到单片机的潜在能力和市场价值,各个公司便投入了大量的研究力量。
在1974-1978年,单片机进入8位时代。
这个时期以Intel公司的MCS-48系列单片机最具代表性。
此时的单片机内部集成了更为强大的8位CPU内核、多个并行I/O接口,同时增加了定时器/计数器及小容量的RAM和ROM等。
1978-1983年,Intel公司的MCS-51系列为代表,标志着进入高档8位单片机时代。
这个时期的单片机工作频率、硬件资源和RAM/ROM容量等都有极大的突破,创新地加入了串口通信接口及多级中断处理系统。
我们现在所广泛使用的单片机都仍以该内核为基础,因此,也常称为51系列单片机。
随后,单片机市场便进入百花齐放、百家争鸣时代。
各个厂商不仅在增强单片机的性能,还推出了不同类型的单片机,例如PIC系列单片机、ARM系列单片机、AVR系列单片、C8051F系列单片机,以及Cypress的Psoc系列等。
这便是我们现在看到的单片机领域的纷繁复杂格局[1]。
总的来说,现在的单片机产品线非常丰富,4位、8位、16位单片机乃至32位单片机均有其各自的应用领域。
单片机的技术已经深入人心,现在如果不会单片机,便很难跟上技术的发展。
1.2单片机现在的应用状况
由于单片机的体积小,成本低,运用灵活,性能价格高,易产品化;研究周期短,能方便地组成各种智能化的控制设备和仪器;可靠性性高,抗干扰性强,BUS大多在内部,易采取电磁屏蔽,实用的温度范围宽,在各种恶劣的环境写都能正常的可靠工作;实时控制能力强,实时响应速度快,可直接操作I/O接口;可方便地实现多机和分配控制,提高整个控制系统的效率和可靠性等特点单片机现在研究的成果已经运用到以下领域:
(1)工业测控:
对工业设备(如机床、汽车、高档中西餐厨具、锅炉、供水系统、生产自动化、自动报警系统、卫星信号接收等)进行智能控制,大大的降低了劳动强度和生产成本,提高了产品质量的稳定性。
(2)智能设备:
用单片机改造普通仪器,仪表,读卡器,使其(集测量,处理、控制功能为一体)智能化、微型化。
(3)家用电器:
如高档的洗衣机、空调、电冰箱、微波炉、彩电、DVD、音响、手机、高档电子玩具等,用单片机控制。
(4)商用产品:
如自动售货机、电子收款机、电子秤。
(5)网络与通信的只能接口:
在大型计算机控制系统的网络系统或者通信电路域外围设备的接口电路中,用单片机控制或者管理,可大大的提高系统的运行速度和接口的管理水平。
如图形终端机、传真机、复印机、绘图仪、磁盘/磁带机等。
1.3制作单片机开发板的目的和意义
随着电子技术和通信技术的高速发展,单片机技术已经日益成熟并且也渗透到国名经济的各个领域。
因此单片机是作为一个电子相关专业的大学生必须要学好的科目,而且通过熟练的掌握单片机技术能让人们更好的学习更高级有关电子方面的芯片外部接口扩展的知识和学到更多关于电子行业的高端技术;在制作单片机开发板的时候不仅能够更深入的了解单片机的内部结构和一些芯片使用和工作原理的知识。
在制作单片机开发板的时候不只是仅仅的掌握硬件电路设计的知识,还要了解更多的有关电子方面的一些常用软件,例如;PROTEL软件,制作开发板时能够让我们更熟练的掌握了电路图绘图的方法和PCB的印制方法。
在做好硬件电路完备以后还要对功能模块写程序进行调试,从而才能制作出有用的开发板,在写程序的时候不仅能加强了我们学习C51和汇编语言知识的掌握,更能让我们是一个软硬件兼备的电子人才。
单片机具有成本低、体积小、可靠性高、具有高附加值、通过更改软件就可以改变控制对象等优点,单片机越来越成为电子工程师设计产品时的首选器件之一。
对在校大学生学习单片机意义是很重要的,让大学生的理论知识和动手能力得以结合,因此拥有一块单片机开发板对单片机学习的人们具有着极其重要的意义。
1.4课题研究的内容
单片机学习效果的优劣直接取决于单片机的选择,这次设计制作的开发板采用的是52系列的单片机,C52系列单片机内部具有128字节RAM、5个中断源、32条I/O口线、2个16位定时器、4KB的程序存储器、一个全双工异步串行口。
本开发板选择具有ISP在线编程功能的S51单片机,该单片机不需要烧写器,可在开发板上ISP在线编程,具有广泛的应用前景。
S51单片机除兼容C51单片机外,还具有工作频率0至33MHz的高工作频率;可以满足绝大多数的实际应用开发需求,在开发板上使用十分方便。
本课题设计的S51单片机开发板,具有一般开发板通用结构,并基于硬件进行相关软件设计。
利用程序开发语言开发程序并实现ISP在线下载到单片机,无需配置单独的下载器。
单片机使用ISP在线下载程序,加快了程序设计者调试的进度,使设计者所设计的程序尽快得到验证。
通过对开发板上的模块进行实验,可以提高针对不同硬件进行编程的能力,同时通过实验现象对所用的硬件也有了更深一步的认识。
此次设计的开发板是以单片机位主控制系统的基础上对单片机外部接口进行扩展。
充分利用了单片机的内部资源。
在外部电路模块中,分别扩展了一些常用的功能模块,数码管显示能提供了单片机显示功能;A/D转换模块的设计很好的能进行模数转换,还有串口通信和USB串口通信很好的实现了通信中实现了发送和接收等通信功能,扩展接口巧妙的设计让IO接口省了很多的资源,提供了外部接口扩展的功能,1602模块和12864提供了清晰稳定的显示功能,电源供电以及8*8点阵等功能模块的设计使每个模块尽显其能,充分体现了单片机体积小,功能强大,性价比高等特点。
2硬件电路设计
本章的硬件电路设计是制作单片机开发板的重点,同时也是难点。
在设计的硬件电路中是这次设计开发板的重要组成部分,硬件电路设计的思路将决定了整个开发板的性能和功能,一个好的开发板不仅要求电路足够简单,电路元器件足够少的情况下还能够让开发板能够正常的工作并且不影响到要实现的功能模块,因此这一章节决定了整个开发板能否设计成功的关键环节,在这一章中详细的介绍了硬件电路功能模块的设计基本方法和设计原理,在本章节的学习中我们不仅明白了各种芯片能实现的功能以及各个芯片管脚使用方法,而且还详细的介绍了电路中各种元器件的使用的理论基础。
在本章的学习中让我们更加的深入的掌握了模拟电路和数字电路的知识,更加深入的了解单片机外部接口扩展的知识,同时掌握了各种芯片手册的认识方法,具体的模块设计方法将在本章以下各个小节作具体的介绍。
2.1硬件电路设计图框
在这次开发板设计的思想理念是体积小,设计的电路简单易懂,开发板的功能足够强大,性能足够稳定等特点,在开发板设计了的功能有控制系统、显示功能、通信功能、数码转换功能、发音警报功能以及液晶显示功能、带有遥控技术的红外发送和接收功能、弱电控制强电的功能、显示日期的实时时钟等功能。
有了这些功能使得单片机的功能更加强大,大大的提高了单片机的利用率,使得使用者能够利用者开发板研究或者学习更多的知识,做更多的实验。
总系统控制总体硬件结构主要包括:
C51单片机主控制器模块、A/D电路模块、串口通信模块、实时时钟模块、温度传感模块、I2C总线模块、数码管显示模块、1602模块、12864显示模块、8x8点阵显示模块、流水灯显示模块、蜂鸣器模块、继电器模块、红外接收和发射模块、扩展接口模块、电源供电模块、USB串口通信模块【5】,硬件总电路图设计图框如图2-1所示:
其他模块
图2-1硬件电路设计方框图
2.2C51单片机主控制模块
C51单片机最小系统包括:
MCU、复位电路、晶振电路。
其原理图如下图2-2所示:
图2-2单片机主控制模块电路原理图
单片机复位一般有两种形式;分别是上电自动复位和按键手动复位,次开发板采用的是上电及按键复位,在上图中C3和R2组成了上电自动复位电路,其工作原理是利用电容的充电复位的,由于电容的惰性,在上电瞬间RESET引脚的电位和VCC是相同的,随着电容的从点电业增加,RESET电位逐渐下降,RESET是低电平有效,从而达到了复位的目的,加上开关K2后变成了上电及按键复位,在没有按键按下的时候复位电路和上电复位时一样的,当有按键按下的时候电流直接通过按键进入RESTE引脚,由于VCC电位比RESET高,所以达到了复位的效果[4]。
在这51系列的单片机内部有一个构成振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是次放大器的输入端和输出端,次两个引脚连接晶振就构成了稳定的自激振荡器,其发出的脉冲直接送入内部的时钟电路,晶振的功能是它的抖动周期决定了单片机的工作周期系统的周期,这个开发板选用的晶振的是12MHZ是1us;在电路中C1,、C2、C3电容起到滤波的作用。
R1到R10,R29到R30,R17,R18,R23,R27都是上拉电阻,其目的是当进入单片机的信号过于太小的时候通过电源和上拉电阻的作用能增强电信号的作用,在单片机的I/O接口中使用到的接口均可以加上上拉电阻达到这个目的。
2.3矩阵键盘模块
在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式,如图2-3所示:
图2-3矩阵键盘电路原理图
在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。
这样做很有好处,大家看下面的电路图,一个并行口可以构成3*3=9个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区别就越明显。
比如再多加一条线就可以构成12键的键盘,而直接用端口线则只能多出一个键(9键)。
由此可见,在需要的按键数量比较多时,采用矩阵法来连接键盘是非常合理的。
矩阵式结构的键盘显然比独立式键盘复杂一些,识别也要复杂一些,在上图中,列线直接与三个I/O口相连,并将行线所接的单片机4个I/O口作为输出端,而列线所接的I/O口则作为输入端。
这样,当按键没有被按下时,所有的输出端都是高电平,代表无键按下,行线输出是低电平;一旦有键按下,则输入线就会被拉低,这样,通过读入输入线的状态就可得知是否有键按下了,具体的识别方法有查询扫描和中断扫描。
2.4A/D电路模块
aADC0804的简介
A/D转换在单片机接口中应用广泛,串行A/D转换器具有功耗低、性价比较高、芯片引脚少等特点。
ADC0804是NationalSemiconductor公司生产的具有Microwire/Plus串行接口的20个引脚具有8位CMOS连续近似的A/D转换器,通过引脚连线与单片机连接,适宜在袖珍式智能仪器中使用。
主要性能指标有:
功耗低,只有15mW;8位分辨率,高阻抗输出,逐次逼近型,基准电压为5V;其芯片图如图2-4所示:
图2-4AD0804芯片图
各引脚说明如下:
引脚CS:
ChipSelect,与RD、WR接脚的输入电压高低一起判断读取或写入与否,当其为低位准(low)时会active。
引脚RD:
Read。
当CS、RD皆为低位准(low)时,ADC0804会将转换后的数字讯号经由DB7~DB0输出至其它处理单元。
引脚WR:
启动转换的控制讯号。
当CS、WR皆为低位准(low)时ADC0804做清除的动作,系统重置。
当WR由0→1且CS=0时,ADC0804会开始转换信号,此时INTR设定为高位准。
引脚CLK、IN、CLKR:
频率输入/输出。
频率输入可连接处理单元的讯号频率范围为100kHz至800kHz。
而频率输出频率最大值无法大于640KHz,一般可选用外部或内部来提供频率。
若在CLKR及CLKIN加上电阻及电容,则可产生ADC工作所需的时序,其频率约为:
引脚INTR:
中断请求。
转换期间为高位准,等到转换完毕时INTR会变为低位准告知其它的处理单元已转换完成,可读取数字数据。
引脚VIN(+)和引脚VIN(-)):
差动模拟讯号的输入端。
输入电压VIN=VIN(+)-VIN(-),通常使用单端输入,而将VIN(-)接地。
引脚A、GND:
模拟电压的接地端[1]。
b硬件电路的实现
A/D电路模块的原理图如图2-5所示:
图2-5A/D电路原理图
ADC0804的CS、RD、WR(引脚1、2、3):
是数字控制输入端,满足标准TTL逻辑电平。
其中CS和WR用来控制A/D转换的启动信号,一般情况下CS信号是低电平状态,将WR引脚由高电平变成低电平,在经过至少大于100ns的延时后,再将WR有低电平变高电平,即启动了一次AD转换;在芯片采样结束以后CS信号变低电平的前提下,将RD引脚由高电平拉成低电平后,经过大约至少大约200ns的延时以后即可以从DB引脚读出采样的结果,因此分别与单片机的P26、P36、接口相连,由软件来实现。
RD与P37相连。
CS、RD用来读A/D转换的结果,当它们同时为低电平时,输出数据锁存器DB0~DB7各端上出现8位并行二进制数码。
CLKI和CLKR:
ADC0804片内有自带有时钟电路,只需要在外部“CLKI”和“CLKR”两端外接电阻电容各一个即可产生A/D转换所需的时钟,他们的振荡频率是fCLK≈1/1.1RC。
典型应用参数为R19=10KΩ,C9=150PF,fCLK≈640KHZ,转换的速度为100μs。
如果用外部时钟,则外部的fCLK可以从CLKI端进入,此时不需要接电阻R19和电容C9。
允许时钟频率大概范围为100KHZ~1460KHZ。
INTR作为转换结束后信号的输出端,输出跳转是低电平表示本这次转换完成了,因此可用作微处理器的中断或查询信号。
若将CS和引脚WR与引脚INTR相连,则ADC0804所处于的是自动循环转换状态。
CS=0时,可以进行A/D转换。
WR由低变高时A/D转换就开始,8位逐次比较所需8×8=64个时钟周期,再加上控制逻辑操作,转换一次需要66~73个时钟周期。
在运用fCLK=640KHZ时,转换的时间大约为103μs~114μs。
当fCLK已经超过640KHZ时,转换立即精度下降,超过了极限值1460KHZ时就不能正常工作,但是这个开发板设计的是次引脚与单片机的外部中断引脚INTR相连接,当J9外部电路有中断信号进入时,INTR自动变成高电平,当中断结束后INTR自动转换成低电平,有软件直接控制。
VIN+端口芯片的输入口相当于,当光热敏接口上的光敏电阻有反应时会通过J9的输出接口传送到ADC0804,RZ2起到了调节电流大小的作用[5]。
在A/D转换电路中有一个转换公式,对于任何一个A/D采样器而言,其转换公式如下:
其中,
:
输入ADC的模拟电压值。
Dsample:
ADC转换后的二进制值。
本试验的ADC0804为八位。
Dmax:
ADC能够表示的刻度总数。
ADC0804为八位ADC,因此
Vref:
ADC参考电压值,本试验ADC0804的Vref被设置为5V.
因此,对于本试验,转换公式为:
通过测量到一些参数就可以求解出另一个未知量。
2.5通信模块
2.5.1串口通信模块
51单片机内部有一个全双工串行接口,串行通信是指数据一位一位地按顺序传送的通信方式,其突出优点是只需一根传输线,可大大降低硬件成本,适合远距离通信。
其缺点是传输速度较低。
电路原理图如图2-6所示:
图2.6串口通信电路原理图
在串口通信中RS232(即是DB9)是一种接口,就是通常所说的串口,RS232接口上通信时要12V的电压才能识别,也高是相对高低电平为12V和0V,但是51单片机的高低电平为5V和0V,2者电平不一样没法通信,那中间就需要一个电平转换芯片来当翻译,次开发板采用了MAX232芯片来实现翻译的功能。
在与RS232连接的中间加上两个电阻R42和R43的作用是因为在通信中MX232总是发热,并且热度很高,接上这连个电阻以后就使得通信更加稳定,芯片不会因为发热太高而损坏,即保护了芯片有使得通信更加稳定,
在MAX232芯片上,1、2、3、4、6脚和4只电容C5,C6,C7,C8构成电源。
功能是产生+12v和-12v两个电源,提供给DB9串口电平的需要;13脚、12脚、11脚、14脚为第一数据通道,8脚、9脚、10脚、7脚为第二数据通道;TTL/CMOS数据从11引脚、10引脚输入转换成RS-232数据从14脚、7脚送到电脑DB9插头;DB9插头的数据从13引脚、8引脚输入转换成TTL/CMOS数据后从12引脚、9引脚输出;15脚、16脚VCC是供电作用。
在图中的DB9是属于RS-232型的芯片,在硬件电路设计时用到了管脚2(接收数据RXD)和管脚3(发送数据TXD),管脚5(信号地),因此数据的接收端管脚2应该与MAX232的数据发送端相连,管脚3数据的发送端应该与MAX232的数据接收端连接,管脚5接地。
RXD和TXD分别和单片机的读和写端口相连。
发光二极管D4和D5分别和单片机的发送和接收端口相接,当单片机在执行写发送功能的时候TXD端口是低电平,此时D4发光,发送完毕后TXD变高电平D4熄灭,当单片机执行接收功能时候RXD是低电平,D5发光,接收完成以后RXD自动变高电平D5熄灭,因此D4和D5起到的是指示的作用;跳冒J11和J12把MAX232和单片机连接起来[2]。
2.5.2USB转串口模块
随着电子技术的不断发展串口通信中的RS232接口作为标准的外设广泛用于单片机和嵌入式系统;USB技术更成为了不仅是世界上计算机与外设备之间的连接标准,也是外设备与外设备之间普遍采用的连接标准,其硬件电路原理图如图2-7所示:
图2-7USB转串口模块电路原理图
芯片PL2303HX内置了USB功能控制器、USB收发器、振荡器和带有全部调制信号的UART,只需外接几只电容就可以实现USB信号与串行通信模块的RS232信号转换。
因此PL2303只需一个12MHz的外部晶振为自己提供时钟,外部并联两个匹配起振电容C11,C17。
为了防止高速信号端口附近产生反射现象,需要在B型USB端口引脚DM和DP上分别接上一个阻值为27欧左右的终端匹配电阻R24,R40。
为了与串行通信模块形成USB串行通信功能,PL2303HX芯片的发送引脚TXD和接收引脚RXD与J11、J12相接;引脚VDD-325是
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 学习 设计