Proteus 8086模拟温度采集 使用LM35温度传感器

一、思路

        使用LM35温度传感器进行温度采集,将采集到的电压值(模拟量)经过ADC0808芯片转换成数字信号经数据总线传入8086的寄存器中。

二、8086接线方式

        8086的接线方式如上图所示。74LS138的八个输出端可以当作使能信号使用,由A5、A6、A7三条地址线决定

三、LM35温度采集

        LM35温度传感器可以将摄氏度温度值转换成电压值。1口为VCC,接入5V电压,3口接地,2口为输出电压,通过下图的接线可以在电压表中得出输出的电压值(2点的电势)。

四、ADC0808模数转换

        模拟量无法通过总线传输,需要把模拟量转换为数字量,此处使用了ADC0808芯片。接线方式如下:

        对接线方式进行解释:IN0-IN7为芯片的8个输入通道,通过ADD A、ADD B、ADD C三个端口的电位决定。此处使用IN7输入通道,因此将IN7与温度采集部分的输出电压(点2)相连,ADD A、ADD B、ADD C三个端口全部接入高电位,即111

         LM传感器的输出公式为V=0.01×T(伏特)。环境温度为29℃时,输出电压为0.29V。即ADC0808的输入电压(模拟信号)为0.29V。要使其输出数字量为温度值,(0.29×100=29)要将VREF(+)设置为2.56V,VREF(-)设置为0V。

        此时,ADC0808的输出公式为:

\large V_{out}=\tfrac{V_{in}-V_{REF(-)}}{V_{REF(+)}-V_{REF(-)}}\times 256=\tfrac{V_{in}-0}{2.56-0}\times 256=100V_{in}

        ADC0808输出的值为采集到的电压的值乘100,最终得出采集到的温度摄氏度值。

        OE为使能。此处使用了IO0(非)为使能信号。

五、汇编语言编码

        要通过汇编语言代码选中ADC0808对应的使能端,将其8位三态锁存缓冲器OUT1-OUT8的值(即输出值)通过IN指令存入8086的寄存器。此处使能端对应的地址是00h。

mov dx,00h;选中 
in al,dx;将输出值存入al寄存器

        此处将ADC0808输出的数据总线连接了数码管,可以发现当温度为29℃时,采集到的电压值为0.29V,输出的数字量为29,在数码管中显示为1DH

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值