ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:439.27KB ,
资源ID:11336613      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11336613.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(《微机原理及应用》课程自主学习报告.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

《微机原理及应用》课程自主学习报告.docx

1、微机原理及应用课程自主学习报告微机原理及应用课程自主学习报告一、单片机与D/A转换器组成波形发生器单片机处理的是数字量。然而,在单片机的实时控制和智能仪表等应用系统中,被控制量或被测对象的有关参量往往是一些连续变化的模拟量,如温度、压力、流量等物理量。这些模拟量必须转化成数字量后才能输入到计算机进行处理。计算机处理的结果也常常需要转化成模拟信号,驱动相应的执行机构,实现对被控对象的控制。如果输入是非电量的模拟信号,还需通过传感器转换为电信号并加以放大。这时就需要解决单片机的D/A、A/D的接口技术问题。本次,就D/A转换器原理及简单应用进行了学习。将数字量转换成模拟量的过程称为数/模转换(Di

2、git to Analog,D/A),实现D/A转换的设备称为D/A转换器或DAC。1.1 D/A转换器的主要技术指标(1) 分辨率分辨率表示对输入的最小数字量信号的分辨能力,即当输入数字量最低位(LSB)发生一次变化时,所对应输出模拟量的变化量。它与输入数字量的位数有关。通常定义刻度值与之比。例如,如果满量程为5V,设8位D/A转换,分辨率为5/=19.5mV,即二进制变化一位可引起模拟电压变化19.5mV。位数越多分辨率就越高。分辨率也可用百分比表示,如8位DAC的百分比分辨率为0.4%。(2) 建立时间建立时间是描述转换速度快慢的一个重要参数,是D/A转换器输入数字量为满刻度值(各二进制

3、各位全为1)时,从输入信号到模拟量电压输出达到满刻度值或满刻度值的某一百分比(如99%)所需的时间(也可表述为:从输入数字量到转换结束,输出达到最终值并稳定(终值误差1/2LSB)所需的时间。电流型快(几百ns几s),电压型慢。例:DAC0808建立时间约150ns,DAC0832为1us。),也可称之为D/A转换速度。(3) 转换精度精度参数用于描述D/A转换的精度程度,一般用误差大小表示。通常以满刻度电压(满量程电压)VFS的百分数形式给出。例如,精度为0.1%指的是最大误差为VFS的0.1%,若VFS为10V,则最大误差为10mV。精度不等于分辨率。(4) 线性度 线性度(也称非线性误差

4、)是实际转换特性曲线与理想直线特性之间的最大偏差。常以相对于满量程的百分数表示。如是指实际输出值与理论值之差在满刻度的以内。1.2 典型D/A转换芯片DAC0832(1) DAC0832简介DAC0832,位D/A转换器,片内有输入数据寄存器,可直接与单片机接口。以电流形式输出,可外接运算放大器。属于该系列的芯片还有DAC0830、 DAC0831,它们可以相互代换。DAC0832主要特性: 分辨率位; 电流输出,稳定时间为S; 输出电流线性度可在满量程下调节; 可双缓冲输入、单缓冲输入或直接数字输入; 逻辑电平输入与TTL电平兼容; 单一电源供电(5V15V); 低功耗,20m。 (2) D

5、AC0832的逻辑结构逻辑功能:(3) DAC0832应用单极性电压输出由运算放大器进行电流到的电压转换,使用内部反馈电阻。输出电压值VOUT和输入数字量D的关系:VOUT = VREF D/256D = 0255, VOUT = 0 VREF 255/256VREF = 5V, VOUT = 0 +(255/256)VVREF = +5V, VOUT = 0 (255/256)V双极性输出 如果实际应用系统中要求输出模拟电压为双极性,则需用转换电路实现。 其中 R2=R3=2R1 VOUT= 2VREFD/256 VREF= (2D/2561)VREF D = 0, VOUT= VREF;

6、D = 128, VOUT= 0; D = 255, VOUT= (2255/2561)VREF= (254/255)VREF 即:输入数字为0255时,输出电压在 VREF + VREF之间变化。 程控电压放大器 1.3 DAC8080原理及应用 DAC0808引脚功能DAC0808是8位数模转换集成芯片,电流输出,稳定时间为150ns,驱动电压5V,33mW。DAC0808可以直接和TTL,DTL和CMOS逻辑电平相兼容。引脚功能A1A8:8位并行数据输入端(A1为最高位,A8为最低位)VREF():正向参考电压(需要加电阻)VREF():负向参考电压,接地IOUT:电流输出端VEE:负电

7、压输入端COMP:compensation(补偿),补偿端,与VEE之间接电容(R14=5k时,(R14为14引脚的外接电阻),一般为0.1uF,电容必须随着R14的增加而适当增加)GND:接地端,VCC:电源端,在proteus中都已隐藏。 DAC0808典型电路如下图所示,VEE接-5V电压,COMP端与VEE之间接0.1uF电容,VREF(+)通过5K电阻接+5V电源,VREF(-)接地。输出端IOUT连接运算放大器反向输入端。运算放大器同相输入端接地。方形波的产生:Proteus仿真运行后示波器界面:C程序如下:#include void Delay10ms(void) /误差 0us

8、 unsigned char a,b,c。 for(c=1。c0。c-) for(b=38。b0。b-) for(a=130。a0。a-)。void main(void) while(1) P2=0x00。 Delay10ms()。 P2=0xff。 Delay10ms()。 二、单片机与DS18B20接口2.1单总线(1-Wire)简介1-Wire是美国Dallas公司的一项专有技术,它使用一根导线进行信号双向传输,具有接口简单、容易扩展等优点。所有的1-Wir总线器件都具有一个共同的特征;无论是芯片内还是iButton内,在出厂时每个器件都有一个与其它任何器件互不重复的固定的序列号。也就是

9、说,每一个器件都是唯一的。一旦器件的序列号已知,通过这个序列号,任意一个器件都可以从众多连到同1-Wire总线的器件中被选出用于通信。2.2 DS18B20简介DS18B20是美国Dallas公司推出的数字温度传感器。它将温度传感器、数字转换电路集成到了一起,外形如同一只三极管。2.2.1 DS18B20的主要特性1)适合电压范围宽:3.05.5V,在寄生电源方式下可由数据线供电。2)独特的单线借口方式:DS18B20与微处理器连接时仅需一条信号线即可实现微处理器与DS18B20的双向通信。3)测温范围:-55+125,在-10+85时精度为0.5.4)可实现912位分辨率的编程,对应可分辨温

