目前有許多兼容1-Wire的外設(shè),但對于那些缺乏1-Wire功能的外設(shè),圖1電路給出了實(shí)現(xiàn)它的一種方法。所示示例允許1-Wire網(wǎng)絡(luò)通過SPI兼容的顯示控制器控制遠(yuǎn)程LED顯示屏。
圖1.三個1-Wire開關(guān)(IC1–IC3)、三個XOR門(IC4)和相關(guān)元件使1-Wire網(wǎng)絡(luò)能夠通過SPI外設(shè)IC5控制該顯示器。
為了產(chǎn)生MAX7221顯示控制器(/CS、DIN和CLK)所需的3線SPI接口,1-Wire網(wǎng)絡(luò)串行尋址三個1-Wire開關(guān)(DS2413)。第一個開關(guān)直接創(chuàng)建片選(/CS),第二個開關(guān)直接創(chuàng)建串行數(shù)據(jù)線(DIN),第三個開關(guān)在三個專用OR門的幫助下創(chuàng)建串行時鐘(CLK)。
邊緣檢測器和單脈沖(IC4A-C)組合IC2(DATA1和DATA0)的輸出,為SPI接口創(chuàng)建時鐘信號。這種單觸發(fā)時鐘生成電路提高了數(shù)據(jù)速率,每個SPI位只需要一個1-Wire事務(wù),而不是IC2輸出直接用作時鐘信號時所需的三個事務(wù)(數(shù)據(jù)、時鐘低電平和時鐘高電平)。
要向SPI輸入傳輸數(shù)據(jù),首先將IC1的輸出設(shè)置為低電平。然后,使用以下規(guī)則傳輸數(shù)據(jù)位:
如果當(dāng)前數(shù)據(jù)位與前一個位不同,請相應(yīng)地設(shè)置IC2的DATA1輸出。
如果當(dāng)前數(shù)據(jù)位與前一個位相同,則切換IC3的DATA0輸出。
該電路每次自動生成一個時鐘脈沖,并且每個發(fā)送的數(shù)據(jù)位只需要一個1-Wire命令。數(shù)據(jù)傳輸完成后,發(fā)送最終的1-Wire命令,將IC1輸出設(shè)置為高電平。
該電路允許1-Wire網(wǎng)絡(luò)控制遠(yuǎn)程溫度顯示,但類似的技術(shù)可以提供與溫度顯示接口。2C 兼容器件,以及 ADC 和 DAC 等其他 SPI 外設(shè)。還可以使用額外的DS2413輸出產(chǎn)生雙向數(shù)據(jù)功能。請注意,SPI數(shù)據(jù)速率不是很快,外設(shè)的更新相對較慢,但對于許多遠(yuǎn)程監(jiān)控應(yīng)用來說,速度不是問題。
審核編輯:郭婷
-
led
+關(guān)注
關(guān)注
242文章
23376瀏覽量
663456 -
控制器
+關(guān)注
關(guān)注
112文章
16461瀏覽量
179585 -
SPI
+關(guān)注
關(guān)注
17文章
1724瀏覽量
92173
發(fā)布評論請先 登錄
相關(guān)推薦
無線網(wǎng)絡(luò)控制模塊
MCU網(wǎng)絡(luò)接口方案的自由選擇
資料下載:怎樣通過4G網(wǎng)絡(luò)實(shí)現(xiàn)PLC遠(yuǎn)程控制
單線程遠(yuǎn)程網(wǎng)絡(luò)控制SPI
![<b class='flag-5'>單線</b>程<b class='flag-5'>遠(yuǎn)程網(wǎng)絡(luò)</b><b class='flag-5'>控制</b><b class='flag-5'>SPI</b>](https://file1.elecfans.com//web2/M00/A5/C5/wKgZomUMOgSAU8wmAAEM5v94-xo684.jpg)
ESP8266_SPI透傳協(xié)議(單線)_Version 0.1
一文讀懂SPI串行外設(shè)接口
基于RT-Thread測試RW007(SPI接口)的無線網(wǎng)絡(luò)功能
![基于RT-Thread測試RW007(<b class='flag-5'>SPI</b>接口)的無<b class='flag-5'>線網(wǎng)絡(luò)</b>功能](https://file1.elecfans.com/web2/M00/8F/EA/wKgaomTTTKmAAWafAADKNfgs2ho176.jpg)
評論