单片机干货,简易数字电压表的设计与制作(C语言版)
电压表的使用十分广泛,传统的模拟电压表反应速度慢,读数麻烦并且误差较大,现在已经广泛使用数字电压表。本文介绍一款简易数字电压表的设计制作过程,基于入门级51单片机——
STC89C52RC ,以ADC0831 为模数转换电路实现被测电压的数据采样,当然还要有显示电路,由四位数码管构成,该数字电压表能够测量0-5V之间的直流电压值。原理图大体分为四个部分,左上角的是单片机最小系统,这个就无须赘述了,相信任何一本单片机教程都会讲到;左下角的是供电部分,也很简单,如果取电脑的USB电源供电,那几个滤波电容式可以省去不要;右上角的是显示电路,典型的数码管驱动电路,下面四个三极管做位选通,段码管脚接单片机P2端口;右下角就是ADC0831电路,通过CLK和SDO与单片机相连,一个时钟信号,一个串行数据。也许需要多啰嗦几句的,就是ADC0831了。
ADC0831
照顾一下英文不太好的同学,图上面英文字的大概意思是:ADC0831 单路差分输入 双列直插封装。典型电路如下,
ADC0831一共八个脚,VCC和GND不用说,Vref作为参考电压接VCC,待测模拟信号以差动形式输入,可将其中一根线直接接地,另一个线做输入。转换后的数字信号由SDO串行输出,CLK提供时序。CS片选。硬件还是很简单的吧。ADC0831与单片机的通信依据下面这张时序图。
读懂时序图
拿到一张时序图,首先找片选信号,这里也就是CS, 片选信号一般都是低电平有效,当CS拉低后,芯片才开始工作。程序要严格按照时序图编写,这里在拉低CS前应先置低CLK。也就是先置低CLK,nop一会;然后拉低CS片选,nop一会;然后置高CLK,nop一会,然后再置低CLK,nop一会,这样才把CLK第一个脉冲走完,注意这时还没开始读数据,数据是从CLK第二个脉冲信号下降沿开始一个位(bit)一个位读取的。函数如下。
时序图常会见到MSB和LSB,分别是Most Significant Bit(最高有效位)和Least Significant Bit(最低有效位)的缩写。ADC0831的时序图先出现MSB,表示随着时钟脉冲先读出来的是字节的高位。
ADC0831读取的模数转换结果是一个字节大小(Byte)的无符号数,这个数的范围是0~255。对应的电压信号范围是0~5V。那么这里就需要有一个映射函数了,也就是从adc0831的返回值映射到对应的电压。这个函数起名叫map()再好不过了。
下面这幅图可以直观的阐述其转换原理,原理非常简单,就是等比较变换:
转换关系为t = adv/51,那么乘以100是什么意思呢?是为了扩大100倍,去掉小数点,方便数码管显示函数的编写。诺,下面就讲到了。
显示函数就很简单了,完全根据数码管动态显示原理,简单调试即可完成。注意函数参数是一个u16(unsigned int)整型数,这也是前面map函数里需要乘100的原因,单片机处理整数的速度要比处理浮点数快得多,浮点数能不用就不用。在显示函数里,在正确的位置把小数点点亮即可。代码如下:
下面是延时函数,
延时函数:
主函数:
全局定义:
作品效果图:
元器件装配图
元器件清单
名称 标号 标称值 封装 数量 电阻R1、R2、R3、R4、R5、R6、R7、R8200直插式8电阻R9、R10、R11、R12、R201K直插式5三极管Q1、Q2、Q3、Q49012直插式4单片机U1STC89C52直插式1IC锁座TEXTQOL40脚直插式1发光二极管D3绿φ5直插式1电容C122uF直插式1电容C2470uF直插式1电容C3、C4、C50.1uF直插式3电容C6、C730pF直插式2接线端子排P22脚直插式1USB端子P16脚直插式1晶振Y112MHz直插式1ICU2ADC0831直插式1IC插座8脚直插式1数码管U34联排(共阳)直插式1二极管D1、D21N4148直插式1按键RESET4脚直插式1消毒柜、吸油烟机控制电路简介
一、消毒柜电路简介
电子消毒柜电路由电源电路、控制电路和加热电路组成。下图所示为电子消毒柜电路原理参考图。图中,电源电路主要由电源开关S1、消毒定时开关S2、 启动按钮SB1、停止按钮SB2等组成;加热电路主要由加热器EH、臭氧发生器Q3、加热温控器T1等组成;控制电路主要由继电器K、保温温控器T2、保温开关S3等组成。
1、接通电源开关S1,将温控器选择至需要消毒的挡位,按下启动按钮SB1,继电器K得电吸合,常开触头K2闭合,加热指示灯亮,加热器EH通电加热。
2、按下消毒定时开关S2,选择合适的时间,S2闭合。臭氧发生器得电产生臭氧对柜内食具进行消毒。
3、当消毒时间达到定时时间,S2断开,臭氧发生器停止工作,消毒结束。
4、消毒结束后,消毒柜内加热器继续加热对食具进行烘干。当柜内温度达到 120℃左右时,温控器T1动作,切断继电器K供电电源,继电器常开触头K1、K2断 开,加热器停止加热,加热指示灯熄灭。
5、加热后进行保温,保温电路由S3、T2及K3组成,当消毒结束后,保温开关S3接通,市电经S3、T2及K3加至EH一端,另一端直接接零线形成回路,保温指示灯亮。
6、随后保温加热器EH加热,当柜内温度上升到60T时,T2动作断开电路,EH 停止加热。
7、当柜内温度低于60℃时,T2又闭合,接通电路,EH又得电加热,如此反复, 使柜内温度始终保持在60℃左右。
二、吸油烟机电路简介
吸油烟机主要由电源电路、按键接口电路、单片机控制电路、开关控制电路等 组成。
1.电源电路
下图所示为吸油烟机电源电路原理图。
220V市电经过变压器降压成为12V交流电,再经过桥式整流器整流,经过电容C4滤波后供给7805,得到稳定的5V电压, 此电压用以供给单片机及整个电路稳定的直流电压。
2. 按键接口电路
下图所示为吸油烟机按键接口电路原理图。
1)未按下按键时,P10 -P15口输入均为同一信号,同时经八输入与非门及反相器,输出一高电平到单片机AT89C51的INT1引脚,此时不申请中断。
2)有键按下时,低电平则通过按键输入到P10 -P15的某一口,同时经八输入与非门输入到INT1引脚,从而使INT1有效,向单片机AT85C51申请中断,AT89C51响应后,立即转至中断服务程序,査出键号,做相应处理。
3. 单片机控制电路
下图所示为吸油烟机单片机控制电路原理图。该电路由单片机时钟电路和单片 机复位电路组成。其中,单片机时钟电路是由晶振电容构成的简单石英晶体自激振荡电路,用于提供单片机工作时使用到的内部时钟信号。
单片机U1的晶振振荡频率直接影响单片机的处理速度,频率越大处理速度越快。复位电路的极性电容的大小直接影响单片机的复位时间。
4.开关控制电路
下图所示为吸油烟机开关控制电路原理图。单片机通过P0.0外接一反相器控 制固态继电器发光二极管的通断,来控制电动机的起停。
1)当P0.0输出低电平时,固态继电器SSR-10DA内部的发光二极管通电变亮,触发导通右侧的光控晶闸管,形成电动机起动的闭合回路,吸油烟机启动。
2)当P0.0输出为高电平时,发光二极管不发光,固态继电器SSR-10DA不能触发导通,无法形成电动机起动的闭合回路,吸油烟机关闭。
相关问答
数码锁定是什么意思?是指一种智能数码锁,它含有锁体、手柄,其特征是:锁体内安装有机械闭锁机构、电磁开锁机构、设备状态检测部分、遥控红外通讯电路和单片机控制电路,机械闭锁机...
有没有谁给我推荐一下,规模大的隧道可变限速牌生产安装厂家...[回答]汽车限速器的工作原理要根据车辆的油门是什么类型的,电子油门的汽车的汽车限速器工作原理是:电子油门踏板叉车系统包括:油门踏板、电子控制单元(ECU...
遮挡式红外声光报警器原理_汽配人问答[回答]1、电源电路。220V交流市电经变压器T降压。桥式整流器D1整流。电解电容C7滤波。三端稳压器78L05稳压,最后得到整机要求的+5V稳定直流电源。2、单片...
遮挡式红外声光报警器原理_汽配人问答[回答]1、电源电路。220V交流市电经变压器T降压。桥式整流器D1整流。电解电容C7滤波。三端稳压器78L05稳压,最后得到整机要求的+5V稳定直流电源。2、单片...
单片机 高手!4.现有10个数据(每个数据为一个字节),存放在从...[最佳回答]你的应用环境
设计电子时钟 要用AT89S51 单片机 的定时器实现,用4位数码管...用21134位数码管显示,用点的闪烁表示秒,就是共有52615位,7段;那么用一整个4102PIO口(8位)去对应7段数据,1653再用另外一个PIO口的部分(全部)管脚去...
无刷的电瓶车用手拔一下车轮才转动但速度比较慢还没有劲控制...无刷电瓶车单片机控制器原理与检修单片机PICl6F72是目前电瓶车控制器主流控制芯片,配合2只74HC27(3输入或非门电路);1只74HC04D(反相器);1只74HC08D...
高电压变低电压用什么管?...高压变低压并不是使用什么管这么简单。对于这个问题要看是什么类型的电压,电压分为交流电和直流电。高压交流电变低压若指的是交流电压,只需使用变压器即可...
无刷的电瓶车用手拔一下车轮才转动但速度比较慢还没有劲控制...无刷电瓶车单片机控制器原理与检修单片机PICl6F72是目前电瓶车控制器主流控制芯片,配合2只74HC27(3输入或非门电路);1只74HC04D(反相器);1只74HC08D...
在座的童鞋,有谁清楚!安徽省铁康铜合金丝生产厂商,铁康铜...[回答]美的TM-SI-01A电流检测电路原理:(图纸论坛里有)元件组成:U1(16,17脚),RK1,R2,VR1,C3,C26,C27.流过康铜丝两端的电流,变换成电压,此电压经过R2,变阻...