[問題]SPI 多機控制
請先看看
http://0rz.tw/AqLX5
這是SPI的原理
而我的規格書上傳輸方式如同網址的內容,其傳輸方式也是跟網址內容一樣
主 從#1,#2
MOSI-------#1:MISO 其傳送為同步發送+回傳 主 從#1,#2 MOSI---->從MISO
| MOSI-------->MISO
|----#2:MISO MISO<--------MOSI
SCLK-------->SCLK
MISO-------#1:MOSI /SS--------->/SS
|
|----#2:MOSI 目前只做到利用SS切換從主機,使#1或2動作
SCLK-------#1:SCLK [狀況]當#1動作時切換過去#2無法切換過去
|
|----#2:SCLK 切換的程式 switch(temp)
{
/SS--------#1:/SS case 0:{}break;
| ˙
|-----#2:/SS ˙
case 12:{P1_4=0; //open#1&close#2
P4_0=0;
}break;
case 13:{P4_0=0;//open#2&close #1
P1_4=1;
}break;
}//利用IO port 控制/SS選擇從機
我的#1是用兩個輸出PORT控制led,#1程式內容為當收到某個值會跑回圈某一燈閃爍
今天嘗試了關掉SPEN 使SPI關閉 會延遲一點時間(<<1s)
但是這樣又違背了SPI spec. .....因為移位暫存器 主從資料循環發送
關掉spi則等於是主機收不到回傳值會錯誤
我到底是要如何利用SPI控制多機並使他們動作 在MISO總線上又不搶線
請各位板有否有這方面的經驗可以分享一下,另外SPI與UART 各大多用在什麼地方??
在此 wasidada 先鞠躬感謝你們看完這篇
※ 引述《wasidada (dada)》之銘言:
吃吃吃吃自己
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.41.67.25
※ 編輯: wasidada 來自: 114.41.67.25 (12/24 21:19)
→
12/25 12:29, , 1F
12/25 12:29, 1F
→
12/25 12:30, , 2F
12/25 12:30, 2F
→
12/25 12:32, , 3F
12/25 12:32, 3F
→
12/25 12:33, , 4F
12/25 12:33, 4F
→
12/25 12:34, , 5F
12/25 12:34, 5F
→
12/25 12:34, , 6F
12/25 12:34, 6F
→
12/25 12:35, , 7F
12/25 12:35, 7F
→
12/25 12:35, , 8F
12/25 12:35, 8F
→
12/25 12:36, , 9F
12/25 12:36, 9F
→
12/25 12:36, , 10F
12/25 12:36, 10F
→
12/25 22:13, , 11F
12/25 22:13, 11F
→
12/25 22:14, , 12F
12/25 22:14, 12F
→
12/25 23:07, , 13F
12/25 23:07, 13F
→
12/28 08:41, , 14F
12/28 08:41, 14F
ASM 近期熱門文章
PTT數位生活區 即時熱門文章