本帖最后由 新曲难觅旧知音 于 2023-7-11 07:38 编辑
很幸运啊,能够得到这次评测机会。板子到手之后就迫不及待开始捣鼓了。 一、开箱
此开发板所用芯片为STM32第三代2.4GHz无线产品,基于Cortex-M33单核SoC ,最高主频100MHz 最高发射功率达到+10dB 支持 BLE 5.3 全部功能,比如: long-range,1/2M 传输速率、 LE audio、扩展广播, AOD/AOA,.LE增强版连接更新功能,BLE 以及 802.15.4的私有协议,支持matter相关应用。
和第一代一样,支持动态或者静态的多协议切换。另外,因为它是基于Cotex-M33核,具有更高的安全性能,支持SESIP-L3, 同时基于新一代ST MCU低功耗平台,具有更优的低功耗性能。
外观来看板子背面是板载的stlink,旁边还预留了Type-C接口的位置。
正面左右两边分别引出了两排引脚。中间这两个不对称排座感觉非常熟悉啊,翻看手册果然是支持arduino盾板。
想要快速上手一块板子,那就去看它的用户手册。
附手册下载链接:https://www.st.com/resource/en/user_manual/um3103-stm32wba-nucleo64-board-mb1863-stmicroelectronics.pdf
从第六章节Quickstart可以看到板子自带了一个与手机通信的demo
按下开发板B1时手机报警状态会切换,按下app里的灯时,蓝色的led会被点亮
按照提示去App Store或者GooglePlay下载相应上位机就可以体验,考虑到网络不通畅的问题这里附上安卓app的下载链接 附安卓app下载链接:
https://www.st.com/content/ccc/resource/technical/software/application_sw/group0/d0/6c/8e/95/d2/c8/43/15/STBLESensor_download/files/stblesensor_apk.zip/jcr:content/translations/en.stblesensor_apk.zip
二.呼吸灯
CubeMX的安装方法网上教程有很多,这里就不展开赘述了。
至于初始化的io引脚接线图,可以在手册第七章找到。上面标注了按钮和LED的连接引脚。
虽然在cubeMX里面可以通过开发板创建工程。但本节我们只是点个灯,用不到这么多引脚配置。我们就用芯片型号创建一个空的工程吧。
首先配置时钟,频率就直接拉满吧。注意选择HSE,如果是灰色的需要在RCC配置的HSE里选择外部晶振。本开发板带的外部晶振是32M的。
通过手册的io引脚接线图可以看出LED1是接在PB4号引脚的,PB4引脚为定时器1通道3引脚。用作PWM输出时,主要设置:
1.预分频寄存器PSC:决定时钟频率,定时器时钟频率为100M,分频后为为100M/(99+1)=1M
2.自动重装载寄存器ARR:决定PWM输出周期,此处设置为500 主要配置的地方就这些了,先生成文件。然后直接编译下载试一下。
发现报错。我们只需要点击“魔术棒”->Debug->Setting->Flash Download->添加对应FLM文件即可。
再次下载,程序烧录正常,开发板三个灯全部熄灭。 下面开始编写呼吸灯代码:
这里duty_num用来设置一个周期中高电平的时间。
灯最亮的时候高电平时间为0,为了30次将0变成500,每次让duty_num增大500/30,就是17。变暗同理
main函数代码:
int main(void)
{
HAL_Init();
SystemClock_Config();
MX_GPIO_Init();
MX_TIM1_Init();<p></p>
<p style="line-height: 30px; text-indent: 2em;"> HAL_TIM_PWM_Start(&htim1,TIM_CHANNEL_3);
uint16_t status = 0;
int16_t duty_num = 0;</p>
<p style="line-height: 30px; text-indent: 2em;"> while (1)
{
HAL_Delay(50);
if (status == 0){
duty_num = duty_num + 17;
if(duty_num > 500){ status = 1; duty_num = 493;}
}
else{
duty_num = duty_num - 17;
if(duty_num < 17){ status = 0; duty_num = 17;}
}</p>
<p style="line-height: 30px; text-indent: 2em;"> __HAL_TIM_SetCompare(&htim1,TIM_CHANNEL_3,duty_num);</p>
<p style="line-height: 30px; text-indent: 2em;"> }
}</p>
演示视频:
至此,点灯结束。因为这是块蓝牙开发板,所以蓝牙评测报告已经在路上了!!
|