找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2514|回復(fù): 7
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)IO口模擬SPI寫數(shù)字電位器AD5174通訊問題

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
100黑幣
問題描述:AD5174為10位的數(shù)字電位器 ,通過單片機(jī)IO模擬SPI通訊,數(shù)據(jù)寫不進(jìn)AD5174。測量AW兩端的電阻值始終為中間值(5.5K左右),懷疑是SPI通訊問題(寫的數(shù)據(jù)或者命令不對(duì))。如圖(3)命令4位,數(shù)據(jù)10位,總共是要發(fā)送14位還是16位呢?(我覺得是要發(fā)送16位)。命令和數(shù)據(jù)位是否需要分開發(fā)送?如圖(4)發(fā)送0x0500(二進(jìn)制:0000 0101 0000 0000) 0000 01為寫數(shù)據(jù)命令,后面10位為數(shù)據(jù)位Data=256,剛好是滿量程1024的1/4,但是芯片的W端(雨刮器)位置沒有變化。

引腳圖:(圖1)



時(shí)序圖:(圖2)

命令字:(圖3)


寫數(shù)據(jù):(圖4)


程序(SPI通訊部分):


void AD5174_Init(void)
{               
  AD5174_SPI=1;
AD5174_CS=1;
AD5174_CLK=0;
//AD5174_DI=1;        
}

void AD5174_Write(unsigned char temp)
{
unsigned char i;        
  for(i=0;i<8;i++)
  {
         if(temp&0x80)
         {
           AD5174_DI=1;                                          
         }
         else
         {
           AD5174_DI=0;                                                           
         }
   delay1us();
   AD5174_CLK = 1;
   delay5us();
   AD5174_CLK = 0;
   delay1us();
   temp<<= 1;        //高位MSB在先                     
  }        
        
}


void main(void)
{
  AD5174_Init();
  AD5174_CLK = 0;        
  AD5174_CS  = 0;
  AD5174_Write(0x0500>>8);
  AD5174_Write(0x0500);
  AD5174_CS = 1;
  AD5174_CLK = 0;
delay5us();
while(1)
{
   ;
  }

}

AD5174BRMZ-10-datasheet.pdf

859.1 KB, 下載次數(shù): 5

最佳答案

查看完整內(nèi)容

沒取消寫保護(hù)
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏3 分享淘帖 頂1 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:161164 發(fā)表于 2024-1-17 16:11 | 只看該作者
沒取消寫保護(hù)







回復(fù)

使用道具 舉報(bào)

板凳
ID:743654 發(fā)表于 2024-1-18 11:38 | 只看該作者

意思要操作RDAC,先寫圖(3)中表6的命令數(shù)7,然后再寫命令數(shù)1?墒且廊粵]效果,用示波器查看寫入數(shù)據(jù)都正確命令數(shù)7: 00 0111 0000 0000 10



命令數(shù)1:00 0001 0100 0000 00(Data=256)


回復(fù)

使用道具 舉報(bào)

地板
ID:332444 發(fā)表于 2024-1-19 14:36 | 只看該作者
從圖看應(yīng)該是16脈沖。
回復(fù)

使用道具 舉報(bào)

5#
ID:743654 發(fā)表于 2024-1-24 13:24 | 只看該作者
問題找到了,因?yàn)闆]有用到輸出,SDO懸空,導(dǎo)致數(shù)據(jù)寫不進(jìn)去,結(jié)合一樓的配置,數(shù)據(jù)成功寫入。有個(gè)疑問為什么SDO腳懸空數(shù)據(jù)就寫不進(jìn)去?
回復(fù)

使用道具 舉報(bào)

6#
ID:161164 發(fā)表于 2024-1-24 15:21 | 只看該作者
cheney03 發(fā)表于 2024-1-24 13:24
問題找到了,因?yàn)闆]有用到輸出,SDO懸空,導(dǎo)致數(shù)據(jù)寫不進(jìn)去,結(jié)合一樓的配置,數(shù)據(jù)成功寫入。有個(gè)疑問為什 ...


評(píng)分

參與人數(shù) 1黑幣 +15 收起 理由
cheney03 + 15 很給力!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

7#
ID:743654 發(fā)表于 2024-1-24 15:52 | 只看該作者

看來是沒仔細(xì)看數(shù)據(jù)手冊(cè),SDO外接2.2K上拉電阻,2個(gè)IC鏈接模式也調(diào)試成功,再次感謝!
回復(fù)

使用道具 舉報(bào)

8#
ID:806634 發(fā)表于 2024-5-22 11:01 來自手機(jī) | 只看該作者
樓主 我控制數(shù)字電位器AD8403 模擬 spi發(fā)送10位數(shù)據(jù)可以參考你這個(gè)代碼嗎?
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表