EFM8这款开发板确实与众不同,他的开发环境simplicity studio刚一打开就有点措手不及,感觉无从下手,加上EFM8 UniversalBEE上的元器件非常多,所有不花点时间还真有点看不明白。 经过几天的研究,现在对于EFM8的开发环境终于有点认识了,这里总结一下我的使用心得。 刚一打开Simplicity studio软件,我没有连接开发板,感觉软件启动时间有点长,而且我根据了解想要建一个工程来测试一下IDE时,他居然卡主不动了,害得我必须手动杀掉这个软件。 当我拿到开发板后,一切就都顺当了,而且体现出了他的人性化一面。
如图所示,一旦开发环境检测到接入了熟悉的开发板,将与这个开发板有关的Demos,Software Examples,SDK Documentation全都列了出来。我依然按照传统方法上网去查询所有的资料,看来有点耽误工夫了。
IDE左边列出了仿真器J-Link,右边列出了开发板型号及相关的资料。
1、 根据例子建立一个测试程序
既然手头有开发板,开发环境也顺当了,测试一个代码就顺利成章了。我先测试个串口通讯吧。
EFM8提供了2个UART,其中UART0通过仿真器的虚拟串口接入了系统中,这个非常方便啊,自然就测试他了。
但是我们必须先了解一下他是怎么连接到虚拟串口上的,要不一会儿代码看不懂了。
这里可以看到EFM_BC_RX和EFM_BC_TX分别连接到了UART0_RX和UART0_TX引脚上,这两个引脚分别位P0.5和P0.4。
从这张图上我们就可以确认,EFM8的UART0的收发引脚确实连接到了仿真器系统的VCOM虚拟串口端。我们还必须注意到,这里还有一个EFM_BC_EN引脚,这个引脚是使能虚拟串口的,代码中也会有所体现的。
这里我们可以了解到,EFM_BC_EN引脚为P2.0。
选择UART的示例工程EFM8UB1_UART_Lib_STDIO。
1、 工程中修改硬件参数和查看引脚分配 打开刚刚建立的新工程,我们可以看到一个非常特殊的文件.hwconf文件,这个是针对EFM8的硬件配置文件,比较人性化。
可以观察到芯片各个引脚的分配关系
可以查看和设置外设的参数
重要的一点,这里设置的参数,在保存硬件配置的时候,同时会生成代码,硬件初始化代码就完成了,太好了,完全不用操心细节,非常人性化。
1、 基本软件代码 硬件缺省模式初始化。
- enter_DefaultMode_from_RESET();
复制代码
串口初始化
这个就是前面提到的,一个是显示使能,这个开发板的液晶显示可以用于仿真器,也可以用于EFM8,这条就是一个选择。另一个就是串口连接选择了,只有通过使能,才可以通过仿真器的虚拟串口与PC串口软件通讯。
- BSP_DISP_EN = BSP_DISP_BC_DRIVEN; // Display not driven by EFM8
- BSP_BC_EN = BSP_BC_CONNECTED; // Board controller connected to EFM8
- // UART pins
复制代码
总结: simplicity studio开发环境对于EFM8的开发来说非常的方便,尤其是硬件配置过程非常人性化,大大的简化了软件开发人员的工作量,高效节能。
|