jjy 发表于 2013-12-16 11:00:17

【STM32F030开发日志】无线信号采集及控制终端(2014年1月2日更新)(持续更新中...)

 收到开发板
寄出第三天就收到开发板了,非常开心,着手准备之前申请的项目,先把用到的东西show一下,主要模块看图,还有光敏电阻和红外发射管也准备了。

刚拿到的STM32F030开发板,这个作为采集控制端
433MHz无线模组和天线,与ST开发板连接
纸板上的是我之前焊好的开发板+无线模组+USB转串口,这个和电脑连接,作为主控端
 
我申请的项目
【STM32F0申请】无线信号采集及控制终端
(1)、为什么申请STM32F0探索套件
替代8位单片机的完美选择,性能可观,外设丰富,价格有绝对优势
(2)、对STM32 F0产品的认知、提问、应用设想
成本低,功能强,作为小设备的智能控制器非常合适,未来在智能家居领域定能大显身手
(3)、提出对套件的学习或使用计划
套件+无线模块+传感器或控制组件,实现无线信号采集及控制终端,评估作为智能家居终端的开发流程以及性能成本预估
(4)、其他相关内容
硬件规划:
手上有433MHz无线模块,体积非常小,天线也小,与套件搭配作为控制终端,锂电池供电
控制组件目前选定为红外发射管,准备控制电视,空调等,传感器选定光敏电阻,采集光线强度
主控端由另外一块开发板加433MHz无线模块组成,通过串口与电脑相连,电脑端串口发送控制命令并接收采集信号,电脑USB供电
 
开发日志
因为这是第一次接触ST的MCU,对于ST的开发流程不了解,所以一切从头开始
 
第一步:搜集资料
对比了一下ST官网和咱们社区提供的资料下载,还是咱们社区的下载组织清晰,下载非常方便,就从社区下载了,怎么下载就不用多说了吧,找到自己需要的文档还是很容易的。
首先下载与开发板相关的所有资料

两个PDF介绍开发板的功能及使用指导,内容不多,看一遍了解即可
一个ZIP是开发板的原理图和PCB,不需要研究,跳过
另一个ZIP就非常重要了,里面包含完整的CMSIS源码和ST写的外设库源码,还包括开发板预烧的demo源码,而且里面有三种开发环境的工程文件,因为我比较习惯用KEIL,其他两种不熟,以后就用keil开发。用keil打开开发板demo工程,所有的源码尽收眼底,全部编译一下,不好,有错误,提示需要更高版本的keil来编译,因为我装的是mdk403版本,编译不过,那只好下载更高版本了。下一步再说。
下载stlink/v2需要的独立下载软件

通过了解,猜想应该是MDK-ARM直接支持STLINK/V2,所以在开发环境里直接可以下载BIN文件和在线调试,但我的习惯,不喜欢打开工程来烧录,编好的bin直接烧比较爽,所以需要一个独立的软件,找到图中这个,没用过,应该没错。安装之后,通过USB线连接开发板,打开软件,连接成功即可,后面再仔细研究。
下载MCU详细资料

这三个文件,必不可少,无论是学习外设库,还是自己修改代码,必须仔细阅读的文档,当然是在用到的时候仔细阅读,现在阅读无任何效果。
 
第二步:下载安装MDK v5.0
下载完全部资料,demo工程还无法编译呢,需要下载mdk-arm更高版本,在百度网盘找到一个mdk v5.0,安装覆盖之前的4.03版本

再次打开demo工程,编译,靠,还是编不过,提示有两个警告和一个错误,不会吧,这么成熟的工程怎么可能有错误,百度搜索发现有人有同样问题,原因是之前有安装ADS1.2开发环境,环境变量有冲突,解决的办法是删除ADS的环境变量,具体的操作参见下面的链接
http://www.360doc.com/content/13/0129/16/10906019_263076090.shtml
搞定之后,编译,成功了,哈哈,终于可以正式开始啦
 
第三步:熟悉开发流程
所有资料工具准备妥当,首先熟悉一下开发流程,看看还有没有什么问题需要解决。熟悉的方法是自己修改一下demo工程,用串口输出一些东西,PC端用串口命令来控制led的状态。
 
修改代码
代码修改是基于demo工程的,首先要了解一下工程代码结构,熟悉一下代码封装,需要一个函数一个函数往里跟,跟上几遍就大概了解了。经过断断续续的看代码阶段了解的差不多,开始修改代码,主要是串口部分的代码,为了了解整个库函数,尽量使用库来完成。主要修改的两个文件main.c和stm32f0308_discovery.c,这里就不细说了,可以看附件demo_code.rar。另外两个文件只修改了一点点,一个是与stm32f0308_discovery.c对应的stm32f0308_discovery.h里新加函数的申明

附件在这里:

另一个是库函数文件stm32f0xx_usart.c中初始化结构体函数修改了波特率

修改code的过程也是断断续续摸索过来的,不见得有多好,只是为了方便测试。
编译生成固件
修改完代码之后,在编译之前,先打开工程选项页面,打开output选项卡,将生成HEX文件的选项勾上,好像默认没勾。然后点击编译,就生成了固件HEX文件。

