<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > ICL7135(4位半雙積分AD)驅動(dòng)程序備份

ICL7135(4位半雙積分AD)驅動(dòng)程序備份

作者: 時(shí)間:2012-08-16 來(lái)源:網(wǎng)絡(luò ) 收藏
/*********************************************///如下程序使用了計數器T0,外部中斷INT0,普通I/O口P3.5//調用了用于顯示的液晶12864的頭文件/*********************************************/#include reg51.h>#include 12864A.H>   //調用12864模塊#define  uchar unsigned char#define  uint unsigned intsbit _POL=P3^5;sbit _BUSY=P3^2;    //接外部中斷口sbit _CLK=P3^4;    //接計數器口      int ICL7135_count;     //計數存儲單元uint ICL7135_out;     //A轉D后數據的10000倍,存于此單元bit ICL7135_flag;     //輸出正負的位標志float ICL7135_ref=2.0;  //定義基準電壓變量,方便修改Init_ICL7135()    //初始化子程序{TMOD=0x05;       //T0工作于計數模式EA=1;TL0=0;TH0=0;EX0=1;IT0=1;}/*---------------------------------------------------------------*/int0() interrupt 0{float a;          //浮點(diǎn)型轉整型中間變量uchar A1,A2,A3,A4,A5,B1,B2,B3,B4,B5;       //萬(wàn)、千、百、十、個(gè)位TR0=0;             //停止計數ICL7135_count=TH0*256+TL0;     //16方式計得的數ICL7135_flag=ICL7135_POL;     //判斷輸出是正是負a=ICL7135_ref*(ICL7135_count-10000);   
// 正向積分為10000個(gè)脈沖ICL7135輸出放大10000倍后的采樣值              if(a0)          
//此句是為了避免因計數誤差而導致a0而出現的錯誤顯示。
(前提ICL7135_count必須為有符號變量)a=0;ICL7135_out=a;          //浮點(diǎn)型轉整型。//被測電壓的各位A1=ICL7135_out/10000;      A2=ICL7135_out%10000/1000;      A3=ICL7135_out%1000/100;A4=ICL7135_out%100/10;A5=ICL7135_out%10;//AD采樣的源碼各位B1=ICL7135_count/10000;B2=ICL7135_count%10000/1000;B3=ICL7135_count%1000/100;B4=ICL7135_count%100/10;B5=ICL7135_count%10;/*****************************************************************///顯示模塊 此處用液晶顯示器12864 可替換為CH451驅動(dòng)的數碼管/*****************************************************************/LCD_Setaddress(1,1);     //送顯示的縱橫坐標print("當前測試電壓:"); LCD_Setaddress(2,3);if(ICL7135_flag)      //如果為正數{ LCD_write_dat(0x30+A1);               LCD_write_dat(0x2E);     //顯示小數點(diǎn)LCD_write_dat(0x30+A2);LCD_write_dat(0x30+A3);LCD_write_dat(0x30+A4);LCD_write_dat(0x30+A5);}else         //如果為負數{LCD_write_dat(0x2d);     //顯示負號LCD_write_dat(0x30+A1);LCD_write_dat(0x2E);LCD_write_dat(0x30+A2);LCD_write_dat(0x30+A3);LCD_write_dat(0x30+A4);LCD_write_dat(0x30+A5);}LCD_Setaddress(3,1);     //送顯示的縱橫坐標print("輸出源碼:"); LCD_Setaddress(4,3);LCD_write_dat(0x30+B1);               LCD_write_dat(0x30+B2);LCD_write_dat(0x30+B3);LCD_write_dat(0x30+B4);LCD_write_dat(0x30+B5);/**********************************************************************/TL0=0;          //重新轉載數據 TH0=0; }/*-----------------------------------------------------------*/void main(){LCD_init();           //初始化12864Init_ICL7135();        //初始化ICL7135while(1){while(ICL7135_BUSY==0);TR0=1;}}//程序格式粗糙,無(wú)暇整理,僅為備份。如需參考,不明白處可留言。


評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>