天堂草原最受欢迎的角色,天堂动漫,天堂在线,色天堂下载,天堂中文在线资源,亚洲男人天堂

技術熱線: 4007-888-234

技術支持

MCD2-DEMO上1路8位單片機AD顯示C語言例子

更新時間: 2019-03-23

十年專注單片機方案開發的方案公司英銳恩,分享MCD2-DEMO上1路8位AD顯示C語言例子。英銳恩現提供服務產品涉及主控芯片:8位單片機、16位單片機、32位單片機及各類運算放大器等。

/*====================================================================
* PIC16F877A--10BIT AD
*2005 4 19
* HQGBOY
=====================================================================*/
#include  

 

#define uchar unsigned char
#define uint  unsigned int
#define ulong unsigned long

 

//數碼管字符表
const uchar  led[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};

 

uchar ADResult0;

 

void display();
void delay(uint);
void delayus();
//系統各I/O口初始化子程序
void  initial()

{
PORTA=0x00;
PORTC=0x00;

TRISA=0X01;
TRISC=0X00;    //
ADCON0=0x81;   //選擇A/D通道為RA0,打開A/D轉換器
           //在工作狀態,且使A/D轉換時鐘為32tosc
ADCON1=0X0E;   //轉換結果右移,及ADRESH寄存器的高6位為"0"
                    //且把RA0口設置為模擬量輸入方式
}

//延時子程序
void  delay(uint x)
{
uint j;
while(x--)
{
for(j=5535;--j;);
}
}
//延時子程序
void  delayus()
{
uchar j;

 

for(j=5000;--j;);

 

}
//顯示初始化子程序
void initdis( )
{

 

PORTA=0xFB;    //選通數碼管4
PORTC=0xC0;

PORTA=0xDF;    //選通數碼管5
PORTC=0xC0;

PORTA=0xEF;    //選通數碼管6

PORTC=0xC0;
}
//讀AD值
void ADReadFunc()
{
ADCON0=0x81;
delayus();
ADGO=1;
while(ADGO);
ADResult0=ADRESH;
}
//顯示子程序
void display()
{
uchar ADData1,ADData2,ADData3;
PORTC=0XFF;

ADData1=ADResult0/100;  
PORTC=led[ADData1];
PORTA=0xfB;  //選通數碼管4
delayus();

ADData2=(ADResult0-ADData1*100)/10;   
PORTC=led[ADData2];
PORTA=0xDF; //選通數碼管5
   delayus();

 


ADData3=ADResult0-ADData1*100-ADData2*10;
PORTC=led[ADData3];
PORTA=0xEF;    //選通數碼管6
delayus();

 

}

 


//主程序
main()
{
initial();
initdis( );     //系統各I/O口初始化

 

while(1)
{
ADReadFunc();
display();
}
}

404
返回首頁 |  返回上一頁
联系我们: 肥乡县| 平舆县| 镇平县| 得荣县| 固镇县| 盈江县| 文化| 策勒县| 霍邱县| 绥阳县| 茌平县| 大邑县| 清涧县| 万源市| 青神县| 武夷山市| 万安县| 牟定县| 泰顺县| 阆中市| 来安县| 北宁市| 库尔勒市| 七台河市| 龙陵县| 漯河市| 莲花县| 新田县| 临颍县| 开原市| 新巴尔虎右旗| 古交市| 韶山市| 工布江达县| 于田县| 湟源县| 光泽县| 伊宁县| 青岛市| 淮滨县| 惠州市|