資源簡介
使用16位精度的LTC1864模數(shù)轉換器編程實現(xiàn)高精度數(shù)字電壓表,量程為50V,精度達到1mV,并使用12864液晶顯示器,給出了protues仿真!感興趣的同學,可以參考一下!

代碼片段和文件信息
#include
#include“12864.h“
sbit?conv=P3^5;
sbit?sck=P3^6;
sbit?sdo=P3^7;
unsigned?int?dat;
/*---------------LTC1864的驅動函數(shù)----------------*/
void?convert()
{?int?i=0;
??dat=0;
??conv=0;
??conv=1;
??for(i=0;i<5;i++);
??conv=0;
??for(i=0;i<16;i++)
??{
??sck=1;
??sck=0;
??if(sdo)
??dat|=0x8000>>i;
??sck=1;
??}
??}
void?empty(char?p)
{?char?i;
?for(i=0;i<8;i++)
?{?if(i<4)
??{cs1=1;cs2=0;
???hz_disp16(2*p16*ikge);
???}
???else
??{?cs1=0;cs2=1;
???hz_disp16(2*p16*(i-4)kge);
???}
???}
???}
?void?start()
?{
??cs1=1;cs2=0;
??hz_disp16(132hying);
??hz_disp16(148hying+32);
??hz_disp16(416hying+32*4);
??hz_disp16(432hying+32*5);
??hz_disp16(448dianya);
??cs1=0;cs2=1;
??hz_disp16(10hying+32*2);
??hz_disp16(116hying+32*3);
??hz_disp16(40dianya+32);
??hz_disp16(416dianya+32*2);
??hz_disp16(432meili+32*13);
}
/*------------------實現(xiàn)漢字的滾動顯示------------------*/
void?gundong()
{?char?i;
cs1=1;cs2=0;
for(i=0;i<4;i++)
{if((k>=16)&&(k<32))
??hz_disp16n(016*imeili+32*(i+1)+k%16);
else??if((k>=32)&&(k<48))
??hz_disp16n(016*imeili+32*(i+2)+k%16);
else?if((k>=48)&&(k<64))
??hz_disp16n(016*imeili+32*(i+3)+k%16);
else?if((k>=64)&&(k<80))
??hz_disp16n(016*imeili+32*(i+4)+k%16);
else?if(k>=80)
??hz_disp16n(016*imeili+32*(i+5)+k%16);
else
??hz_disp16n(016*imeili+32*i+k%16);
}
cs1=0;cs2=1;
?for(i=0;i<4;i++)
{if((k>=16)&&(k<32))
??hz_disp16n(016*imeili+32*(i+1+4)+k%16);
else??if((k>=32)&&(k<48))
??hz_disp16n(016*imeili+32*(i+2+4)+k%16);
else?if((k>=48)&&(k<64))
??hz_disp16n(016*imeili+32*(i+3+4)+k%16);
else?if((k>=64)&&(k<80))
??hz_disp16n(016*imeili+32*(i+4+4)+k%16);
else?if(k>=80)
??hz_disp16n(016*imeili+32*(i+5+4)+k%16);
else
??hz_disp16n(016*imeili+32*(i+4)+k%16);
??}
??}
void?lcheng_jdu()
{?cs1=1;cs2=0;
??hz_disp12(30lcheng);
??hz_disp12(312lcheng+24);
??char_disp(324ASC+0);
??char_disp(332ASC+16*13);
??char_disp(340ASC+16*5);
??char_disp(348ASC+0);
??char_disp(356ASC+16*11);
??hz_disp16(60dqian);
??hz_disp16(616dqian+32);
??hz_disp16(632dianya);
??hz_disp16(648dianya+32);
??cs1=0;cs2=1;
??hz_disp12(38jingdu);
??hz_disp12(320jingdu+24);
??char_disp(332ASC+16);
??char_disp(340ASC+16*14);
??char_disp(348ASC+16*11);
??char_disp(60ASC+16*12);
??}
?
void?main()
{
?unsigned?char?disp_dat[]={001000011}icount=0;
?unsigned?int??buf;
?init_lcd();
?empty(0);
?empty(1);
?empty(2);
?empty(3);
?start();
?for(i=0;i<180;i++)
?for(buf=0;buf<1000;buf++);
?empty(0);
?empty(1);
?empty(2);
?lcheng_jdu();
while(1)
{count++;
if(count>1)
??{count=0;
??k++;
??}
?if(k>=96)
?k=0;
?gundong();
?convert();
?buf=dat;
?buf=buf*(50.0/65535)*1000;
?disp_dat[5]=buf%10;
?disp_dat[4]=(buf/10)%10;
?disp_dat[3]=(buf/100)%10;
?disp_dat[1]=(buf/1000)%10;
?disp_dat[0]=(buf/10000)%10;
/*--------實時電壓顯示-----------*/
?cs1=0;cs2=1;
?for(i=0;i<7;i++)
?{
?char_di
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????9612??2011-05-01?14:20??LTC1864_12864數(shù)字電壓表\12864.h
?????文件???????1054??2011-05-29?09:31??LTC1864_12864數(shù)字電壓表\12864顯示.PWI
?????文件???????3082??2011-05-01?14:23??LTC1864_12864數(shù)字電壓表\LTC1864.c
?????文件??????10799??2011-05-05?17:44??LTC1864_12864數(shù)字電壓表\LTC1864.hex
?????文件?????????46??2011-05-05?17:44??LTC1864_12864數(shù)字電壓表\LTC1864.lnp
?????文件??????20366??2011-05-05?17:44??LTC1864_12864數(shù)字電壓表\LTC1864.M51
?????文件????????172??2011-05-25?21:07??LTC1864_12864數(shù)字電壓表\LTC1864.plg
?????文件??????13235??2011-04-28?10:40??LTC1864_12864數(shù)字電壓表\LTC1864.uvproj
????.......?????56041??2011-05-05?18:29??LTC1864_12864數(shù)字電壓表\LTC1864_uvopt.bak
?????文件??????????0??2011-04-28?10:05??LTC1864_12864數(shù)字電壓表\LTC1864_uvproj.bak
?????文件?????383615??2011-04-19?07:40??LTC1864_12864數(shù)字電壓表\LTC1864.pdf
????.......?????56037??2011-05-25?21:07??LTC1864_12864數(shù)字電壓表\LTC1864.uvopt
?????文件?????101009??2011-05-06?11:44??LTC1864_12864數(shù)字電壓表\Last?Loaded?12864顯示.DBK
?????文件?????101009??2011-05-27?19:16??LTC1864_12864數(shù)字電壓表\12864顯示.DSN
?????文件???????6394??2011-05-05?17:44??LTC1864_12864數(shù)字電壓表\LTC1864.LST
?????文件??????21736??2011-05-05?17:44??LTC1864_12864數(shù)字電壓表\LTC1864.OBJ
?????文件??????18591??2011-05-05?17:44??LTC1864_12864數(shù)字電壓表\LTC1864
?????目錄??????????0??2011-05-01?14:26??LTC1864_12864數(shù)字電壓表
-----------?---------??----------?-----??----
???????????????802798????????????????????18
- 上一篇:可調(diào)時鐘+鬧鐘——基于DS1302
- 下一篇:灰度距亞像素邊緣檢測
評論
共有 條評論