单片机实习报告_第1页
单片机实习报告_第2页
单片机实习报告_第3页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、关于单片机应用实习的实习报告一、实习目的本次实习的目的在于加深对 MCS-51单片机的理解,初步掌握单片机应用系 统的设计方法;掌握常用接口芯片的正确使用方法;强化单片机应用电路的设计 与分析能力;提高学生在单片机应用方面的实践技能; 培育学生综合运用理论知 识解决问题的能力,力求实现理论结合实际,学以至用的原则。二、设计题目:单片机数据采集系统设计三、功能描述1 实时采集0-5V的电压信号;2.将采集的0-5V的电压信号实时显示;3可以轮流采集8路通道,或指定通道数据;4.可以设定报警上下限,并报警。四、方案设计4.1系统分析根据系统功能要求,可将系统组成结构分成四大部分。单片机控制中心、键

2、 盘接口。其中,单片机控制中心是核心。MCU艮据按键输入,可切换不同的显示模式或设置不同的参数。数码显示管第 2至4位将实时采集的05V电压,数码 管第1位显示指定通道数。通过按键可切换到设定电压上下限报警的模式。由于我组单片机实验板缺少烽鸣器,因此利用 LED灯来报警。以下是系统组成结构图:图1系统组成结构图五、硬件电路设计5.1单片机最小系统设计最小系统包括 CPU时钟与复位电路,其原理图如下:图2单片机最小系统设计5.2显示电路设计数码管主要是用于数字的显示,图中采用共阴极。电源+5V通过470欧的电阻直接给数码管的7个段位供电,对应了两个接数码管的a,b,c,d,e,f,g 和小数点位

3、p,P1.0,P1.1,P1.2,P1.3接位选码。其原理图如下:LELJVCCfRF1BRP1C、PO.D 丄丄PO丄 -fz r-po.4i-PO.5 10 P0.65COLHl coiii2 coni? com-1CON2AmomQmomo5.3按键电路设计其原理图如下:C1103C2103C31035.4 A/D转换电路设计其原理图如下:OMODEO-PI首图4按键电路设计17I匚 lIS1? 20222P1.6P1.0 2>=1Pl ,2 32PLI 3KiNODI【紺D2N2D3IH3D4IHD5I陥D6IN百D7?r?ADDAADDBADDCALESTAKT1MTOEVre

4、fl;.)>CLKEOC26512 +57165.5电源电路设计单片机工作电压为5V。一般使用USB接 口供电,直接从USB接口获取5V电源。其原理如下图。PWR LED LED R SVCC DSJDVCC JUUSB图6电源电路设计5.6报警电路设计当电压小于下限电压值或大于上限电压值时,蜂鸣器将报警如图所示:IT9BUZZEP.六、软件设计6.1操作功能设计根据系统的功能描述,可以将系统功能大致分成三类:轮流采集8路通道,指定通道显示,设置报警上下限。此系统设有四个数码管,三个按键。利用按键可切换形成多个模式,按键1 将轮流采集8路通道模式与指定通道显示之间相互切换,按键 2将轮流

