2015年8月3日 星期一

五分鐘使用Arduino控制SPI

什麼是SPI?
https://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus
SPI 是一種四線制串列匯流排介面,為主/從結構,四條導線分別為串列時脈(SCLK)、主出從入(MOSI)、主入從出(MISO)和從選(SS)訊號。主元件為時脈提供者,可發起讀取從元件或寫入從元件作業。這時主元件將與一個從元件進行對話。當匯流排上存在多個從元件時,要發起一次傳輸,主元件將把該從元件選擇線拉低,然後分別透過MOSI和MISO線路啟動數據發送或接收。【這一段說明引用自電子工程專輯】請參考下列聯結
http://www.eettaiwan.com/SEARCH/ART/SPI.HTM

詳細的中文介紹請參考台灣WIKI
http://www.twwiki.com/wiki/SPI

廢話不說了介紹Arduino的SPI接法
Arduino UNO內定10,11,12,13為SPI通信界面使用
10 :SS chip select從設備致能信號,由主設備控制
11 : MOSI  主設備數據輸出,從設備數據輸入
12 : MISO  主設備數據輸入,從設備數據輸出
13 : CLOCK 時鐘信號,由主設備產生
首先程式必須包含下列函數:
Arduino的程式中設定如圖所示
這樣就可以打開SPI通信PORT了
資料的移出是MSB先出
SPI mode 設定為MODE1
SPIclock速度是clock/64
#SPI
#五分鐘
#串列通信

沒有留言:

WEMOS D1 MINI ESP8266 製作 NTP + 網路斷線自動重置裝置

我的同事建議我將 NTP 加上網路斷線偵測可以重新reset的功能