找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 28163|回復(fù): 14
打印 上一主題 下一主題
收起左側(cè)

51單片機(jī) + ICL7135 LED 數(shù)字電壓表 (C51)

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:104835 發(fā)表于 2016-2-3 22:48 | 只看該作者 回帖獎勵 |倒序?yàn)g覽 |閱讀模式
 

 

最近很懶,要完成的幾個實(shí)物,一直沒動手。今天又多了一項(xiàng),ICL7135制作的高精度電壓表。程序完成,仿真也正常了,就等實(shí)物制作了。
關(guān)于ICL7135制作的電壓表,網(wǎng)上資料不少,但內(nèi)容都差不多,不懂處仍然不懂。7135測電壓有2種方法,一種是并口輸出,接線繁多。另一種是利用BUSY信號得到電壓,這方法簡單,接線只用了一條。


基本原理如下:
ICL7135是以雙積分方式進(jìn)行A/D轉(zhuǎn)換的電路。每個轉(zhuǎn)換周期分為三個階段

[1].自動調(diào)零階段 [2].被測電壓積分階段 [3].對基準(zhǔn)電壓進(jìn)行反積分階段

以輸入電壓Vx為例,其積分器輸出端(ICL7135的4腳)的波形如圖1所示。“busy”輸出端(ICL7135的21腳)高電平的寬度等于積分和反積分時間之和。ICL7135內(nèi)部規(guī)定積分時間固定為10001個時鐘脈沖時間,反積分時間與被測電壓的大小成比例。如果利用單片機(jī)內(nèi)部的計數(shù)器對ICL7135的時鐘脈沖計數(shù),利用“busy”作為計數(shù)器門控信號,控制計數(shù)器只能在busy為高電平時計數(shù),將這段busy高電平時間內(nèi)計數(shù)器的內(nèi)容減去10001,其余數(shù)便等于被測電壓的數(shù)值。

注:U2的CLOCK端接125K方波信號


//2012 02 26 E:\DPJ_C\ICL7135\7135LED.C


#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int

uchar code tab[]={
0x3F,/*0*/
0x06,/*1*/
0x5B,/*2*/
0x4F,/*3*/
0x66,/*4*/
0x6D,/*5*/
0x7D,/*6*/
0x07,/*7*/
0x7F,/*8*/
0x6F,/*9*/
};
uint V;
sbit P0_7=P0^7;

void delay(uint ms)
{
uchar i;
while(ms--)
for(i=0;i<123;i++);
}

void display()
{
uchar temp=0xfe,a[5],i;
a[0]=V/10000;
a[1]=V%10000/1000;
a[2]=V%1000/100;
a[3]=V%100/10;
a[4]=V%10;
for(i=0;i<5;i++)
{
P0=tab[a[i]];
if(i==0)
P0_7=0x01; //最高位顯示小數(shù)點(diǎn)
P1=temp;
delay(1);
P1=0xff;
temp=_crol_(temp,1);
}
}

void main()
{
TMOD=0X0d;//00001101
TL0=0;
TH0=0;
ET0=1;
EX0=1;
IT0=1;
EA=1;
TR0=1;
while(1)
display();
}

void ADC_7135() interrupt 0
{
V=TH0;
V<<=8;
V+=TL0;
V-=10001;
TL0=0;
TH0=0;
}


多頁設(shè)計,加了一個用7135的BCD輸出的信號加到數(shù)碼管顯示,小2個字。

 

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏6 分享淘帖 頂 踩

相關(guān)帖子

回復(fù)

使用道具 舉報

沙發(fā)
ID:154111 發(fā)表于 2016-12-12 14:19 | 只看該作者
只有圖片,沒有資料。
回復(fù)

使用道具 舉報

板凳
ID:190848 發(fā)表于 2017-4-18 16:02 | 只看該作者
請問,能制作 51單片機(jī) + ICL7135 LED 交流數(shù)字電壓表嗎
回復(fù)

使用道具 舉報

地板
ID:213627 發(fā)表于 2017-6-22 11:56 來自觸屏版 | 只看該作者
請問有完整程序嗎
回復(fù)

使用道具 舉報

5#
ID:213627 發(fā)表于 2017-6-22 13:36 來自觸屏版 | 只看該作者
你好,為什么我的顯示5.3555且不會變
回復(fù)

使用道具 舉報

6#
ID:248444 發(fā)表于 2017-11-16 18:37 | 只看該作者
Andyove 發(fā)表于 2017-6-22 13:36
你好,為什么我的顯示5.3555且不會變

我的也是同樣的問題,請問你的問題解決了嗎?
回復(fù)

使用道具 舉報

7#
ID:76133 發(fā)表于 2017-11-17 11:15 | 只看該作者
我的也是同樣的問題
回復(fù)

使用道具 舉報

8#
ID:291141 發(fā)表于 2018-3-13 10:03 來自觸屏版 | 只看該作者
這是我的畢業(yè)設(shè)計,但有點(diǎn)不懂!
回復(fù)

使用道具 舉報

9#
ID:305342 發(fā)表于 2018-4-25 23:11 | 只看該作者
910543929 發(fā)表于 2018-3-13 10:03
這是我的畢業(yè)設(shè)計,但有點(diǎn)不懂!

我也是哇
回復(fù)

使用道具 舉報

10#
ID:291141 發(fā)表于 2018-5-5 10:35 來自觸屏版 | 只看該作者
大神,可不可以幫幫忙!很著急
回復(fù)

使用道具 舉報

11#
ID:291141 發(fā)表于 2018-5-14 09:17 來自觸屏版 | 只看該作者
2437917421 發(fā)表于 2018-4-25 23:11
我也是哇

你做的怎么樣了?
回復(fù)

使用道具 舉報

12#
ID:398298 發(fā)表于 2018-9-15 16:56 | 只看該作者
我仿真時數(shù)碼管不顯示 總是出現(xiàn)CLIIIT  linear  range is less than zero  是怎么回事
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表