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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6429|回復: 11
收起左側

A/D轉換測量電壓,并將結果顯示在數碼管上,電壓顯示為0?

[復制鏈接]
ID:74777 發表于 2018-9-6 09:30 | 顯示全部樓層 |閱讀模式
1黑幣
利用ADC0809測量電壓,并將測量結果顯示在數碼管上,程序燒錄進去,數碼管顯示為0,時序也沒發現什么問題,就是讀不出數據?哪位大神幫忙檢查一下,謝謝
#include <reg52.h>
#include <intrins.h>
#define uint unsigned int
#define uchar unsigned char
uchar code table1[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};        //共陰極數碼管0~9數碼,不帶小數點
uchar code table2[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef};        //共陰極數碼管0~9數碼,帶小數點

sbit _CLK=P1^7;        //時鐘信號輸入線
sbit _ST=P1^6;        //轉換啟動信號
sbit _EOC=P1^5; //轉換結束信號
sbit _OE=P1^4;        //輸出允許信號
sbit _ALE=P1^3; //地址鎖存輸入線
sbit _A=P1^0;   //
sbit _B=P1^1;        //
sbit _C=P1^2;        //輸入地址線
sbit LED1=P2^0; //數碼管1段選控制位,低電平有效
sbit LED2=P2^1; //數碼管2段選控制位,低電平有效
sbit LED3=P2^2; //數碼管3段選控制位,低電平有效

void delay_us(uint m)                //@12.000MHz
{
        while(m--)
        {
                _nop_();
                _nop_();
                _nop_();
                _nop_();
           }
}
void display(uchar num)
{
        uchar g1,g2,g3;
        uint sum;
        sum=(500/255)*num;//電壓轉換,5V做外參考電壓,分成256份
        g3=sum/100;        //個位
        g2=sum/100%10;        //十分位
        g1=sum%10;        //百分位
               
        P2=0xfe;
        P0=table2[g1];
        delay_us(10);
        P2=0xfd;
        P0=table1[g2];
        delay_us(10);
        P2=0xfb;
        P0=table1[g3];
        delay_us(10);
}
void adc()
{
        uchar num;
        _ST=0;
        _OE=0;
        _ALE=0;
        _A=0;
        _B=0;
        _C=0;        //選擇第一個通道即IN0
        _ALE=1;        //上升沿,通道鎖存地址
        _ST=1;        //上升沿,對所有寄存器清零
        _ST=0;        //下降沿啟動轉換
        while(!_EOC);
        _OE=1;
        num=P3;
        _OE=0;
        display(num);
}

void main()
{
        TMOD=0x00;
        TH0=0xFF;
        TL0=0xFA;
        TR0=1;
        ET0=1;
        EA=1;
        while(1)
        {
                adc();
                delay_us(100);
        }

}
void Timer0() interrupt 2
{
        TH0=0xFF;
        TL0=0xFA;       
        _CLK=~_CLK;                        //時鐘信號
}


回復

使用道具 舉報

ID:303383 發表于 2018-9-6 11:11 | 顯示全部樓層
提示: 作者被禁止或刪除 內容自動屏蔽
回復

使用道具 舉報

ID:74777 發表于 2018-9-6 13:28 | 顯示全部樓層
小貓貓愛吃魚 發表于 2018-9-6 11:11
你好!無法的軟件和硬件的問題
1、器件端口連接和程序,是否對應
2、ADC0809 對時鐘有要求,是否滿足

ADC0809沒有輸出數據
回復

使用道具 舉報

ID:98992 發表于 2018-9-6 16:08 | 顯示全部樓層
我也在學習 AD轉換 但是我用的是STC單片機自身帶的
回復

使用道具 舉報

ID:74777 發表于 2018-9-7 16:26 | 顯示全部樓層
erli122 發表于 2018-9-6 16:08
我也在學習 AD轉換 但是我用的是STC單片機自身帶的

我這邊單片機不帶ADC功能
回復

使用道具 舉報

ID:388197 發表于 2018-9-9 23:42 | 顯示全部樓層
沒必要用0809了,0809價格貴,而且只有8位,還需要提供時鐘,占用IO口也多,現在隨便一款4塊錢一片的51片上集成ADC性能完爆0809
回復

