音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費注冊 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機 | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

幫忙看看tlc2543轉(zhuǎn)換程序

作者:chgsun 欄目:單片機
幫忙看看TLC2543轉(zhuǎn)換程序
   用下面這個TLC2543轉(zhuǎn)換程序采集到的數(shù)據(jù)總是不準,就是用芯片自帶的測試電壓測試輸出數(shù)據(jù),也有偏差。程序中采集數(shù)據(jù)后,由單片機串行口發(fā)出所采數(shù)據(jù)。
   
   程序如下:
#include <reg52.h>
#include <intrins.h>

#define d_byte unsigned int
#define byte unsigned CHAR

sbit SPI_DI=P1^1;
sbit SPI_DO=P1^2;
sbit SPI_CLK=P1^0;
sbit SPI_CS=P1^3;

d_byte gene_spi_ad(byte ad_channel_no);
byte high_byte(d_byte byte_value);
byte low_byte(d_byte byte_value);

void main(){
byte i;
byte restore1;
byte restore2;
byte TEMP;
d_byte d_TEMP;
TEMP=0x0b;
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
d_TEMP=gene_spi_ad(TEMP);
restore2=low_byte(d_TEMP);
restore1=high_byte(d_TEMP);

TMOD=0x20;
TL1=0xfd; TH1=0xfd;
SCON=0x50; PCON=0x00;
TR1=1;

while(1){
SBUF=restore1;
while(TI==0);
TI=0;
SBUF=restore2;
while(TI==0);
TI=0;
for(i=0;i<125;i++);
}
}

d_byte gene_spi_ad(byte channel_no){
bit TEMP_bit;
byte i;
byte TEMP;
byte TEMP_h;
d_byte d_TEMP;
byte count;
          TEMP=channel_no;

      for (count=0;count<=2;count++){
          channel_no=TEMP;
          channel_no<<=4;
          SPI_CLK=0;
          SPI_CS=1;
           _nop_();
           _nop_();
           _nop_();
           _nop_();
           _nop_();
           _nop_();
           _nop_();
           _nop_();
           _nop_();
           _nop_();
          SPI_CS=0;
           for (i=0;i<=7;i++){
              TEMP_bit=(bit)(channel_no&0x80);
              SPI_DI=TEMP_bit;
              channel_no<<=1;
              if (SPI_DO==1) {
              channel_no|=0x01;}
              else{channel_no&=0xfe;};
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              SPI_CLK=1;
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              SPI_CLK=0;
            }
              TEMP_h=channel_no;
              channel_no=0;
         for (i=0;i<=3;i++){  channel_no<<=1;
          if (SPI_DO==1) {channel_no|=0x01;}else{channel_no&=0xfe;};
              SPI_CLK=1;
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              _nop_();
              SPI_CLK=0;}
              SPI_CS=1;
          &nbs
2樓: >>參與討論
glyan2044
希望對你有用
我以前用過,不過是用匯編編的,現(xiàn)在也不太記得了,好象采到的第一次的數(shù)據(jù)不能用,要用第二次采到的數(shù)據(jù)

參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
W77E58
[求助]幫忙推薦一款開發(fā)板吧,這方面實在沒有經(jīng)驗,請大家指點
請大蝦幫忙推薦一款帶pwm,uart的單片機,當然越便宜越好。
覆銅(Copper) 和灌銅(Copper pour)有什么不同嗎
單片機電源監(jiān)控?
免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號