5、采集8 路通道与设置电压上下限报警模式之间相互切换,按键 3是增加1,可指定显示 18通道,也可利用其来设置上下限电压的大小。模式设计如下:模式1:轮流采集8路通道,此时数码管显示如1.0.00 ,2497, 8497。(此时1、3通道接地,2、8通道接+5V模式2:指定通道显示,按下键1时,模式由轮流采集8路通道变成指定通 道显示,此时数码管初始显示为1.0.00,表示为1通道的电压值;当按下按键3 时,数码管值变为2.4.97,表示2通道的电压值;当再次按下按键 3时,数码 管显示为,表示3通道的电压值。即每按一次键3,通道数即增一,以此 显示指定通道的实时电压。模式3:当在轮流采集8路通

6、道的模式下,按下键2。模式将会自动切换到 设置电压上下限报警模式。此时,初始设置的电压上限为 5V,电压下限为0V, 通过键3可对其修改。6.2程序设计思路此程序所需实现的基本功能主要有:1使数码管显示采集来的实时电压,并 对8个通道的电压实施轮流输出显示;2使用按键操作,将轮流显示的8个通道 的电压切换成按指定通道显示输出;3可通过一功能键切换不同的模式,使系统 可以调节上下限报警电压。4通过一按键可实现对通道与上下限电压的更改,如 加减。本程序主要分为2大块,主程序与子程序。主程序包括八通道循环采集电压 工作方式,模拟量通道输入循环选择,选择通道显示电压工作方式,模拟量通道 输入按键选择等

7、。而子程序则需包括对定时器T0进行初始化程序(定时时间设为5ms即每5ms扫描一次数码管,总共有4位数码管,20ms循环扫描一次), 启动A、D转换程序,数码管显示程序,延时程序等。此程序使用定时器0完成数码管动态扫描,并对按键及串口进行扫描。当扫 描到相应的按键时即执行相应的操作(如当扫描到键1时,就会改变当前的模式, 从轮流采集通道模式转换到指定通道显示电压的模式)。6.3程序流程图数码管输出刷新结束图8程序流程图七、程序调试对程序来说,最重要的就是调试阶段。一段写好的程序当中会出现很多问 题。在单片机数据采集系统设计的程序中,出现了很多问题,有的是语法错误, 以致不能成功编译;有的则是可

8、以成功编译,但是不能达到系统的功能要求。在 单片机的实验学习中,我们做过关于A/D转换的实验。它的功能是可以实现单通 道采集电压。但如何由单通道变成8通道,并且还能够指定通道显示,而且可以 切换模式,对上下限电压进行修改。这就需要对程序的不断调试,其调试过程具 体如下:1、由单通道改至8通道:首先,这其中肯定要用到循环语句。程序中用到了 for循环,k作为循环变量。全局变量 m作为通道,m的值从1至8循环。即 当m大于8时,令m等于1。2、按键按下检测及相关设置:此系统用到了三个按键,如何对按键进行扫描,程序位于void TimerO_ISR() interrupt 1 中,即于定时器TO的中

9、断程序中,每5ms调用一次,检测键盘是否按下,如果按下去延时抖动,然后检测到底 是哪个按键按下,不同的按键有不同的功能。 用“ a+, if(a>=50&&P31=0&&moshi=1)”程序实现延时消抖。然后用if判断语句实现按 键的不同作用。3、数码管刷新显示程序;刷新显示就是根据不同的模式将显示的不同数据放到显示缓冲区中,比如模式1时显示轮流显示采集电压,模式2是显示指定通 道的电压,数码管的第一位要显示通道数,数码管的后三位显示电压值,模式3是显示设置电压上下限报警值,然后由数码管输出程序输出到数码管。4、数码管输出程序;数码管输出程序就是送段选码

10、和位选码的程序,位于 定时器T0的中断程序中。轮流点亮4个数码管,每5ms变换一次,由于速度快, 从而达到点亮每个数码管的作用。八、使用说明8.1功能1. 可以轮流显示8个通的实时采集的电压值;2. 可以指定通道显示电压值;3. 可以设置上下限报警电压。8.2人机接口共有三个按键。分别为键1,键2,键3。总共可以实现3个模式的转换。8.3操作说明1. 通电后,在初始状态下,数码管显示的是轮流显示 8通道电压值。 通过三个按键可以对模式进行切换,以及对其中参数进行修改。2. 按下键1,系统切换到指定通道显示界面,在此基础上按键 3,可以 实现从1通道到8通道任意指定通道显示电压值。再按下键 1,

11、又可返回到 轮流显示8通道电压值。3. 按下键2,系统切换到设置电压上下限报警电压值。在此基础上,按 下键3,可以对上下限电压值进行设置, 每按一下键3,电压值增1,电压值的 范围为05V。当电压值设置好之后,再按下键 2,则重新返回到轮流显示 8 通道电压值。九、心得体会在本次实习中,我通过查阅资料,请教于老师及同学。基本完成了硬件设计、 程序设计、安装调试等环节。但其中有很多问题值得我去思考。1.实习作风不好: 不能积极对待,注意力不够集中;2.实习效率不高:单片机课程功底较差,实 践动手能力不强;3.独立解决问题的能力较差。以为三点都值得我反思,本次 实习揭露了我的不足,希望在以后学生工

12、作中得到改进。十、实验总结本次实习的过程主要可分为三个部分。分别是绘制硬件原理图,编写程序, 系统调试。1. 绘制硬件原理图:这是我们第一次接触到 Protel99电路设计软件,它 与CAD绘制一样,需要有一个熟悉的过程,其中我觉得难点是建元件库。如单片 机与A/D转换部分需要自己绘制,其它部分大多可以在元件库中找到,可直接添 加。其次需注意的地方就是端口一定要与程序一致。2. 编写程序:编写程序是难点。须一层层做起,刚开始的源程序来自A/D转换实验中的单通道采集电压值。 在不断的对程序修改过程中实现 8通道。再添 加按键程序。3. 系统调试;系统调试是最重要的环节,他涉及到程序的各个部分及硬

13、件 端口的接线。冈H开始,我组用SST单片机,由于端口被占,因此无法接按键,程 序虽然能够顺利下载,但是无法对按键进行操作。因此只能换成STC单片机。由 于我组电路板上缺少蜂鸣器,因此改用LED灯实现电压上下限报警。虽然程序不 一定有错。但调试的过程就是程序与硬件相结合的过程。必须相互匹配,才能调 试成功。十一、参考文献1. 张义辉,李家庆,单片机系统综合训练指导书重庆科技学院2. 汪德彪.MCS-51单片机原理及接口技术M.北京电子工业出版社.3. 张毅刚.单片机原理及应用.北京:高等教育出版社,20054. 胡文金.单片机系统实训教程.重庆:重庆大学出版社,20055. 胡文金,钟秉翔.单

14、片机应用技术实训教程M.重庆大学出版社.2005.附录1:电路原理图附录2 :源程序代码#i nclude "reg51.h"#defi ne THCO 0xee#defi ne TLCO 0x0codeun sig nedcharDua n =0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x00;/共阴极数码管-9段码表unsigned char xuan=0,1,10,11,100,101,110,111;un sig ned char Data_Buffer4=0,0,0,0;un sig ned int m=1

15、;un sig ned int moshi=0,ze ngjia=0,shed in g=0,dia ny aze ng=0,sha ngyazhi=5;float AdValue;*/sbit P30=P3A0;sbit P31=P3A1;sbit P32=P3A2; /三个按键位码口定义/*/sbit P34=P3A4;sbit P35=P3A5;sbit P36=P3A6; /四个数码管的位码口定义sbit P37=P3A7;/*/sbit ADWR=PM0;sbit RS=P1A1;sbit CS=P1A2;/ADC0809控制线接通 C51P1 口位码口定义sbit Add 1= P

16、1A3;sbit Add2=P1A4;sbit Add3=P1A5;sbit EOC=P1A6;sbit LED=P1A7;/报警灯void Sysi nit();void AD_Start(void);void LED_Fresh();void delay_ms(unsigned int x);/ 子函数定义void zhu();void xia ny ajiemia n();/*/void mai n()un sig ned int k,i;Sys in it();while(1)/八通道循环采集电压工作方/模拟量通道输入循环选择if(moshi=0)式m=8;for(k=0;k<=

17、7;k+)if(moshi=1)k=0;break; Add 1=xua nk/100;Add2=xua nk%100/10;Add3=xua nk%10;m+;if(m>8)m=1;if(dia ny aze ng=1)dia ny aze ng=O;sha ngyazhi+;if(sha ngyazhi>5)sha ngyazhi=O;zhu();for(i=0;i<40000;i+);else/选择通道显示电压工作方式 m=1;while (1) if(moshi=0) break;Add仁xua nm-1/100;/ 模拟量通道输入按键选择Add2=xua nm-1%

18、100/10;Add3=xua nm-1%10;if(ze ngjia=1)zen gjia=0;m+;if(m>8)m=1;zhu();void TimerO_ISR() in terrupt 1static un sig ned char Bit=O,a=O;THO=THCO;TLO=TLCO;Bit+;if(Bit>=4)Bit=0;P34=0;P35=0;P36=0;P37=0;/ 关位码if(shedi ng=0)if(Bit=O)P2=Duanm|0x80;/ 开断码if(Bit=1)P2=Dua nData_BufferBit|0x80;else if(Bit>

19、1)P2=Dua nData_BufferBit;if(Data_Buffer1>=sha ngyazhi)LED=0;elseLED=1; else if(Bit=1)P2=Duanshangyazhi|0x80;/ 开断码else if(Bit>1)P2=Dua nData_BufferBit;switch(Bit)/ 开位码case 0: P34=1;break;case 1: P35=1;break;case 2: P36=1;break;case 3: P37=1;break;按键按下检测及相关设置if(P30=0|P3 仁=0|P32=0) /a+;if(a>=5 0&&P30=0)a=0;moshi=!moshi;if(a>=50&&P3 仁=0&&m oshi=1)a=0;zen gjia=1;if(a>=5 0&&P32=0)a=0;shed in g

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论