10、度分别为0.5、0.25、0.125和0.0625,可实现高精度测温。在9位分辨率时最多在93.75ms内把温度值转化成数字,在12位分辨率时最多在750ms内把温度值转化成数字。5)支持多点组网功能,多个DS18B20可以并联在一条DQ线上,实现“一线制”单主机多主机分布式温度采集系统,DS18B20依靠各自的序列号采用分时方式与主控器点对点通讯。6) 负压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。2.2.2 DS18B20的封装和引脚 引脚功能定义如下: DQ:数据输入输出,可直接与单片机的I/O口相连。 :+5V电源电压。 GND:电源地。2.2.3 DS18B20工

11、作原理 1)测温原理图:图中低温度系数晶振的震荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1.高温度系数晶振随温度变化其震荡率明显改变,所产生的的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在-55所对应的的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置值将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2技术到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。图3中的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的

12、预置值。2)操作流程1、复位2、存在脉冲3、控制器发送ROM指令4、控制器发送存储器操作指令5、执行或数据读写复位时序图读时序图写时序图2.2.4 DS18B20的应用在PROTEUS仿真软件中实现单片机和DS18B20的接口硬件图:C源程序:#includereg51.h#includeintrins.h#define uchar unsigned char#define uint unsigned int#define out P0sbit smg1=out4。sbit smg2=out5。sbit DQ=P37。void delay5(uchar)。void init_ds18b20(v

13、oid)。uchar readbyte(void)。void writebyte(uchar)。uchar retemp(void)。void main(void) /主函数uchar i,temp。uchar j。 /delay5循环次数控制变量,用于较长时延for(j=0。j10。j+)delay5(100)。while(1)temp=retemp()。for(i=0。i10。i+) /连续扫描数码管10次out=(temp/10)&0x0f。smg1=0。smg2=1。for(j=0。j10。j+) /延时5mSdelay5(100)。out=(temp%10)&0x0f。smg1=1。

14、smg2=0。for(j=0。j0。i-)DQ=0。delay5(1)。DQ=1。 /15us内拉释放总线date=1。if(DQ)date|=0x80。delay5(11)。return(date)。void writebyte(uchar dat) /函数:写1字节uchar i=0。for(i=8。i0。i-)DQ=0。DQ=dat&0x01。 /写1,在15us内拉低delay5(12)。 /写0,拉低60usDQ=1。dat=1。delay5(5)。uchar retemp(void) /函数:读取温度uchar a,b,tt。uint t。init_ds18b20()。writeb

15、yte(0xCC)。writebyte(0x44)。init_ds18b20()。writebyte(0xCC)。writebyte(0xBE)。a=readbyte()。b=readbyte()。t=b。t=8。t=t|a。tt=t*0.0625。return(tt)。三、心得与反思 首先,本人觉得单片机原理及其应用这门课程有点难,专业术语太多了,看起来、听起来都很陌生,不太容易理解。但慢慢发现这门课非常有趣,实用性非常强,我认为这门课和C语言程序设计是所学课程中最具有实用价值的课程。老师上课也挺好的,上课时可根据李老师图文并茂的PPT上机实践,但是不同人的理解能力各不相同,老师讲的理论知识我总是稀里糊涂的,一讲到某个知识点我就会反问自己“为什么?”,虽然老师解释了,但是还是不太懂 老师是不是可以用更加通俗易懂的语言文字来教案呢?单片机的学习其实是非常有意思的,我感觉课时安排还是比较少,单片机的概念刚建立起课程就结束了,实验课也就只有几次,有点遗憾。这也体现了大学学习的真谛:自主学习为主,老师传道授业解惑为辅!“书读百遍,其义自见”,平时还是应该多看看单片机原理书,扫扫冒,书看的多了,自然而然就慢慢理解了。最后留下一句话勉励自己:越有差距,越要努力;越有困惑,越得看书!参考文献单片机原理与应用及C51编程技术高雪芹 机械工业出版社 上课用教材及PPT

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1