[STM32L0]从零开始开始NOCLEO—L073之呼吸灯之旅

【开发板介绍】
NUCLEO-L073RZ(stm32l073rzt6芯片)开发板,整体上这个板子沿用了传统的塑料包装。  简约不简单,内含纸板双面分别标有引脚图及芯片简单介绍和入门引导。Arduino™的连接支持和ST Morpho的扩展连接头使用户很容易扩大STM32 Nucleo板对外开发平台的功能,该平台提供了多种可供选择的适配外设板。STM32的Nucleo板集成了ST-LINK/V2-1调试器/编程器,和STM32 Nucleo板搭配的软件包有包含了众多例程的STM32 HAL软件库,在mbed在线平台上也能找到。
 


该开发板整体结构分为两部分,下载器部分和核心板部分独立分布,其中含有USB接口一侧的板为stlink下载仿真部分,按键及排针排座那一部分为主电路部分。灵活的跳线帽选择,可以使得我们还可以下载与调试其他stm32开发板,只需断开印有丝印“ST—LINK”的跳线帽,同时将CN4排针与其他stm32开发板相连即可。
 


核心板部分的外扩接口为Arduino标准接口,可以无缝对接常用的传感器,可以使得用户很快的投入研究与使用。无需自己跳线连接。板载一个低速的32768hz的晶振,毕竟主打低功耗芯片,主时钟选择内部振荡器,可以更加减少PCB布局,节约成本等。
开发板附带的彩页,注明STM32L073RZT6的主控芯片为ARM-Contex-M0+,32M主频,192KB的FLASH,20KB的内存,开发板板载了Arduino Uno标准接口与ST morpho接口,板载STM-LINK V2版本进行调试与下载固件。
 


【开发环境简介】
开发板可以在 win、Linux、MacOS下面进行开发。
开发工具支持MDK、IAR以及stm32cubeIde。
官方提供了stm32cube对开发板的RTOS、USB以及外设的示例。
本次开发采用win11下stm32cubeIDE进行示例的创建、编译、下载与调试。
【创建呼吸灯】
开发板板载了给用户使用的LED灯1个,一个用户使用的按键。工程达到的效果为实现呼吸灯。
1、下载与安装stm32CubeIDE(省略)。
2、打开stm32CubeIDE,(菜单:file->new->STM32 Project)打开新建stm32project对话框,选择board select,新建开发板工程,查询出开发板后选定,按下一步继续配置工程
 


3、输入工程名称后,按完成,等待工程创建完毕:
 


第一次生成工程需要等待从官网下载固件包,完成后就生成了工程:
 


4、要实现呼吸灯,需要配置LED2为PWM输出。在图上点击PA5切换到TM2-CH1。
 


5、配置钟频率为32MHz,同时TIM2总线的时钟也是32MHz:
 


6、使能TIM2通道1为PWM输出,时钟源为内部时钟(32MHz),分频为32,计数器为1000,即PWM波为1KHz的频率,使用自动重载,初始占空比为0。
 


7、选择生成单独的工程文件。按ALT+K或者工具栏上的按键生成代码。
 


8、添加用户代码:
首先添加使能tim2 channel1:
HAL_TIM_PWM_Start(&htim2, TIM_CHANNEL_1);
然后添加呼吸灯代码,代码首先对占空比累加,达到100%后,我们再累减到零,往复修改形成呼吸灯的效果。

复制

/* USER CODE BEGIN WHILE */



while (1)



{



/* USER CODE END WHILE */



/* USER CODE BEGIN 3 */



if(F == 0)



{



dutyCycle = dutyCycle+50;



if(dutyCycle >= 1000)



{



dutyCycle = 1000;



F = 1;



}



}



else{



dutyCycle = dutyCycle-50;



if(dutyCycle <= 0)



{



F = 0;



dutyCycle = 0;



}



}



__HAL_TIM_SET_COMPARE(&htim2,TIM_CHANNEL_1,dutyCycle);



HAL_Delay(50);



}




 


生成代码后,下载到开发板,用示波器接到PA5上观察PWM波形,从示波器上看频率为1KHz,与程度设计的一样。
 


视频效果如下:

【试用心得】
Stm32的生态非常好,特别是官方的开发板,stm32cubeIDE的开发板的创建工程非常简单,配置外设也是图形化的配置,用户体验感非常好。。
---------------------
作者:lulugl
链接:https://bbs.21ic.com/icview-3336490-1-1.html
来源:21ic.com
此文章已获得原创/原创奖标签,著作权归21ic所有,任何人未经允许禁止转载。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值