使用PKE8720DF-C13-F10(AMB26)开发板——周期性点亮LED灯

目录

1. PKM8720DF-C13-F10模块介绍

 2. 开发环境准备

(1)Windows和Linux编译环境准备

(2)获取源代码

3. 使用SDK自带的example来周期性点亮LED灯

(1)如何跑example code里面的main.c

(2)对example code进行编译生成bin文件

(3)安装模组驱动

(4)进入Flash Download Start模式

(5)烧录3个bin文件到模组

(6) 周期性点亮LED灯


1. PKM8720DF-C13-F10模块介绍

PKM8720DF-C13-F10是基于RTL8720DF开发的双频Wi-Fi(2.4G+5G)+蓝牙低功耗 BLE 5.0 双模SoC模组。它集成了Real-M300(兼容 Cortex-M33)高性能 MCU、Real-M200(兼容 Cortex-M23)低功耗 MCU、WLAN(802.11 a / b / g / n)、MAC,蓝牙基带和 RF 基带,并提供了一组可配置的 GPIO 口,用于不同外围设备的控制。PKM8720DF-C13-F10同时集成了内部存储器,支持应用程序二次开发,可实现完整的 Wi-Fi 和 BT 5.0 协议功能。

PKE8720DF-C13-F10(AMB26)开发板基于PKM8720DF-C13-F10模块可以供用户自己开发且功能强大的板子,使用 USB TypeC 连接器连接到PC,方便用户调试、下载、打印log等。

PKE8720DF-C13-F10(AMB26)开发板

 2. 开发环境准备

(1)Windows和Linux编译环境准备

PKM8720DF-C13-F10模组配套的SDK在Windows和Linux都可以编译,但是还是推荐使用Linux环境下编译。下面介绍两个环境下各自需要准备的package。

Windows:先去http://cygwin.com下载Cygwin package−setup-x86.exe(建议32-bit),安装Cygwin,需要包括‘Devel -> make’ and ‘Math -> bc’。

Linux:以下package需要安装

  • libc6-i386(GNU C library for 64-bit platform. If you are using 32-bit platform, install libc6 instead)
  • lib32ncurses5(32-bit terminal handling for 64-bit platform. If you are using 32-bit platform, install libncurses5 instead)
  • make
  • bc
  • gawk
  • ncurses

可以在Terminal里面输入$ make –v来检测make package存在与否。如果不存在,在Terminal输入$apt-get install make来安装。

以下的使用到的command均是基于Linux环境。

(2)获取源代码

PKM8720DF-C13-F10模组配套的SDK放在了GitHub开源网站:GitHub - ambiot/ambd_sdk: Release SDK for AmebaD

可以使用以下指令把SDK抓下来

$ git clone https://github.com/ambiot/ambd_sdk.git

下载完成后可以看到一个ambd_sdk文件夹,里面还有以下的一些目录及文件。

Notice:需要对 /project/realtek_amebaD_va0_example/GCC-RELEASE/ 目录修改执行权限,例如:$ chmod -R 777 {path}/project/realtek_amebaD_va0_example/GCC-RELEASE/

以防止后面编译的时候出现如下error:

make[1]: execvp: /{path}/ambd_sdk/project/realtek_amebaD_va0_example/GCC-RELEASE/project_lp/asdk/gnu_utility/prepend_header.sh: **Permission denied**
Makefile:198: recipe for target 'linker_loader' failed

3. 使用SDK自带的example来周期性点亮LED灯

(1)如何跑example code里面的main.c

SDK example source code位于project/realtek_amebaD_va0_example/example_sources/。我们当前的example是周期性点亮LED灯,所以需要把project/realtek_amebaD_va0_example/example_sources/GPIO/raw/gpio_level_irq/src/main.c复制到/project/realtek_amebaD_va0_example/src/src_hp来替换里面的main.c

例如:

$ cp ~/ambd_sdk/project/realtek_amebaD_va0_example/example_sources/GPIO/raw/gpio_level_irq/src/main.c ~/ambd_sdk/project/realtek_amebaD_va0_example/src/src_hp

(2)对example code进行编译生成bin文件

