0

您好

我在使用Standard SDK的SPI功能時,呼叫spi_master_write時,CS pin一直idle high,導致SPI bus上一直無訊號。

PS: 我使用的MOSI=PC_2, MISO=PC_3, SCLK=PC_1, CS=PC_0

此時我試著去把PC_0當作gpio初始化後,使用gpio_write(obj, 0)強制將CS pin 拉low,但是pin 拉不下來,依舊是idle high.

然後我將最剛開始初始化的spi object free掉:spi_free(spi_obj)後,發現CS pin 就可以控制了,使用gpio_write(obj, 0) 或是gpio_write(obj, 1)都可以正常設定I/O value。

請問spi 的 chip select 該怎麼控制?(PS: 我看Ameba SDK裡面是把cs pin當作gpio使用,而不是透過SPI driver 內部控制)

謝謝回答

jimmysqf 回答了