各位板友好
我想利用MCU與RF晶片做溝通,
MCU為Atmel SAMD20J18、RF晶片為Semtech SX1276,
此RF晶片僅能利用SPI對其暫存器做讀寫,
我是使用SINGLE access mode,
也就是一次會傳送一個byte的地址+一個byte的資料,
地址的MSB是1則做寫入,0則是讀取,
我修改Atmel ASF Manual所提供的SPI Example Code,
在程式一開始,要寫(data 0x00)到暫存器(addr 0x01),
因為是寫入,所以地址改寫成 0x01|0x80,就像SPI_W(0x81,0x00)
我不知道到底有沒有寫出去,於是用了一個笨方法XD
寫一個無窮迴圈,然後用示波器查看MOSI的腳位,
確實可以看到0x81 0x00從MOSI送出,
請問板友,這樣就是代表有1byte的資料(0x00)寫到暫存器嗎?
然而當我想把暫存器中的值讀出來,卻出了問題,
我寫了一個SPI_R(0x01),要讀取暫存器的值,但卻收到0x09
以下是目前測試的程式碼,
請問各位板友,可能是哪邊我沒弄清楚,導致寫錯了呢?
謝謝!