|
開發(fā)Hi3516第一個應(yīng)用程序示例,
開發(fā)Hi3516第一個應(yīng)用程序示例本節(jié)指導(dǎo)開發(fā)者在單板上運(yùn)行第一個應(yīng)用程序,其中包括修改應(yīng)用程序、編譯、燒寫、運(yùn)行等步驟,最終輸出“Hello OHOS!”。
獲取源碼開發(fā)者需要在Linux服務(wù)器上下載一套源代碼,獲取Hi3516源碼(下載鏈接)。更多源碼獲取方式,請見源碼獲取。
修改應(yīng)用程序源碼目錄applications/sample/camera/app/src內(nèi)
helloworld.c代碼如下所示,用戶可以自定義修改打印內(nèi)容(例如:修改OHOS為World)。當(dāng)前應(yīng)用程序可支持標(biāo)準(zhǔn)C及C++的代碼開發(fā)。
#include <stdio.h>
#include “l(fā)os_sample.h“
int main(int argc, char **argv)
{
printf(“\n************************************************\n“); printf(“\n\t\tHello OHOS!\n“); printf(“\n************************************************\n\n“);
LOS_Sample(g_num);
return 0;
}
編譯在linux服務(wù)器上,進(jìn)入源碼包根目錄,目錄內(nèi)存放有build.py編譯腳本,執(zhí)行如下腳本編譯源碼包。結(jié)果文件生成在out/ipcamera_hi3516dv300目錄下。
python build.py ipcamera_hi3516dv300 -b debug
鏡像燒寫該方法只適合支持網(wǎng)口的單板(例如Hi3516DV300),且PC主機(jī)必須與單板用網(wǎng)線連接并配置在于同一網(wǎng)絡(luò)中。
須知: 由于Visual Studio Code軟件與單板間存在網(wǎng)絡(luò)通信,若單板無法與電腦網(wǎng)絡(luò)連接,請檢查防火墻設(shè)置,詳細(xì)設(shè)置請參考常見問題2。
- 安裝USB轉(zhuǎn)串口驅(qū)動,并獲取串口號。
圖 1 驅(qū)動安裝成功圖
- 為單板上電,并將單板串口線連接Windows工作臺。
- 安裝驅(qū)動,驅(qū)動獲取鏈接。
- 打開電腦的設(shè)備管理器,查看并記錄“ProlIFic USB-to-Serial Comm Port”串口號,此處為COM11。
驅(qū)動安裝成功后,若設(shè)備圖標(biāo)存在警示圖標(biāo),請右鍵點(diǎn)擊設(shè)備并卸載驅(qū)動后,重新安裝驅(qū)動,并按提示重啟電腦。
- Windows工作臺為單板互聯(lián)網(wǎng)口增加192.168.1.3的IP地址,增加方法如下。
圖 2 Windows主機(jī)IP增加圖例
- 控制面板->網(wǎng)絡(luò)和Internet->網(wǎng)絡(luò)連接中找到與單板連接的網(wǎng)卡,右鍵打開屬性。
- 選擇Internet協(xié)議版本4(TCP/ipv4),右鍵打開屬性。
- 按圖配置IP地址和網(wǎng)關(guān)。
- 點(diǎn)擊“確定”完成配置保存。
- 單板列表增加hi3516dv300,依次選擇Board Configure,enable單板**,**自動新增單板配置表。
圖 3 增加hi3516dv300單板
- 打開IDE工具,按下圖標(biāo)號順序配置網(wǎng)絡(luò)燒寫內(nèi)容。
圖 4 IDE工具網(wǎng)絡(luò)配置圖例
- 單板類型選擇Hi3516單板。
- 單擊“Burn“。
- “Burning Mode“選擇為“network“。
- “Host IP Address“點(diǎn)擊刷新后,在下拉框中選擇步驟2中配置的IP地址“192.168.1.3“。
- 選擇需要燒寫的FLASH芯片存儲類型及燒寫地址。
圖 5 燒寫文件參數(shù)配置圖
- “Memery Type“選擇“emmc“。
- 點(diǎn)擊“New“,新增至三個文件,并在文件路徑中依次填入OHOS_Image.bin、rootfs.img、useRFs.img文件,起始地址及文件長度按圖填寫,文件從out/ipcamera_hi3516dv300目錄下獲取。
- 點(diǎn)擊“Save“保存。
- 點(diǎn)擊左側(cè)“Burn“開始燒寫。
- 上方輸入框彈出下拉框后,選擇串口號,例如COM11。
圖 6 選擇與單板連接的串口
- 燒錄開始,若出現(xiàn)提示,需要手動重啟單板(下電再上電)。
圖 7 提示下電并重新為單板上電
- 燒寫完成。
圖 8 燒寫成功圖
鏡像運(yùn)行
- 連接串口。
須知: 若無法連接串口,請參考常見問題5進(jìn)行排查。
圖 9 連接串口圖
- 單擊Serial port打開串口。
- 輸入“com11“串口編號并連續(xù)輸入回車直到串口顯示“hisillicon“。
- 單板初次啟動或修改啟動參數(shù),請進(jìn)入步驟2,否則進(jìn)入步驟3。
- (單板初次啟動必選)修改U-boot的bootcmd及bootargs內(nèi)容:該步驟為固化操作,若不修改參數(shù)只需執(zhí)行一次。每次復(fù)位單板均會自動進(jìn)入系統(tǒng)。
須知: U-boot引導(dǎo)程序默認(rèn)會有2秒的等待時間,用戶可使用回車打斷等待并顯示“hisillicon“,通過
reset命令可再次啟動系統(tǒng)。
表 1 U-boot啟動參數(shù)
執(zhí)行命令
| setenv bootcmd “mmc read 0x0 0x80000000 0x800 0x4800; go 0x80000000“;
setenv bootargs “console=ttyAMA0,115200n8 root=emmc fstype=vfat rootaddr=10M rootsize=15M rw“;
saveenv
reset
| 命令解釋
| setenv bootcmd “mmc read 0x0 0x80000000 0x800 0x4800;go 0x80000000“;
表示選擇FLASH器件0,讀取FLASH起始地址為0x800(單位為512B,即1MB),大小為0x4800(單位為512B,即9MB)的內(nèi)容到0x80000000的內(nèi)存地址。
setenv bootargs “console=ttyAMA0,115200n8 root=emmc fstype=vfat rootaddr=10M rootsize=15M rw“;
表示設(shè)置啟動參數(shù),輸出模式為串口輸出,波特率為115200,數(shù)據(jù)位8,rootfs掛載于emmc器件,文件系統(tǒng)類型為vfat,
“rootaddr=10M rootsize=15M rw”處對應(yīng)填入rootfs.img的燒寫起始位置與長度,此處與IDE中新增rootfs.img文件時所填大小必須相同。
saveenv;表示保存當(dāng)前配置。
reset;表示復(fù)位單板
[可選]“go 0x80000000”默認(rèn)配置已將指令固化在啟動參數(shù)中,單板復(fù)位后可自動啟動。若想切換為手動啟動,可在U-boot啟動倒數(shù)階段使用“回車“打斷自動啟動。
|
- 輸入**“reset”**指令并回車,重啟單板,啟動成功如下圖,輸入回車串口顯示OHOS字樣。
圖 10 系統(tǒng)啟動圖
執(zhí)行應(yīng)用程序根目錄下,在命令行輸入指令“
./bin/camera_app”執(zhí)行寫入的demo程序,顯示成功結(jié)果如下圖所示。
圖 11 應(yīng)用程序啟動圖 |
|