使用道具 舉報

ID:332997 發表于 2018-9-10 10:52 | 顯示全部樓層
可以用一個簡單的14腳 IC 搞定,如 芯海 義隆 九齊 華潤 晟矽微 等等
回復

使用道具 舉報

ID:387733 發表于 2018-9-10 12:51 | 顯示全部樓層
g2=sum/100%10;        //十分位,這條語句是錯的,正確的應該是:g2=sum%100/10;
回復

使用道具 舉報

ID:111634 發表于 2018-9-12 07:45 | 顯示全部樓層
本帖最后由 zl2168 于 2018-9-12 12:54 編輯

介紹你幾個參考案例,自己去對照研究。
實例81  ADC0808中斷方式A-D(ALE輸出CLK
實例81 ADC0808A-D( ALE輸出CLK,中斷方式).rar (54.32 KB, 下載次數: 13)
0809ad1.jpg
實例82  ADC0808查詢方式A-D(ALE輸出CLK
實例82 ADC0808A-D( ALE輸出CLK,查詢方式).rar (54.04 KB, 下載次數: 7)
0809ad2.jpg
實例83  ADC0808延時方式A-D(ALE輸出CLK
實例83 ADC0808A-D( ALE輸出CLK,延時等待方式).rar (54.13 KB, 下載次數: 7)
0809ad3.jpg
實例84  ADC0808并行A-D(虛擬CLK
實例84 ADC0808A-D(虛擬CLK).rar (35.75 KB, 下載次數: 7)
0809ad4.jpg

Proteus仿真一下,確認有效。以上摘自張志良編著《80C51單片機仿真設計實例教程——基于Keil CProteus》清華大學出版社ISBN 978-7-302-41682-1.書中電路和程序設計有詳細說明,程序語句條條有注解。
回復

使用道具 舉報

ID:209126 發表于 2018-9-12 10:13 | 顯示全部樓層
g2=sum/100%10;        //十分位,這條語句是錯的,正確的應該是:g2=sum%100/10;
回復

使用道具 舉報

ID:74777 發表于 2018-10-30 10:31 | 顯示全部樓層
shang1205 發表于 2018-9-12 10:13
g2=sum/100%10;        //十分位,這條語句是錯的,正確的應該是:g2=sum%100/10;

多謝。。。。。。。。。。。。。
回復

使用道具 舉報

ID:74777 發表于 2018-10-30 14:53 | 顯示全部樓層
zl2168 發表于 2018-9-12 07:45
介紹你幾個參考案例,自己去對照研究。
實例81  ADC0808中斷方式A-D(ALE輸出CLK)

謝啦,我再研究一下
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美成人精品一区二区三区 | 国产成人精品免高潮在线观看 | 久久av影院 | 91一区二区三区 | 91久久久久久久久久久久久 | 色综合久久久久 | 成人免费区一区二区三区 | 日韩欧美专区 | 国产91在线 | 中日 | 欧美成年黄网站色视频 | 国产精品一区二区久久 | 国产精品91视频 | 特级做a爱片免费69 精品国产鲁一鲁一区二区张丽 | 五月花丁香婷婷 | 在线观看a视频 | 国产一区二区三区精品久久久 | 一区二区三区四区国产精品 | 国产九九九 | 国产成人免费视频网站视频社区 | 中文在线a在线 | 成人免费在线 | 免费一区二区 | av在线免费观看网站 | 欧美日韩在线一区二区三区 | 亚洲精品二区 | 在线观看av网站永久 | 一区二区在线不卡 | 久久久久久久久毛片 | 欧美一级片在线看 | 久久久www成人免费无遮挡大片 | 精品一区二区久久久久久久网站 | 蜜桃av人人夜夜澡人人爽 | 欧美日韩免费在线 | 国产精品久久久久久久久免费丝袜 | 精品久久国产视频 | 午夜影院中文字幕 | 91伊人| 欧美精品一区二区三区在线播放 | 国产精品爱久久久久久久 | 中文字幕男人的天堂 | 精品国产一区二区三区久久 |