欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 單片機ADC0809模數(shù)轉(zhuǎn)換實驗 [打印本頁]

作者: yqj楊巧俊    時間: 2020-6-25 17:59
標(biāo)題: 單片機ADC0809模數(shù)轉(zhuǎn)換實驗
修改記錄: 由LED顯示模數(shù)轉(zhuǎn)換的結(jié)果,改變成由四位數(shù)碼管顯示電壓值  
-------------------------------------------------------------------------   
* 功能描述: 采集電位器的模擬電壓值,轉(zhuǎn)換成數(shù)字量
* 通過四位共陽數(shù)碼管顯示
-------------------------------------------------------------------------
* 接線說明:數(shù)碼管段碼P10~P17--SA~SH,數(shù)碼管位選P20~P23--C0~C3
*          ADC0809:0809DB0~DB7--P00~P07 , 0809CS--P27,0809EOC--P30
*                   0809WR--P36,0809RD--P37,0809A,B,C通道選擇--GND  
*                   0809CLK--ALE(注:在核心板上),0809IN0--POT(電位器輸出)                                       
*************************************************************************/
#include<reg52.h>
#include<absacc.h>

#define uchar unsigned char
#define uint unsigned int
//char code SST516[3] _at_ 0x003b;

unsigned char code segbit[]={0xc0,0xf9,0xa4,0xb0,        // 0, 1, 2, 3
                                                                 0x99,0x92,0x82,0xf8,0x80,0x90, 0xff};// 4, 5, 6, 7, 8, 9, off
unsigned char code combit[]={0xf1,0xf2,0xf4,0xf8};




#define ADC0809 XBYTE[0x7fff]    /* 定義ADC0809 端口地址 */
#define Smg_Seg P1
#define Smg_Com P2
sbit EOC=P3^0;


void TimeInitial();
void Delay(unsigned int i);


void Delay(unsigned int i)
{
  unsigned int j;
  for(;i>0;i--)
  {
  for(j=0;j<125;j++)
  {;}
  }
}


void main()
{
        uchar  temp,loopdat1;
        uint   voldata;
        uchar dispbuf[4];
        while(1)
        {
                ADC0809=0x0f;               
                do
                {;}
                while(~EOC);  //轉(zhuǎn)換是否完成               
                //delayms(1);
                temp = ADC0809; //讀出轉(zhuǎn)換結(jié)果
                voldata = temp*1.0/255*500;
                dispbuf[3] = voldata%10;
                dispbuf[2] = voldata/10%10;
                dispbuf[1] = voldata/100%10;
                dispbuf[0] = voldata/1000;
                for(loopdat1=0;loopdat1<4;loopdat1++)
                {
                       
                        Smg_Seg = segbit[dispbuf[loopdat1]];
                        if( loopdat1 == 1 )
                        {
                                Smg_Seg &= 0x7f;
                        }
                        Smg_Com = combit[loopdat1];
                        Delay(4);
                        Smg_Com = 0xf0;
                }
        }
}

仿真.jpg (229.79 KB, 下載次數(shù): 130)

仿真.jpg

ADC0809模數(shù)轉(zhuǎn)換實驗.zip

89.79 KB, 下載次數(shù): 32, 下載積分: 黑幣 -5


作者: 3522    時間: 2020-7-10 14:06
我想請教一下,我用ADC0809采集交流信號并用DAC0832還原交流信號,但是只能還原10HZ之下的,需要怎么改進呢
作者: joe_2019    時間: 2020-8-5 19:25
學(xué)習(xí)一下,糾結(jié)好久了。




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1