通常熟悉一門新的開發語言或者開發工具都是通過一個最簡單的程序來展開的:通過程序輸出“Hello,world!”,我們也還是這樣開始吧。
目的:
1、了解通過J-LINK或者ST-LINK連接Rainbow,實現在Keil中燒寫程序到Rainbow
2、將USB-TTL模塊和USART3對接,使用串口調試工具輸出來自Rainbow的信息
所需硬件:
1、Rainbow開發板
2、USB-TTL模塊
3、杜邦線 若干
4、J-LINK或者ST-LINK
所需軟件:
1、MDK5.0(Keil5)
2、串口及網絡調試工具
3、Rainbow開發包
相關的硬件可以在授權的硬件經銷商處進行購買,購買了Rainbow開發板之后,可以向經銷商索要軟件包,軟件包中包含了所有試驗需要的軟件、開發包的源程序。Rainbow的開發包是完全開源、軟件注釋詳盡、并且可以在項目中自由使用,但是我們僅向購買了Rainbow開源硬件的用戶提供。
首先,需要在電腦上安裝好ST-LINK或者J-LINK的驅動程序(這里我們以ST-LINK為例來進行描述,ST-LINK和J-LINK在調試和燒寫Rainbow的時候完全一樣,貌似ST-LINK要便宜些),并安裝好Keil5開發工具、串口及網絡調試工具。
第一個應用:從Hello,world!開始
然后創建一個工程,并將Rainbow開發包導入到工程中,為了快速上手,在軟件包的“QuickStart”文件夾中的Hello工程是一個我們預先建立好的工程,可以直接進行編譯、燒寫和調試。
工程建立好之后,需要開始編寫main函數,我們先創建一個main.cpp文件,這里請注意:文件后綴是cpp而不是c,主要是因為Rainbow的開發包是一套c++的類庫。在main.cpp中輸入下列的代碼:
#include "WProgram.h"
int main(void)
{
//初始化開發板
boardInit();
//啟用USART3
Serial.start();
Serial.println("Hello,world!");
}
WProgram.h這個頭文件是在Rainbow上開發所有軟件都必須引入的文件
進入main程序,首先要對開發板進行初始化,調用boardInit()方法,只有調用了這個方法之后,相關的函數才能運行正常。
Serial.start()表示對默認的USART進行初始化,并設置波特率為9600。默認的串口編號在board.h進行定義:#define DEFAULT_USART 3
Serial.println("Hello,world!") 將“Hello,world!”通過默認串口發送出入。這個函數是我們在使用串口將相關信息輸出最常用的函數,表示輸出一段字符串后并換行,對應的Serial.print()則是輸出字符后不換行。
對程序進行編譯無誤后通過Keil燒寫到Rainbow,此時通過串口調試工具可以看到“Hello,world!”已經輸出了: