模电课程设计心得体会_运算电路模电课程设计_模电课程设计心得体会
本文关键词:模电课程设计心得,由笔耕文化传播整理发布。
模电课程设计心得体会
第2章 整体方案设计
2.1数据处理流程分析
数据处理流程分析如图2-1所示。
图2-1
2.2 整体方案
2.2.1 方案一
如图2-2 用组合逻辑电路来实现。
设计原理
此电路通过LM35采集外界温度,10mV/ ,采集的数据通过TL084进行两倍的放大,以来适应ADC0804的转换。ADC0804将接收到的模拟数据用逐次逼近的方法转换成数字量,但此时的数据量是二进制码,不能和译码电路的4511相吻合,于是我们将二进制进一步的转换成BCD码。转化的方案是将0~99以十六进制码的形式写入EEPROM,,通过ADC0804的二进制量来进行寻址,如果
图2-2
二进制码为0010 0010B,转换成十进制就是34D,我们在EEPROM的地址为0010 0010B的位置存储0x34,这样EEPROM的输出将是0011 1000B,前面的四位给译码显示电路的高位刚好是3的BCD码,后面的四位给译码显示的低位,刚好是4的BCD码,从而完成了将二进制转换成十进制的任务。同时将转换后的BCD码安高地位传向两片比较芯片7485,用来与温度设置电路设置好的BCD码进行大小的比较,比较后的逻辑通过7400的组合来驱动发光二极管。当温度达到或高于预设温度的时候发光二极管将亮,其余的情况发光二极管熄灭,从而达到报警的效果。
2.2.2 方案二
如图2-3所示用单片机加模数转换的外围电路实现。
图2-3
设计原理
此电路通过LM35采集外界温度,10mV/ ,采集的数据通过TL084进行两倍的放大,以来适应ADC0804的转换。ADC0804将接收到的模拟数据用逐次逼近的方法转换成数字量,数字量通过单片机的P1口传入单片机,S1,S2是用来设置报警温度的。S1设置高位,循环步进,从0~9循环。S2用来设置地位,和S1一样循环的步进,从0~9循环。单片机把接受的数据来和收到的P1口接到的实时温度数据进行比较,以控制发光二极管的报警。同时单片机把P1口的数据和设置的报警温度数据通过P0口送给四位数码管。程序流程图如图2-4-1、图2-4-2所示。
图2-4-1
图2-4-2
程序代码
#include
#define uint unsigned int
#define uchar unsigned char
uchar code table[]={ //数字0~9
0xc0,0xf9,0xa4,0xb0,
0x99,0x92,0x82,0xf8,
0x80,0x90};
uchar code clc[]={
0x7f,0xbf,0xdf,0xef};
sbit p3_2=P3^2;
sbit p3_6=P3^6;
sbit p3_7=P3^7;
uchar data1,data2,h,l,num,h1,l1,h12,flag;
void init(); //初始函数
void delay(uint z); //延时函数
void main()
{
init();
while(1)
{
P1=0xff;
data1=P1;
data2=data1;
h=data2/10;
l=data2%10;
h12=h1*10+l1;
if(data2>=h12)
{
flag=1;
}
else
{
flag=0;
}
}
}
void init() //初始函数
{
TMOD=0x01;//设置计数器工作方式
TH0=(65536-5000)/256;//装初值
TL0=(65536-5000)%256;
EA=1;//开总的中断
IE0=0;
EX0=1;//开外部中断0
PT0=1;//设置外部0的中断为高优先级
IT0=1;//下降沿有效
ET0=1;//开计数器0的中断
TR0=1;//启动计数器0
h=0;
l=0;
P0=0;
P2=0xf8;
num=0;
h1=2;
l1=0;。
编辑提醒:请注意查看“模电课程设计心得体会”一文是否有分页内容。
本文关键词:模电课程设计心得,由笔耕文化传播整理发布。
本文编号:79847
本文链接:https://www.wllwen.com/wenshubaike/kcsz/79847.html