內(nèi)容簡介
本文利用星閃BS25開發(fā)板NL001測試一下官方sdk中的外設(shè)程序,以便熟悉外設(shè)的基本操作。
測試工具
Operating system:Windows 10 home
deveco-device-tool-all-in-one:1.1.1_beta2
DevTools_CFBB:1.0.5
Compiler:CFBB IDE 1.0.3
Sdk:20230928
BurnTool:5.0.34
DebugKits_CFBB:3.0.98
Python:3.8.10
VSCode:1.66.2
Here we go
本文通過寫一個程序讓這塊開發(fā)板上的三顆LED輪流點(diǎn)亮:
這幾顆LED從下往上分別連接了BS25的S_AGPIO12、S_AGPIO07和S_MGPIO30,并且當(dāng)GPIO輸出高電平時LED會點(diǎn)亮。
我們采用blinky程序進(jìn)行修改。先“pythonbuild.py standard-bs25-app-evb menuconfig”配置工程為blinky:
然后打開blinky_cmsis.c,修改以下代碼:
#defineLED_R S_AGPIO12
#defineLED_B S_AGPIO7
#defineLED_W S_MGPIO30
staticvoid *blinky_task(constchar *arg)
{
unused(arg);
uapi_pin_set_mode(LED_R, HAL_PIO_FUNC_GPIO);
uapi_gpio_set_dir(LED_R, GPIO_DIRECTION_OUTPUT);
uapi_gpio_set_val(LED_R, GPIO_LEVEL_LOW);
uapi_pin_set_mode(LED_B, HAL_PIO_FUNC_GPIO);
uapi_gpio_set_dir(LED_B, GPIO_DIRECTION_OUTPUT);
uapi_gpio_set_val(LED_B, GPIO_LEVEL_LOW);
uapi_pin_set_mode(LED_W, HAL_PIO_FUNC_GPIO);
uapi_gpio_set_dir(LED_W, GPIO_DIRECTION_OUTPUT);
uapi_gpio_set_val(LED_W, GPIO_LEVEL_LOW);
while (1)
{
osDelay(1000);
uapi_gpio_set_val(LED_R, GPIO_LEVEL_HIGH);
uapi_gpio_set_val(LED_B, GPIO_LEVEL_LOW);
uapi_gpio_set_val(LED_W, GPIO_LEVEL_LOW);
osDelay(1000);
uapi_gpio_set_val(LED_R, GPIO_LEVEL_LOW);
uapi_gpio_set_val(LED_B, GPIO_LEVEL_HIGH);
uapi_gpio_set_val(LED_W, GPIO_LEVEL_LOW);
osDelay(1000);
uapi_gpio_set_val(LED_R, GPIO_LEVEL_LOW);
uapi_gpio_set_val(LED_B, GPIO_LEVEL_LOW);
uapi_gpio_set_val(LED_W, GPIO_LEVEL_HIGH);
}
returnNULL;
}
完成后rebuild工程,燒錄到板子中測試,發(fā)現(xiàn)LED根本不亮。
拿示波器分別測試三個IO口,發(fā)現(xiàn)電平是有變化的,所以懷疑是驅(qū)動能力不夠,檢查硬件大概是這樣的情況:
所以驅(qū)動能力不夠是很有可能的。
嘗試使用pinctrl來設(shè)置驅(qū)動能力和上下拉:
也沒有把LED點(diǎn)亮。
后來測試發(fā)現(xiàn),是限流電阻太大,然后GPIO的電壓也只有1.8V,開發(fā)板上的B和W兩顆LED點(diǎn)亮電壓高于1.8V的,所以導(dǎo)致了無法驅(qū)動的問題,程序本身應(yīng)該是沒啥問題的。
所以把LED R前的電阻短路掉,就可以正常點(diǎn)亮R這顆LED了(加不加上面的pinctrl代碼都可以點(diǎn)亮),而另外兩顆由于電壓的關(guān)系無法點(diǎn)亮。
最終跟開發(fā)板商家確認(rèn)了,NL001版本的開發(fā)板在LED那塊設(shè)計是存在缺陷的,問題會在后面版本中修復(fù)。當(dāng)然,手頭的NL001只能自己改一下電阻和LED來解決問題了。。。
審核編輯:湯梓紅
-
程序
+關(guān)注
關(guān)注
117文章
3785瀏覽量
81004 -
開發(fā)板
+關(guān)注
關(guān)注
25文章
5032瀏覽量
97375 -
SDK
+關(guān)注
關(guān)注
3文章
1035瀏覽量
45902 -
星閃
+關(guān)注
關(guān)注
6文章
118瀏覽量
588
原文標(biāo)題:遙遙領(lǐng)先,星閃芯片BS25外設(shè)程序測試--Blinky
文章出處:【微信號:TalkBT,微信公眾號:藍(lán)牙】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論