SPI驅動編寫注意事項分享

2021-10-03 05:04:05 字數 1458 閱讀 7928

作為當代優秀程式設計師,應具備優秀的大局觀,審美觀。不過像我這種剛入行的菜鳥,還應具備一定的抗壓能力。昨天說了spi的大致,其實spi協議對大家來說確實十分簡單,但要把它寫的全面也是需要考慮很多的,也有挺多注意的地方的。

spi驅動應具備的功能特性

spi的波特率可以調節

片選腳的有效電平可以選擇

傳輸資料的位寬

傳送接收的大小端選擇

相位與極性的配置

傳送接收長度不等

功能特性的實現:

波特率的調節:如果spi使用介面卡,波特率的設定就比較簡單通過寫入暫存器就好,如果spi使用gpio模擬,設定位元率需要通過計算,來等待clk的變化。

片選腳的有效電平選擇:驅動應提供高電平或者低電平,常見使用spi協議的裝置都是低電平選擇有效,在傳送msg時選擇傳送下乙個msg可以選擇的是否變化片選。

/*傳送多個msg*/

for(i =

0; i < count; i++)}

}

資料的傳輸位寬:2~32位可調,存在無效位,無效位根據系統的是大端或者小端進行放置。

static

void

spi_write_read

(struct spi_config_data *config,

unsigned

char

*rx_buf,

int rlen,

const

unsigned

char

*tx_buf,

int tlen)

};

傳送接收的大小端:這可以根據使用者的需求進行配置

極性和相位:極性比較簡單就是clk空閒時的電平,相位主要是體現什麼時候進行資料採集。

傳送接收長度不等:存在僅僅唯讀或者只寫的狀態。

小方法:

vscode 顯示tab鍵和空格鍵

開啟設定再文字框搜尋rendercontrolcharacters然後選中勾選框即可顯示tab,搜尋renderwhitespace選擇all即可現實空格鍵

vscode 儲存時取出行尾的空格

開啟設定再文字框搜尋files.trimtrailingwhitespace然後選中勾選框即可

/*最怕你一生碌碌無為,還安慰自己平凡可貴*/

WSDL編寫注意事項

1 其它的 wsdl 定義的命名空間,若需要在本 wsdl 中引用,必須在 中宣告,並且在 types 元素需要引用的 schema 中import 此命名空間,並通過 schemalocation 屬性來指明此命名空間所屬文件的名稱 需要引用的文件要放在與自己的 wsdl 文件同一目錄 2 作為輸...

iOS ShareSDK分享注意事項

前方有坑 注意事項 可以自己定義標題,內容,也可分享內容的標題,nsstring imagepath nsbundle mainbundle pathforresource sharesdk oftype png 構造分享內容 id publishcontent sharesdk content 分...

學員分享 簡歷編寫指南及注意事項

個人資訊1.可以在個人資訊中不寫年齡 不要讓hr或面試官關注你的年齡 2.籍貫可以不寫,可以寫居住地 3.手機號和郵箱一定要正確求職意向 初中級運維 期望薪資面議 可以增加面試量,但有時候招聘公司崗位薪金與自己的期望相差比較大 如果寫了期望薪資,面試時候還可以變,但相差不要太大專業技能 8 10條 ...