前面说到,PKM8720DF-C13-F10模组配备双核MCU:低速MCU(Real-M200)+高速MCU(Real-M300)。由于首次使用模组的时候,高速MCU需要由低速MCU power-on并boot up,所以需要基于以下两个路径分别编译,并且先在project_lp路径下然后在project_hp路径下进行编译$ make all

$ cd /{path}/project/realtek_amebaD_va0_example/GCC-RELEASE/project_lp //低速MCU(Real-M200)

$ cd /{path}/project/realtek_amebaD_va0_example/GCC-RELEASE/project_hp //高速MCU(Real-M300

对于project_lp编译之后,会出现“km0_image2_all.bin” and “Image manipulating end”信息,证明编译成功;

对于project_hp编译之后,会出现“km4_image2_all.bin” and “Image manipulating end”信息,证明编译成功;

如果编译失败,可以在相应的目录下面$ make clean,之后重复以上步骤重新$ make all。 

编译好的bin文件分别位于project/realtek_amebaD_va0_example/GCC-RELEASE/project_lp/asdk/imageproject/realtek_amebaD_va0_example/GCC-RELEASE/project_hp/asdk/image里面,分别copy出来里面的km0_boot_all.bin(project_lp/asdk/image文件夹里面)km4_boot_all.bin(project_hp/asdk/image文件夹里面)km0_km4_image2.bin(project_hp/asdk/image文件夹里面)到Windows系统的某个文件夹里面(主要为了Windows平台烧录工具ImageTool.exe使用,以下会介绍到ImageTool.exe)

(3)安装模组驱动

首次插入模组到PC的时候会要求安装驱动,使用自动安装即可完成。

安装完成后,设备管理器查看会出现如下COM口:例如COM15

 如果驱动安装不成功,可以到https://www.prolific.com.tw/US/ShowProduct.aspx?p_id=225&pcid=41l获取 PLC2303GC 驱动程序。

(4)进入Flash Download Start模式

打开串口调试工具(网上可以找到),选择相应的COM口(例如COM15),设置Baudrate:115200,Data Bits:8,Parity:None,Stop Bits:1bit

按住板子上的Download键不放,按下Reset键并松开,再松开Download键,这时候串口调试工具会吐出:Flash Download Start,可以download bin文件了。

(5)烧录3个bin文件到模组

 SDK里面提供了一个Windows平台烧录工具ImageTool.exe。

ImageTool.exe路径: \tools\AmebaD\Image_Tool\ImageTool.exe,双击打开。

先点击Chip Select(红色字) ,选择AmebaD(8721D)。

找到Serial那一栏,COM:选择对应模组的COM口(例如COM15);Baudrate:1500000(默认)

找到Flash Download那一列,按Image Path里面的名字提示,点击Browse分别选择3个对应的bin文件 :

km0_boot_all.bin

km4_boot_all.bin

km0_km4_image2.bin

点击Download,Tool会打印以下一些信息,直到Tool打印出All images are sent successfully!证明所有的bin文件已经全部烧录完成。

同时,ImageTool.exe还提供了Flash Erase功能,使用Erase功能需要如上面第(4)步一样先进入到Flash Download Start 模式,设置Addr(4字节对齐)和Size(4KB的整数倍),点击Erase button就可以擦除板子的Flash。

(6) 周期性点亮LED灯

Source code默认使用A12和B5 pin

  

但是由于开发板上面没有B5 pin,所有需要将代码改成已有的B20 pin

 重新编译,下载bin文件到开发板。

打开串口调试工具,并与板子连接

如下图接好线(可能需要用到测试钩)

这个example code里面有定义A12作为中断pin,B20作为信号源pin,所以需要将LED灯的长脚接到A12,短脚接GND。

按Reset键让板子boot up起来,板子开始会在串口调试工具里吐出“low level event”信息;

再用杜邦线连接B20到A12,这时候可以观察到LED灯周期性点亮。

同时串口调试工具会吐出以下信息:

 

同时,我们会看到板载RGB灯和外接的LED灯同时亮灭,这是因为板载RGB灯是由A12,A13和A14控制,并且当前的实验正好使用A12作为中断pin来周期性点亮外接的LED灯。

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值