欢迎来到天天文库
浏览记录
ID:40575616
大小:36.50 KB
页数:6页
时间:2019-08-04
《TLC2543应用程序电压LCD显示》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、#include#include#include#defineucharunsignedchar#defineuintunsignedintsbitRS=P0^6;sbitE=P0^7;//LCD引脚定义sbitclk_lcd=P0^5;#defineadataP1ucharidataDispRam[64];sbitEOC=P2^3;//转换结束端sbitCLK=P2^4;//输入输出时钟端sbitDATA_IN=P2^5;//串行数据输出
2、端sbitDATA_OUT=P2^6;//AD转换结果三态串行输出端sbitCS=P2^7;ucharcodenum[10]={"0123456789"};ucharcodeSelect_channel[11]={0x0c,0x1c,0x2c,0x3c,0x4c,0x5c,0x6c,0x7c,0x8c,0x9c,0xac};/***************LCD*********************////////////////////////////////////voiddelayms(u
3、intxms){uinti,j;for(i=xms;i>0;i--)for(j=110;j>0;j--);}///////////////////////////////////voidDisp_clr(){memset(DispRam,'',64);}////////////////////////////////////////voidWriteIR(ucharcmd){//RW=0;RS=0;adata=cmd;delayms(5);clk_lcd=0;_nop_();clk_lcd=1;E=
4、1;delayms(20);E=0;}///////////////////////////////////////////voidWriteDATA(ucharc){RS=1;adata=c;delayms(5);clk_lcd=0;_nop_();clk_lcd=1;E=1;delayms(20);E=0;}////////////////////////////////////voidInit_LCD(void){delayms(100);Disp_clr();WriteIR(0x38);//
5、基本指令delayms(20);WriteIR(0x38);delayms(20);WriteIR(0x38);delayms(20);WriteIR(0x01);//cleardisplaydelayms(20);WriteIR(0x06);//设定游标的移动方向及指定显示的移位delayms(20);WriteIR(0x0c);//显示开,关光标delayms(20);}voidDisplay_auto(ucharx,ucharad,uchar*p_string){uchark=0;if(x<1
6、6){for(k=ad;k7、0x90);for(k=32;k<48;k++){WriteDATA(DispRam[k]);delayms(2);}WriteIR(0x88);for(k=16;k<32;k++){WriteDATA(DispRam[k]);delayms(2);}WriteIR(0x98);for(k=0;k<16;k++){WriteDATA(DispRam[k]);delayms(2);}}//*********************************************//**********8、********TLC2543********************uintRead_TLC2543(ucharchannel_select){ucharctl_word=0;uintresult=0;uchari;result=0;ctl_word=Select_channel[channel_select];while(EOC==0);CS=0;CLK=0;for(i=0;i<16;i++){if(ctl_word&0x80)DATA_IN=1;elseDATA
7、0x90);for(k=32;k<48;k++){WriteDATA(DispRam[k]);delayms(2);}WriteIR(0x88);for(k=16;k<32;k++){WriteDATA(DispRam[k]);delayms(2);}WriteIR(0x98);for(k=0;k<16;k++){WriteDATA(DispRam[k]);delayms(2);}}//*********************************************//**********
8、********TLC2543********************uintRead_TLC2543(ucharchannel_select){ucharctl_word=0;uintresult=0;uchari;result=0;ctl_word=Select_channel[channel_select];while(EOC==0);CS=0;CLK=0;for(i=0;i<16;i++){if(ctl_word&0x80)DATA_IN=1;elseDATA
此文档下载收益归作者所有