版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、电子科技大学实验报告一、实验室名称:电子技术综合实验室二、实验项目名称: 现代电子技术综合实验三、实验学时:40四、实验目的与任务:1、熟悉系统设计与实现原理2、掌握 KEIL C51的基本使用方法3、熟悉 SMART SOPC 实验箱的应用4、连接电路,编程调试,实现各部分的功能5、完成系统软件的编写与调试五、实验器材1、PC 机一台2、示波器、 SMART SOPC实验箱一套六、实验原理、步骤及内容(一)试验要求1、程序开始后:当只有第1 个发光二极管亮时,同时第1 个数码管显示数字1,其余显示” -”;持续秒之后,只有第2 个发光二极管亮,同时第2 个数码管显示数字2,其余显示” -”
2、;再过秒,只有第3 个发光二极管亮,同时第3 个数码管显示数字3,其余显示”-” ; ;间隔秒后,只有第8 个发光二极管亮,同时第8 个数码管显示数字8,其余显示” -” 。此后进入循环状态。循环过程中,按按键进入任务2。2、停止任务 1 中发光二极管显示,数码管的第1、2 位显示学号最后二位,第4、5 位显示电机转速 (初始转速 30)。第 7、 8 位实现秒表功能,从开始倒计时,计时到后程序自动进入任务 3.3、数码管的第 1、2 位显示电机转速,第3、4 、 5、6 位显示” -”, 第 7、8 位显示二位电压值( ),增减调节电压值,电机转速(初始转速 30)能够跟随电压增减以10 倍
3、变化量( 024),进行加减速变化。按按键进入任务 1。(二)实验内容1、硬件设计PDIP40 封装 80C51 引脚布局图SmartSOPC相配套的基于8051单片机的 Quick51 核心板2、各部分硬件原理数码管动态扫描原理:动态显示的特点是将所有位数码管的段选线并联在一起,由位选线控制是哪一位数码管有效。选亮数码管采用动态扫描显示。所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,利用发光管的余辉和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示。动态显示的亮度比静态显示要差一些,所以在选择限流电阻时应略小于静态显示电路中的。原理图(一)蜂鸣器工作原理:蜂鸣器是一种一体化
4、结构的电子讯响器,本文介绍如何用单片机驱动蜂鸣器,他广泛应用于计算机、打印机、复印机、报警器、电话机等电子产品中作发声器件。蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。电磁式蜂鸣器由振荡器、电磁线圈、磁铁、振动膜片及外壳等组成。接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场,振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。多谐振荡器由晶体管或集成电路构成,当接通电源后(15V 直流工作电压),多谐振荡器起振 ,输出的音频信号,阻抗匹配器推动压电蜂鸣片发声。原理图(二)I 2C 工作原理
5、:在 I2C 总线上每传输一位数据,都有一个时钟脉冲相对应,其逻辑“ 0”和“ 1”的信号电平取决于该点的正端电源 VDD 的电压。 I2C 总线数据传输时,在时钟线高电平期间数据线上必须保持有稳定的逻辑电平状态,高电平为数据1,低电平为数据 0。只有在时钟线为低电平时,才允许数据线上的电平变化。I2C 总线数据传送时有两种时序状态被分别定义为起始信号和终止信号。起始信号:在时钟线保持高电平期间,数据线在由高电平到低电平变化时启动I2C 总线,为 I2C 总线的起始信号。终止信号: 在时钟线保持高电平期间, 数据线在由低电平到高电平变化时将停止I2C 总线的数据传送,为I2C 总线的终止信号。
6、起始信号和终止信号都是由主控制器产生。总线上带有I2C 总线接口的器件很容易检测到这些信号。但是对于不具备这些硬件接口的单片机来说,为了能准确地检测到这些信号,必须保证在总线的一个时钟周期内对数据线至少进行两次采样。原理图(三)LM75 特征及应用:LM75 温度传感器包含一个模数转换器和一个数字过热检测器。主机可通过器件的I2C接口读取温度数据。 当超出设置的温度门限时漏极开路的过热输出吸收电流。OS 输出具体2 种模式,比较器或中断模式。主机控制报警触触发门限和带回温度,低于带回温度报警条件无效。主机可读写 LM75 的 TOS 和 THYST 寄存器,器件上电时进入比较器模式,默认条件下
7、 TOS=+80 且 THYST=75 。原理图(四)电机驱动原理:步进电机为一四相步进电机,采用单极性直流电源供电。只要对步进电机的各相绕组按合适的时序通电,就能使步进电机步进转动。四相步进电机按照通电顺序的不同,可分为单四拍、双四拍、八拍三种工作方式。单四拍与双四拍的步距角相等,但单四拍的转动力矩小。八拍工作方式的步距角是单四拍与双四拍的一半,因此,八拍工作方式既可以保持较高的转动力矩又可以提高控制精度。原理图(五)3、软件设计(完成程序框图)(三)思考题设定温度的按键改用外部中断模式,电路如何修改(画示意图)?程序如何修改,写出中断服务程序。七、总结及心得体会通过一个星期的学习和实践,
8、我从只能点亮一个LED 灯到可以按照实验要求完成流水灯。在每一个小小的实现项目的完成,感觉自己都在一步一步的成长,虽然有的时候非常烦躁,实验结果老是出不来,而且找不到原因,并且被老师骂的一塌糊涂。但是,我还是坚持下来了。坚持着完成一个个小项目,这样自己的信心也一步一步增加。使得我很快就完成了实验。在此,需要谢谢老师的谆谆教导。八、对本实验过程及方法、手段的改进建议无九、附录综合实验程序:#include #include #include sbit KEY1 = P20;sbit KEY2 = P21;sbit PWM = P26;sbit CS = P35;sbit DAT = P36;sb
9、it CLK = P37;unsigned char KeyScan()unsigned char k = 0;if ( KEY1 = 0 ) k = +;if ( KEY2 = 0 ) k = -;return k;/ 定义显示缓冲区(由定时中断程序自动扫描)unsigned char DispBuf8;unsigned char temp;unsigned char Speed; / 预设的电机转速值,范围20 250bit SWTR;/ 软件定时器运行标志bit SWTF;/ 软件定时器溢出标志unsigned int SWTV;/*函数: T1INTSVC()功能:定时器 T1 的中断
10、服务函数*/void T1INTSVC() interrupt 3code unsigned char com = 0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80;static unsigned char n = 0;static unsigned char t = 0;/ 扫描数码管P0 = 0xFF; / 暂停显示XBYTE0xE800 = DispBufn;/ 更新扫描数据P0 = comn;/ 重新显示n+;n &= 0x07;/ 产生 PWM 方波,驱动电机 t+;if ( t Speed )PWM = 1;elsePWM = 0;/ 模拟一个软件定时
11、器 if ( SWTR )if ( -SWTV = 0 ) SWTF = 1;/*函数: DispClear()功能:清除数码管的所有显示*/void DispClear()unsigned char i;for ( i=0; i8; i+ )DispBufi = 0x00;/*函数: DispChar()功能:在数码管上显示字符参数:x:数码管的坐标位置( 07)c:要显示的字符(仅限16 进制数字和减号)dp:是否显示小数点, 0不显示, 1显示*/void DispChar(unsigned char x, unsigned char c, bit dp)code unsigned ch
12、ar Tab =/ 定义 09AbCdEF 的数码管字型数据0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71;unsigned char t; / 临时变量/ 防止显示位置超出范围x &= 0x07;x = 7 - x;/ 分析字符 c,取得对应的数码管字型数据if ( c = - )t = 0x40;elset = toint(c);/toint() 为库函数,详见if ( t 16 )/ 如果是 16 进制字符t = Tabt;/ 查表,取得数码管字型数据elset = 0x00;
13、/ 如果是其它字符则显示为空白/ 检查是否显示小数点 if ( dp )t |= 0x80;elset &= 0x7F;/ 送到显示缓冲区显示DispBufx = t;/*函数: DispStr()功能:在数码管上显示字符串参数:x:显示的起始位置( 07)*s:要显示的字符串(内容仅限16 进制数字和减号)*/void DispStr(unsigned char x, unsigned char idata *s)unsigned char c;for (;)c = *s+;if ( c = 0 ) break;DispChar(x+,c,0);/*函数: ByteToStr()功能:字节型
14、变量c 转换为十进制字符串*/void ByteToStr(unsigned char idata *s, unsigned char c)code unsigned char Tab = 10,1;unsigned char i;unsigned char t;for ( i=0; i0 时,延时 (t*st=0 时,延时说明:晶振用*/void Delay(unsigned int t)SWTV = t;/ 软件定时器赋初值SWTR = 1; / 启动软件定时器while ( !SWTF ); / 等待溢出SWTR = 0; / 停止软件定时器SWTF = 0; / 清除溢出标志unsig
15、ned char MeasureSpeed()TH0 = TL0 = 0;/ 清除计数器 T0TR0 = 1;/ 启动计数器 T0Delay(2500); / 延时 250ms(因为直流电机转盘上正好有4 个槽)TR0 = 0;/ 停止计数TF0 = 0;/ 清除(可能的)溢出标志return TL0;/ 返回结果(单位:转 / 秒;已知电机转速不会超过100)/*函数: SysInit()功能:系统初始化*/*void SysInit()TMOD &= 0xF0;TMOD |= 0x01; /设置定时器 T0 为 16 位定时器DispInit();/ 数码管扫描显示初始化*/void Sy
16、sInit()unsigned char i;for ( i=0; i8; i+ )DispBufi = 0x00;/ 数码管初始化为全灭Speed = 35;/ 设置电机初始转速SWTR = 0;SWTF = 0;SWTV = 0;TMOD &= 0x0F;TMOD |= 0x20; /设置 T1 为 8 位定时器,自动重装TH1 = TL1 = 0xA4;/ 设置 T1 初值,对应 100sET1 = 1;/ 使能 T1 中断TR1 = 1;/ 启动 T1EA = 1;/ 使能总中断TMOD &= 0xF0;TMOD |= 0x05;DispInit();unsigned char Rea
17、dAdc()unsigned char d;unsigned char n;CS=0;n = 5;while ( -n != 0 );n = 8;dod = 1;if ( DAT ) d+;CLK = 1;CLK = 0;while ( -n != 0 );CS=1;return d;void main()code unsigned char s = ;code unsigned char w = 21;unsigned char i;unsigned char x;unsigned char k;unsigned char spd;unsigned char r3;unsigned char
18、 v;unsigned char SW;unsigned char GW;bit dp;SysInit();dp = 0;/ TMOD &= 0xF0;/ TMOD |= 0x01;for(;)for (;)temp=0x00000001;k = KeyScan();if ( k =+ )break;for ( i=0; i8; i+ )P1=temp;temp=1;k = KeyScan();if ( k =+ )break;for ( x=0; x8; x+ )DispChar(x,-,dp);k = KeyScan();if ( k =+ )break;DispChar(7-i,si,dp);k = KeyScan();if ( k =+ )break;Delay(5000);P1=(temp&0x00000000);SysInit();for(;)for ( x=0; x=0;x-)for(i=9;i=0;i-)spd = MeasureSpeed();SW = spd/10 ;GW = spd%10 ;DispChar(3,GW+ 0,0);DispChar(4,SW+ 0,0);Delay(1000);DispChar(1,x+ 0,1);DispChar(0,i+ 0,0);if(i=0)break;DispChar(1,x+
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年长春中医药大学第二附属医院医护人员招聘笔试参考题库及答案详解
- 2026年柳州市妇幼保健院医护人员招聘笔试备考试题及答案详解
- 2026年襄阳市第一人民医院医护人员招聘笔试参考试题及答案详解
- (2026版)业务招待费用管理制度范本
- 2026年盐城市第四人民医院医护人员招聘笔试参考题库及答案详解
- 2026年西双版纳傣族自治州人民医院医护人员招聘笔试参考试题及答案详解
- 2026年中国银行(河北省分行)人员招聘笔试备考题库及答案详解
- (2026版)诊所消毒隔离管理制度
- 2026年镇江市第四人民医院医护人员招聘笔试备考题库及答案详解
- 2026年莆田市第一医院医护人员招聘笔试备考试题及答案详解
- 产伤性阴道血肿护理课件
- 急性缺血性卒中再灌注治疗指南解读
- 学校财务印章管理办法
- 内蒙古包头市青山区2025年中考二模语文试题(含答案)
- 家电维修行业O2O服务平台建设方案
- 超星尔雅学习通《通识写作怎样进行学术表达(复旦大学)》2025章节测试附答案
- 数字电子技术(第五版) 课件 第5章 时序逻辑电路
- GB 19762-2025离心泵能效限定值及能效等级
- 高尔基课件教学课件
- 有线广播电视机务员技师试卷及答案
- 2023年知识产权检索咨询中心招聘笔试真题
评论
0/150
提交评论