下载固件
将开发板通过USB连电脑,打开ST-LINK Utility,然后点击连接按钮,就可以看到片上flash的内容,点击打开文件按钮,将工程编译生成的HEX文件加载进来,先点击擦除整片,然后点击烧录验证,显示烧录成功即可。具体的软件使用很简单,无需多说。

另一种烧录方式是用KEIL的flash download功能,uvision 5默认的安装好像不支持stm32f0x系列的烧录和debug,需要加装一个支持包。在keil的安装目录下找到PackInstaller.exe打开,在里面找到STM32F0xx的软件包,点击安装开始下载并安装,完成之后关掉。

再打开keil的工程选项,打开Utilities选项卡,选择ST-Link Debugger,然后点击setting,在弹出的页面中点击Add,在弹出的列表中选择STM32F0xx,全部确定之后,就可以用keil烧录了。

工程编译过后,点击keil的load按钮,显示下载成功。
 
 验证功能
如果用keil下载的固件,可以勾上上图中reset and run复选框,这样下载完之后就跑起来了。通过usb转串口ttl小板连接开发板PB6(TX),PB7(RX)到电脑,打开串口软件,连接串口,开发板reset,可以看到串口USART1的信息打出来了,然后通过发送窗口随便发送字符,可以看到led闪烁频率在顺序改变,同时返回BlinkSpeed的当前值,USART1没有使用中断,使用的查询,验证成功。

再将串口PA2(TX) PA3(RX)连接到电脑,reset开发板,看到USART2的信息打出来了,在发送窗口发送0,1,2可以看到led闪烁频率跟着改变,并返回BlinkSpeed当前值,发送别的字符是无效的,这个串口是用中断接受的。验证成功

小结
通过这个小修改,总体感觉外设库总有力不从心的地方,但是如果不同CPU移植起来倒是很方便,所以到底要不要用,自己取舍。开发流程来看,非常方便,keil环境下就可以全部搞定,遇到的问题也都解决掉了,可以开始干正事了。
 
第四步:开发无线信号采集及控制终端
待续。。。

zhenweiaaa 发表于 2020-8-29 14:47:28

谢谢lz分享经验

单片机爱好者 发表于 2019-1-24 14:14:47

没看到结果。。。。

jjy 发表于 2013-12-16 11:03:14

RE:【STM32F030开发日志】无线信号采集及控制终端(持续更新中...)

图片怎么看不到,怎么搞的,编辑状态可以看到

沐紫 发表于 2013-12-16 11:24:41

回复:【STM32F030开发日志】无线信号采集及控制终端(持续更新中...)

我能看到帖子中的图片:)
 
 
已添加到社区网友原创汇总:
STM32F030探索套件开发日志,中文教程,使用问答70篇

steven陈 发表于 2013-12-16 11:28:36

RE:【STM32F030开发日志】无线信号采集及控制终端(持续更新中...)

大神教我做433MHz的发射器吧。:)

feiante-155820 发表于 2013-12-16 11:56:21

RE:【STM32F030开发日志】无线信号采集及控制终端(持续更新中...)

看看。。。。。。。。。。

lkl0305 发表于 2013-12-16 12:24:03

RE:【STM32F030开发日志】无线信号采集及控制终端(持续更新中...)

学习学习!!!:)

jjy 发表于 2013-12-16 13:20:22

RE:【STM32F030开发日志】无线信号采集及控制终端(持续更新中...)

感谢大家捧场,努力更新

星际-1260837 发表于 2013-12-16 15:11:48

回复:【STM32F030开发日志】无线信号采集及控制终端(持续更新中...)

还是很有想法的,不错!

xiaodc88 发表于 2013-12-16 15:12:36

RE:【STM32F030开发日志】无线信号采集及控制终端(持续更新中...)

我来看一看:L;P

zm-361369 发表于 2013-12-16 15:24:13

回复:【STM32F030开发日志】无线信号采集及控制终端(持续更新中...)

我也是初学者,顶一个

jjy 发表于 2013-12-16 16:11:35

RE:【STM32F030开发日志】无线信号采集及控制终端(持续更新中...)

正在看demo源码,好复杂的样子,还没摸清门路

jjy 发表于 2013-12-16 16:14:56

RE:【STM32F030开发日志】无线信号采集及控制终端(持续更新中...)

正在看demo源码,好复杂的样子,还没摸清门路

jjy 发表于 2013-12-16 16:15:05

RE:【STM32F030开发日志】无线信号采集及控制终端(持续更新中...)

正在看demo源码,好复杂的样子,还没摸清门路

沐紫 发表于 2013-12-23 13:26:11

回复:【STM32F030开发日志】无线信号采集及控制终端(持续更新中...)

回复第 13 楼 于2013-12-16 16:15:05发表:
正在看demo源码,好复杂的样子,还没摸清门路 

加油!:)

windzyf-66769 发表于 2013-12-31 18:58:46

RE:【STM32F030开发日志】无线信号采集及控制终端(持续更新中...)

加油!:D:D:D
页: [1] 2
查看完整版本: 【STM32F030开发日志】无线信号采集及控制终端(2014年1月2日更新)(持续更新中...)