浅谈ST B-L462E-CELL1在IOT的应用及软件配置

B-L462E-CELL1是ST一块基于蜂窝网络的开发板,其主要应用就是在IOT市场。它一共分为主板,天线,风扇驱动板三部分。

其中主板以LBAD0ZZ1SE模块为核心,该模块包含一颗低功耗的MCU:STM32L462REY6TR,一颗LTE模块:LBAD0XX1SC-DM,一个GSMA认证SIM卡:ST4SIM-200M和1M QSPI Flash。同时主板上还集成了多个传感器:六轴传感器: LSM303AGR,温湿度传感器:HTS221,气压传感器:LPS22HH,外置64M QSPI Flash,16M EEPROM,低功耗带PCM和I2C接口的CODEC。

STM32L462REY6TR是ST一颗超低功耗MCU,基于Arm Cortex-M4内核,内置512KB flash,16KB RAM,带AES硬件加密,WLCSP64封装,尺寸低至:3.36X3.36,待机模式下功耗可低至106nA。

 大大购相关商品  B-L462E-CELL1 >> 查询存货及售价


该开发板集成了各种传感器,可用于在大部分IOT应用的开发,如:智能家居,智慧农业,智慧城市等。下面就ST的MCU的配置工具STM32CubeMX,简单介绍该Demo板用ST的工具如何生成代码:

  1. 打开STM32CubeMX,选择“Start My project from ST Board”;  

2.  输入“B-L462E-CELL1”,出现该开发板后,直接双击开发板,这时候会提示“Initialize all peripherals with their default Mode?”,直接点选“Yes”。
 


3. 生成如下图界面,绿色的部分是按照开发板的功能已经配置好的MCU的引脚定义,也可以按照自己需要的功能去进行配置。



4. 以 PC4 为例,目前配置为USART3_TX,如果需要更改其引脚定义,双击改PC4,选成其他定义,同时在左边对应的Connectivity,Analog或者Timer中配置成
对应的功能。


5. 进入Project Manager界面,在Project Name下面敲入项目名称(英文),在Toolchain/IDE下面选择对应IDE,再选择“Generate Code”即可生成对应的开发
板基础配置代码。



       以我们的生成的代码为例,STCubeMx主要是生成各个外设的初始化配置,如果要启动该外设,需要加入对应外设:如ADC,UART,TIM等启动代码。为了后续
在该项目中STCubeMx工具可以持续使用,用户新增的代码建议加入在“User code begin”and “User code End”中间,这样就算以后需要重新用STCubeMx配置,
也不会影响到原来用户新增的代码。
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();


/* Configure the peripherals common clocks */

PeriphCommonClock_Config();

/* USER CODE BEGIN SysInit */

/* USER CODE END SysInit */

/* Initialize all configured peripherals */

MX_GPIO_Init();

MX_ADC1_Init();

MX_I2C1_Init();

MX_QUADSPI_Init();

MX_RNG_Init();

MX_RTC_Init();

MX_SPI1_Init();

MX_SPI3_Init();

MX_TIM2_Init();

MX_TIM3_Init();

MX_USART1_UART_Init();

MX_USART2_UART_Init();

MX_USART3_UART_Init();

MX_USB_PCD_Init();

/* USER CODE BEGIN 2 */

/* USER CODE END 2 */

/* USER CODE BEGIN RTOS_MUTEX */

/* add mutexes, ... */

/* USER CODE END RTOS_MUTEX */

/* USER CODE BEGIN RTOS_SEMAPHORES */

/* add semaphores, ... */

/* USER CODE END RTOS_SEMAPHORES */

/* USER CODE BEGIN RTOS_TIMERS */

/* start timers, add new ones, ... */

/* USER CODE END RTOS_TIMERS */

/* USER CODE BEGIN RTOS_QUEUES */

/* add queues, ... */

/* USER CODE END RTOS_QUEUES */

/* Create the thread(s) */

/* definition and creation of defaultTask */

osThreadDef(defaultTask, StartDefaultTask, osPriorityNormal, 0, 128);

defaultTaskHandle = osThreadCreate(osThread(defaultTask), NULL);

/* USER CODE BEGIN RTOS_THREADS */

/* add threads, ... */

/* USER CODE END RTOS_THREADS */

/* Start scheduler */

osKernelStart();

/* We should never get here as control is now taken by the scheduler */

/* Infinite loop */

/* USER CODE BEGIN WHILE */

while (1)

{

   /* USER CODE END WHILE */

   /* USER CODE BEGIN 3 */

}

/* USER CODE END 3 */

}


       

        这样我们一个完整的基于B-L462E-CELL1开发板的代码就生成了,用户也可以按照自己的实际需求去更改。在烧录程序的部分,因为该开发板已经集成了ST-LINK,

所以可以使用IDE或者STM32CubeProgrammer工具直接烧录,不需要再另外外接烧录工具。


官方参考链接:

B-L462E-CELL1开发板:https://www.st.com/en/evaluation-tools/b-l462e-cell1.html

参考代码:https://www.st.com/content/st_com/en/products/embedded-software/mcu-mpu-embedded-software/stm32-embedded-software/stm32cube-mcu-mpu-packages/stm32cubel4.html




★博文内容均由个人提供,与平台无关,如有违法或侵权,请与网站管理员联系。

★文明上网,请理性发言。内容一周内被举报5次,发文人进小黑屋喔~

评论