久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1489|回復: 0
打印 上一主題 下一主題
收起左側

51單片機+ADC0804+三位一體數碼管 測量實時電壓

[復制鏈接]
跳轉到指定樓層
樓主
ID:1049806 發表于 2022-11-7 22:57 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
ADC0804芯片的介紹

1、A/D轉換概念

即模數轉換,輸入模擬量(比如電壓信號),輸出一個與模擬量對應的數字。例如參考電壓VREF為5V,采用8位的模數轉換器時,當輸入電壓為0V時,輸出的數字量為0000 0000,當輸入的電壓為5V時,輸出的數字量為1111 1111.當輸入的電壓從0V到5V變化時,輸出量從0000 0000到1111 1111變化。這樣每一個輸入電壓值對應一個輸出數字量,即實現模數轉換。

2、分辨率概念

分辨率是指使輸出數字量變化1時的輸入模擬量,也就是使輸出數字量變化一個相鄰數碼所需輸入模擬量的變化值。

分辨率與A/D轉換器的位數有確定的關系,可以表示成FS/2^n。FS表示滿量程輸入值,n為A/D轉換器的位數。例如對于5V的滿量程,采用4位的ADC時,5V/16=0.3125V(也就是說當輸入的電壓值每增加0.3125V,輸出的數字量增加1);采用8位的ADC時,分辨率為5V/256=19.5mV(也就是說當輸入的電壓每增加19.5mV,則輸出的數字量增加1);當采用12位的ADC時,分辨率則為5V/4096=1.22mv(也就是說當輸入的電壓每增加1.22mV,則輸出的數字量增加1)。顯然位數越多,分辨率越高

/*********************
數字電壓表與模數轉器
adc0804 輸出腳DB0-DB7-->P1口
Vin+ 輸入測量電壓
VREF/2輸入參考電平
程序把ADC0804送來的數字電壓信號進行量化后顯示在七段數碼管上。
P0口連接到三位一體的數碼管上,p2^0控制第1位數碼管
                                                             P2^1控制第2位數碼管
                                                            P2^2控制第3位數碼管
*****************************************************************************
#include <reg52.h>
sbit intr=P3^0;                //轉換結束信號 adc0804 5腳
sbit write=P3^1;        //轉換使能端 adc0804 3腳
sbit read=P3^2;        //輸出使能端 adc0804 2腳
sbit dot=P0^7;                //小數點
//直接控制七段數碼管顯示數字0-9的碼表
code unsigned char tab[]={0x40, 0x79, 0x24, 0x30,
0x19, 0x12, 0x02, 0x78,
0x00, 0x10};
unsigned int ad=0, ads;        //保存數字信號的變量
unsigned char StrTab[3];  //保存顯示數
void delay(unsigned int cnt)//延時函數
{
while(--cnt);
}
main()
{   
        while(1)
        {      
                write=1;                        //write端出現下降沿,啟動轉換
                write=0;
                write=1;
                while(intr==1);         //循環等待INTR的低電平,轉換完成
                read=1;                        //在READ出現下降沿,輸出數字信號
                read=0;
                ad=P1;                        //轉換好的數字信號保存到變量ad中
                ad=ad*156;                //與分辨率0.0156V相乘
                ads=ad/10000;                //獲得電壓數值的最高位
StrTab[2]=tab[ads];        //最高位數值的顯示碼存入StrTab[2]
                ad=ad%10000;      
                ads=ad/1000;
                StrTab[1]=tab[ads];//中間位數值的顯示碼存入StrTab[1]
                ad=ad%1000;
                ads=ad/100;
                StrTab[0]=tab[ads];//最低位數值的顯示碼存入StrTab[0]
P2=0x01;                        //使能最高位的七段數碼管
P0=StrTab[2];                //輸出顯示碼
delay(1000);
P2=0x00;                        //熄滅該位七段數碼管
P2=0x02;                        //使能中間位的七段數碼管
P0=StrTab[1];                //輸出顯示碼
dot=1;                        //關閉小數點
delay(1000);
P2=0x00;                        //熄滅該位七段數碼管
P2=0x04;                        //使能最低位的七段數碼管
P0=StrTab[0];                //輸出顯示碼
dot=1;                        //關閉小數點
delay(1000);
P2=0x00;                        //熄滅該位七段數碼管
}
}

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

使用道具 舉報

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

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 伊人久麻豆社区 | 一级毛片在线看 | 国内毛片毛片毛片毛片 | 中文字幕国产 | 欧美三级电影在线播放 | 91在线一区| 国产精品不卡一区二区三区 | 日本在线视频一区二区 | 特黄级国产片 | 91视视频在线观看入口直接观看 | a国产一区二区免费入口 | 日日操夜夜操天天操 | 亚洲精品99 | 中文二区 | 午夜精品久久 | a免费视频 | 亚洲天堂中文字幕 | 日韩在线国产精品 | 台湾佬成人网 | a在线免费观看 | 成人久久 | 特一级黄色毛片 | 99国内精品久久久久久久 | 91看片在线观看 | 免费中文字幕日韩欧美 | 亚洲国产成人久久久 | 欧美精品久久久久 | 黑人精品xxx一区一二区 | 男人的天堂一级片 | 欧美一区二区免费 | 精品一区二区三区日本 | 国产精品亚洲综合 | 免费视频一区二区三区在线观看 | 亚洲综合电影 | 日日干干夜夜 | 美女久久视频 | 亚洲精品不卡 | 亚洲精品字幕 | 久久精品亚洲精品国产欧美 | 欧美激情精品久久久久久变态 | 久久久国产一区 |