一起學習CC3200系列教程之SDK簡介
阿湯哥
序:
能力有限,難免有錯,有問題請聯繫我,
QQ1519256298 [email protected]
Pdf下載http://pan.baidu.com/s/1hqiWB56
我們看一下sdk的目錄:
|
|--docs
|--driverlib
|--example
|--lic
|--middleware
|--netapps
|--oslib
|--simplelink
|--simplelink_extlib
|--third_party
|--ri_tios
|--tools
Docs:
word文檔,主要是講解例程的,還有API函數的。建議,多看看
Driverlib:
CC3200的底層驅動包:主要是uart,i2c等等的代碼,在CCS中這個文件內的代碼會被編譯成靜態庫,供我們的應用去調用。所以當你第一次創建跑官方的例程時,必須先編譯這個。
Example:
存放了官方的例程。在這個文件裏邊有一個比較重要的文檔叫common,翻譯過來就是公共的。意思是example的例程基本上都需要這個文件。
Inc:
宏定義了大量的寄存器地址,對於絕大部分的arm單片機,內存和寄存器的地址基本都是從0x0000 0000到0xffff ffff進行分配的.所有的外設都需要寄存器進行配置,所有的寄存器都需要一個地址。
Middleware:
現在我也不知道這個是做啥的,絕大部分的應用都沒涉及到它。
Netapps:
網絡應用層的代碼,包含了json,http等等,譬如:你要解析json數據,你可以採用官方的netapps的代碼,也可以採用cjson(開源的Json解析庫)。這個不是很有必要深究。
Oslib:
操作系統,TI提供了兩套的操作系統,一個是ti自己的,另一個是freertos。我一般採用的是freertos,當然你如果有時間的話,也可以用ucos。既然TI提供了兩套的操作系統,那麼例程的代碼是怎麼去切換了這兩套代碼的??1、TI把這兩套不同api的操作系統重新封裝成一樣的API,2、你要切換操作系統,需是在工程裏邊設置一個宏定義。
Simplelink:
Wifi這一塊的代碼都是在這裏。這一塊很重要的。在這裏我們需要提到一點,TI提供的simplelink主要就是方便我們進行wifi的開發,讓我們不去了解底層的東西。所以TI提供的網絡通信這一塊的代碼api是模仿socket的。如果你不知道TI這些代碼的含義時,你就百度linux的socket通信,讓自己對網絡通信有一個概念,對你運用TI的api很有好處。
Simplelink_exlib:
這個主要是放了一些OTA和對flash讀寫的代碼。OTA是遠程升級固件的簡稱。
Third_part:
第三方工具:fatfs和freertos。Fatfs是文件系統,freertos是操作系統
ti_rtos
Ti自己的操作系統,因爲對他我也不瞭解,所以也不去深究了,不管他是什麼操作系統,既然是操作系統,那麼我們就用操作系統的概念去調用它就好了,管他是搶佔的還是不是搶佔的。等你有一天需要去配置操作系統了,你就對他很瞭解。
Tool:
主要是放了一些工具,仿真器的驅動這類的東西。
接下來介紹這些文檔下一些很重要卻又會被人忽略的文件:
1、 simplink下的user.H
User.h宏定義了系統的時鐘,還有其他的宏定義,這些宏定義可能有其他作用,這裏我就介紹我所知道的一個作用:我們必須在main。C定義SimpleLinkWlanEventHandler這個函數,前面我們已經說過了這個是個回調函數,是simplelink底層有中斷的時候會根據中斷類型自己去調用的,是一種事件驅動模型。
2、tools/ccs_patch/cc3200.ccxml
這個是給CCS軟件用的,用於選擇jtag或者是用swd調試CC3200。
3、tools/ccs_patch/CC3200_xds100v3.ccxml
這個是定義了數據段,內存段,一般用戶是不需要考慮這個。