[PB-03F-kit] 在Keil5平台上实现PB03F的点灯

[复制链接]
查看258 | 回复2 | 3 天前 | 显示全部楼层 |阅读模式

本帖最后由 ChillYo 于 2024-12-1 16:09 编辑

本帖最后由 ChillYo 于 2024-12-1 15:43 编辑

目标: 实现PB-03F蓝牙模块的点灯操作

0.准备工作

在点灯前,你需准备好以下东西: 1.Keil5 2.PHY62XX SDK 3.PhyPlusKit。

对于Keil5的安装,由于网上教程非常丰富,所以这里就不提了。

然后就是PHY62XX SDK和PhyPlusKit,这些东西可以在下面这个网站上下载

http://www.phyplusinc.com/support/4.html

本篇使用的蓝牙模块是基于PHY6252芯片进行设计的,所以找到这个,然后下载就好了

image.png

image.png

1. Keil5环境搭建及代码编写

1.1 在上述的材料都安装好后,打开PHY62XX SDK所在的文件夹

image.png

然后进入example里面,打开peripheral,打开gpio文件夹,最后打开gpio.uvprojx 即可打开工程文件

1.2 打开工程文件后,点击"魔术棒"

image.png

点击C/C++选项,在Preprocessor Symbols处的 Define 那

将CFG_SLEEP_MODE=PWR_MODE_SLEEP改为CFG_SLEEP_MODE=PWR_MOD_NO_SLEEP。

image.png

因为芯片休眠了,LED的输出也会关闭。

CFG_SLEEP_MODE=PWR_MODE_SLEEP :使能低功耗模式,固件程序执行过程中, 会在空闲过程进入睡眠,睡眠之后调试器无法进行调试跟踪,断点也失效 CFG_SLEEP_MODE=PWR_MOD_NO_SLEEP :关闭低功耗模式,固件程序执行过 程中,处理器一直处于唤醒状态。

1.3 修改函数

image.png

修改gpio_demo.c函数,找到该函数里面的void Key_Demo_Init(uint8 task_id),将整个函数给注释掉。

然后新写1个

void Key_Demo_Init(uint8 task_id)
{
    key_TaskID = task_id;// 任务id,先暂时不用管。

    // 此写函数默认会调用hal_gpio_pin_init(pin,GPIO_OUTPUT);
    hal_gpio_write(GPIO_P18,HAL_HIGH_IDLE); // GPIO18 输出高电平,点亮LED
}

然后点击编译 image.png

编译完后会出现警告,一般都是由于没有用到某些函数所致,这里可以忽略掉

对了,记得在魔术棒那设置

image.png

在烧录时需要该文件,勾选后,再进行一次编译,以确保HEX文件生成

2. 烧录

开发板连接电脑,打开PhyPlusKit软件(之前下载的)

打开软件后,首先勾选右上区域的UART Setting选项,然后打开你连接开发板对应的端口(我的是COM11),然后将波特率设置成UXTDWU image.png

点击Connect

此时会看到右侧一直输出 UART TX ASCII:UXTDWU。说明开发板连接成功。

长按开发板上边上有RST的复位按键,2秒左右,然后松开

此时右侧会出现下图,且波特率自动变为115200.

image.png

烧录前,需先擦除程序,点击Erase

image.png

右侧会显示擦除成功。然后点击上图红圈中APP右侧白色方框,双击,选择后缀为hex目标文件(编译生成的固件在bin目录下)

然后点击Write,进行烧录

若右侧区域显示

image.png

则代表烧录成功

烧录成功后,拔掉开发板的线,然后再接上,此时开发板的RGB灯被点亮,为蓝色。

91ec5773708b68548234f01594fc1d5.jpg

目标完成

回复

使用道具 举报

这么速度
回复

使用道具 举报

爱笑 | 前天 08:48 | 显示全部楼层
不错不错~点灯完成
用心做好保姆工作
回复 支持 1 反对 0

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则