本帖最后由 薰-- 于 2020-6-1 22:56 编辑

1.计划
eMiniBoard板载的主控芯片是一颗SoC芯片,是一颗带有蓝牙功能的Cortex-M3的芯片。所以我还是从最基本的开始熟悉,首先它还是一个MCU,那我们就先把MCU的所有功能根据硬件原理图的设计先玩转起来,下一步我们再来深入的去研究蓝牙那一部分。所以这往篇文章主要是熟悉MM32W373PSB芯片MCU的部分。

2.验证功能
2.1.彩色LED闪烁;
2.2.用户按键识别,支持长按和短按;
2.3.通过PWM控制蜂鸣器响,并支持音量调节
2.4.通过I2C1操作EEPROM AT24C02N进行读写操作;
2.5.通过SPI2操作SPI FLASH HK25Q16C进行读写操作,获取芯片ID等操作;
2.6.通过ADC来检测RV1调节输出的电压值;
2.7.通过UART2实现Letter-shell的应用(这个是借鉴的面包板的某一位大拿的程序,参考他的代码写的,感觉很实用哈^^);

3.硬件原理图

001.png

4.创建KEIL工程

4.1.打开Keil MDK-ARM软件,点击菜单栏的Project->New uVision Project...创建一个新的工程;
002.png

4.2.在弹出的Create New Project窗口中选择工程路径,输入工程名称,点击保存;
003.png

4.3.选择芯片型号如下图所示:
004.png

4.4.在弹出的Manage Run-Time Envrionment窗口中,直接点击OK;到此我们的空的工程就创建完成了,接下来我们需要添加文件到工程中,并对工程进行相应的配置设置;
005.png

4.5.点击Manage Project Items图标,如下图所示:
006.png

4.6.在弹出的窗口中修改Project Targets,在Group和相对应的Files添加文件,然后点击OK,如下图所示:
007.png 008.png

4.7.点击Configure Target Option图标,对当前的工程进行配置设置,如下图所示:
009.png

4.8.程序中用到了printf函数,这边勾选Use MicroLIB选项;
010.png

4.9.勾选输出文件,如下图所示:
011.png

4.10.定义USE_STDPERIPH_DRIVER宏,使用标准HAL库,勾选C99 Mode,方便变量随时定义,然后设置文件的包含路径,如下图所示:
012.png 013.png

4.11.在调试选项卡中,使用MM32-LINK Debugger工具(板载的MM32-LINK OB)进行调试;
014.png

4.12.在最后的Utilities选项卡中,选择使用与调试一样的设备来给芯片下载程序,并对下载设置选项进行配置,如下图所示:
015.png 016.png

4.13.到此我们的工程就完全建立好了,我们点击编译工程,确认无误;
017.png


5.调试运行

5.1.我们将编译无误的程序下载到开发板运行,此时LED灯每间隔100ms快速闪烁;我们通过USB转TTL工具,通过PC端口的串口调试软件与UART2进行数据交互;我们可以看到UART2输出的消息;我们在PC串口软件中输入help命令,查看当前shell支持的所有指令,如下图所示:
101.png

5.2.我们依次输入shell支持的所有指令,对板载的硬件资源进行测试,如下图所示:
102.png

5.3.如下图所示是测试用户按键的输出消息:
103.png

6.到此基于eMiniBoard MB-021开发板的板载硬件资源就全都测试完成了,后面将要来开始蓝牙部分的移植、功能测试和验证了^^为了方便大家,最后我还是把我的工程及源码分享一下吧,有详细的注释和说明(有些地方省略了些^^),不过有不明白的,大家可以一起讨论嘛^^
eMiniBoard MB-021 From 薰--.rar (666.45 KB, 下载次数: 49)
全部回复 1
  • 22 主题
  • 39 帖子
  • 2117 积分
身份:LV5 资深技术员
E币:542
回复楼主
您需要登录后才可以评论 登录 立即注册