AliOS Things IOT開發(fā)板初體驗(基于STM32L496VGTx)
關(guān)注嵌入式云IOT技術(shù)群,給你帶來更多精彩!
這款開發(fā)板出廠默認帶的是AliOS Things,官方推薦用AliOS-Things uCube來開發(fā)具體的應(yīng)用,就連源碼也是通過STM32CubeMX工具生成基本的IO配置和功能后,在HAL庫基礎(chǔ)上繼續(xù)二次開發(fā),個人用得不爽,不爽就換回Keil環(huán)境吧,期間遇到一個問題,順便記錄了一下。
凡使用一款開發(fā)板,先點燈,點燈是第一步,接下來才有其它的工作,點燈程序一樣還是基于STM32CubeMX創(chuàng)建,然后在Keil MDK上來實現(xiàn),先來看看板子上的第一個LED的硬件連接圖。
如原理圖所示,LED接在PB6這個管腳,當往該IO寫入低電平時,LED點亮,反之LED燈熄滅,接下來開始打開STM32CubeMX,開始基本配置。
一、新建一個STM32L496VGTx的工程(基于STM32L496VGTx)
1.1 時鐘配置
這里默認選擇的是外部晶振源提供的時鐘,然后默認配置最高的主頻。
1.2 配置LED
1.3 生成Keil MDK工程
int main(void)
{
/* USER CODE BEGIN 1 */
/* USER CODE END 1 */
/* MCU Configuration--------------------------------------------------------*/
/* Reset of all peripherals, Initializes the Flash interface and the Systick. */
HAL_Init();
/* USER CODE BEGIN Init */
/* USER CODE END Init */
/* Configure the system clock */
SystemClock_Config();
/* USER CODE BEGIN SysInit */
/* USER CODE END SysInit */
/* Initialize all configured peripherals */
MX_GPIO_Init();
/* USER CODE BEGIN 2 */
/* USER CODE END 2 */
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
HAL_GPIO_TogglePin(LED_GPIO_Port, LED_Pin);
HAL_Delay(200);
}
/* USER CODE END 3 */
}
如代碼所示,HAL_GPIO_TogglePin這個函數(shù)會讓LED所對應(yīng)的IO翻轉(zhuǎn)高低電平,由于加了延時200ms,所以看到的效果就是LED快速的閃爍。
開發(fā)板使用的是USB轉(zhuǎn)ST_Link,所以在此之前需要安裝驅(qū)動,板子的開發(fā)資料也已經(jīng)提供了,板子所有的資料包括源代碼都在Github上提供,感興趣的朋友可以去下載。
https://github.com/alibaba/AliOS-Things/wiki/Developer-Kit-Tutorial
如果不下載對應(yīng)驅(qū)動的話,Keil是識別不了SW Device的,安裝驅(qū)動后如下圖所示:
原因是發(fā)現(xiàn)Keil沒有添加對應(yīng)STM32L4XXX相關(guān)的的FLASH算法,我們把算法添加進去后再次點擊下載即解決問題。
二、 運行結(jié)果
免責聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺僅提供信息存儲服務(wù)。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!