關于我們
書單推薦
新書推薦
|
OneOS開發(fā)進階
本書包括驅(qū)動篇(第1章-第9章):分別講解了OneOs的設備驅(qū)動的原理以及源碼,實現(xiàn)IIC、SPI等多種通信機制設備驅(qū)動講解。組件篇(第10章-第15章):分別講解0ne0S部分組件的原理以及源碼,實現(xiàn)MQTT、CoAP等網(wǎng)絡協(xié)議講解。異核通信篇(第16章-第21章):本篇講解如何實現(xiàn)主處理器對協(xié)處理器生命周期管理以及如何實現(xiàn)核間通信。全書教你如何從0ne0S內(nèi)核到0neOS的設備驅(qū)動以及組件的應用、如何在0ne0S線程進行編程。
目 錄
驅(qū)動篇 1章OneOS設備驅(qū)動框架2 1.1設備驅(qū)動模型2 1.2系統(tǒng)調(diào)用接口3 2章OneOS ADC設備8 2.1ADC簡介8 2.2STM32CubeMX配置14 2.3單通道ADC采集實驗16 2.3.1功能設計16 2.3.2軟件設計16 2.3.4下載驗證17 3章OneOS Serial設備18 3.1串口簡介18 3.1.1數(shù)據(jù)通信的基礎概念18 3.1.2串口通信協(xié)議20 3.2STM32CubeMX配置22 3.3串口通信實驗24 3.3.1功能設計24 3.3.2軟件設計25 3.3.3下載驗證27 4章OneOS IIC設備29 4.1IIC及24C0229 4.1.1IIC簡介29 4.1.224C02簡介32 4.2IIC相關數(shù)據(jù)類型及API函數(shù)34 4.2.1IIC相關的數(shù)據(jù)類型34 4.2.2IIC的相關API函數(shù)35 4.3OneOSCube配置39 4.4IIC實驗40 4.4.1功能設計40 4.4.2軟件設計41 4.4.3下載驗證45 5章OneOS SPI設備46 5.1SPI及r Flash芯片46 5.1.1SPI介紹46 5.1.2r Flash50 5.2SPI API函數(shù)54 5.3STM32CubeMX配置55 5.4SPI實驗57 5.4.1功能設計57 5.4.2軟件設計58 5.4.3下載驗證62 6章OneOS RTC設備63 6.1RTC簡介63 6.2RTC相關函數(shù)63 6.3STM32CubeMX配置65 6.4RTC實驗66 6.4.1功能設計66 6.4.2軟件設計66 6.4.3下載驗證68 7章OneOS Clocksource設備69 7.1Clocksource簡介69 7.2Clocksource相關函數(shù)69 7.3STM32CubeMX配置71 7.4Clocksource實驗72 7.4.1功能設計72 7.4.2軟件設計72 7.4.3下載驗證76 8章OneOS Clockevent設備77 8.1Clockevent簡介77 8.2Clockevent相關函數(shù)77 8.3STM32CubeMX配置80 8.4Clockevent實驗81 8.4.1功能設計81 8.4.2軟件設計82 8.4.3下載驗證85 9章OneOS CAN設備86 9.1CAN簡介86 9.2CAN相關函數(shù)87 9.3STM32CubeMX配置92 9.4CAN實驗93 9.4.1功能設計93 9.4.2軟件設計94 9.4.3下載驗證96 組件篇 10章DLOG日志系統(tǒng)99 10.1DLOG日志系統(tǒng)簡介99 10.2DLOG日志系統(tǒng)相關函數(shù)100 10.3STM32CubeMX配置107 10.4DLOG日志系統(tǒng)實驗108 10.4.1功能設計108 10.4.2軟件設計108 10.4.3下載驗證110 11章文件系統(tǒng)116 11.1文件系統(tǒng)簡介116 11.2文件系統(tǒng)相關函數(shù)117 11.3STM32CubeMX配置130 11.4文件系統(tǒng)實驗131 11.4.1功能設計131 11.4.2軟件設計131 11.4.3下載驗證134 12章MoLink模組連接套件136 12.1MoLink模組簡介136 12.1.1什么是MoLink136 12.1.2MoLink架構解析137 12.2MoLink模組API函數(shù)141 12.2.1模組管理接口141 12.2.2通用控制接口143 12.2.3網(wǎng)絡服務接口146 12.3Socket套件使用152 12.3.1Socket API函數(shù)153 12.3.2Socket編程UDP流程160 12.3.3Socket編程TCP客戶端流程160 12.3.4Socket編程TCP服務器流程161 12.4MoLink模組實驗161 12.4.1功能設計161 12.4.2軟件設計161 12.4.3下載驗證165 13章CoAP協(xié)議167 13.1CoAP協(xié)議簡介167 13.2OneOS配置CoAP協(xié)議168 13.3libCoAP協(xié)議API函數(shù)168 13.4CoAP協(xié)議實驗178 13.4.1功能設計178 13.4.2軟件設計178 13.4.3下載驗證183 14章MQTT協(xié)議184 14.1MQTT協(xié)議簡介184 14.2MQTT協(xié)議原理185 14.2.1MQTT協(xié)議實現(xiàn)方式185 14.2.2MQTT網(wǎng)絡傳輸與應用消息186 14.2.3MQTT客戶端186 14.2.4MQTT服務器186 14.2.5MQTT協(xié)議中的訂閱、主題、會話186 14.2.6MQTT協(xié)議的服務質(zhì)量以及消息類型187 14.2.7MQTT協(xié)議數(shù)據(jù)包結構188 14.3MQTT協(xié)議實現(xiàn)原理191 14.4OneNET Kit解析194 14.5OneNET Kit數(shù)據(jù)結構以及API函數(shù)解析196 14.5.1MQTTAPI列表199 14.5.2OneNET平臺配置MQTT203 14.6MQTT實驗205 14.6.1功能設計205 14.6.2軟件設計205 14.6.3下載驗證210 15章OTA遠程升級211 15.1OTA簡介211 15.2OneOS OTA函數(shù)211 15.3OneOS的OTA配置214 15.4OTA實驗218 15.4.1功能設計218 15.4.2軟件設計218 15.4.3下載驗證219 異核通信篇 16章配置OpenAMP221 16.1構建STM32MP157的OneOS工程221 16.2STM32CubeMX配置224 16.2.1開啟IPCC224 16.2.2開啟OpenAMP225 16.3構建工程226 16.4編譯工程229 17章STM32MP157資源分配231 17.1STM32MP157資源231 17.2STM32MP157內(nèi)核外設分配232 17.3STM32MP157存儲分配238 18章異核通信框架242 18.1SMP和AMP架構242 18.1.1同構和異構242 18.1.2SMP和AMP243 18.2IPCC通信框架245 18.2.1Mailbo框架245 18.3.2IPCC框架246 18.3OpenAMP框架247 18.3.1Virtio(虛擬化模塊)248 18.3.2RPMsg(遠程處理器消息傳遞)248 18.3.3Remoteproc(遠程處理)250 18.4驅(qū)動文件252 18.4.1Linu驅(qū)動編譯配置252 18.4.2Linu驅(qū)動文件253 18.4.3M4工程驅(qū)動文件255 19章Remoteproc相關驅(qū)動簡析258 19.1資源表258 19.2存儲和系統(tǒng)資源分配262 19.2.1存儲分配262 19.2.2系統(tǒng)資源分配265 19.3Linu下Remoteproc相關API函數(shù)270 19.3.1rproc結構體272 19.3.2初始化 Remoteproc 實例272 19.3.3出Remoteproc 實例274 19.3.4啟動遠程處理器274 19.3.5關閉遠程處理器276 19.3.6分配遠程處理器句柄278 19.3.7注冊遠程處理器280 19.3.8rproc設備樹節(jié)點287 19.4分散加載文件291 19.4.1分散加載文件地址分配291 19.4.2重新劃分存儲區(qū)域293 19.5Remoteproc的使用297 19.5.1硬件連接297 19.5.2傳輸固件297 19.5.3加載和運行固件301 19.5.4關閉固件305 19.5.4編寫腳本305 20章RPMsg相關驅(qū)動308 20.1Linu下RPMsg相關驅(qū)動文件308 20.1.1相關的結構體310 20.1.2緩沖區(qū)314 20.1.3創(chuàng)建RPMsg通道API函數(shù)315 20.1.4創(chuàng)建RPMsg 端點API函數(shù)317 20.1.5發(fā)送消息API函數(shù)318 20.2OpenAMP庫中的API函數(shù)324 20.2.1初始化IPCC API函數(shù)324 20.2.2初始化OpenAMP API函數(shù)325 20.2.3回調(diào)函數(shù)326 20.2.4創(chuàng)建RPMsg端點API函數(shù)327 20.2.5輪詢API函數(shù)327 20.2.6發(fā)送消息API函數(shù)328 20.3基于RPMsg的異核通信實驗330 20.3.1功能設計330 20.3.2軟件設計331 20.3.3實驗驗證339 21章基于虛擬串口實現(xiàn)異核通信346 21.1虛擬串口概述346 21.2Linu下虛擬串口驅(qū)動分析348 21.3OpenAMP庫中的API函數(shù)352 21.3.1虛擬串口初始化API函數(shù)352 21.3.2虛擬串口回調(diào)API函數(shù)352 21.3.3注冊回調(diào)函數(shù)352 21.3.4虛擬串口發(fā)送API函數(shù)353 21.4OneOS下虛擬串口驅(qū)動分析353 21.5基于虛擬串口的異核通信實驗1355 21.5.1功能設計355 21.5.2軟件設計356 21.5.3實驗驗證359 21.6基于虛擬串口的異核通信實驗2364 21.6.1功能設計364 21.6.2軟件設計364 21.6.3實驗驗證367 附錄A萬耦天工STM32F103開發(fā)板370 附錄B萬耦天工STM32MP157開發(fā)板377 參考文獻386
你還可能感興趣
我要評論
|