你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【说出你的故事】从对STM32白痴到入门+STM32F030R8 Boost MPPT

[复制链接]
Paderboy 提问时间:2016-2-1 14:34 /
哈哈,先祝论坛的各位坛友和辛苦的管理员们+版主,新年快乐。。。。2016,,666大顺。。。。

那就先从学习西门子的PLC开始!



最早接触编程是在国外留学,选择的专业是电子专业。。里面包含自动化控制课程,这就是对编程的慢慢喜欢的开始。一开始,看到编程就头大。因为语言问题,很多对于他们本国人的已经算难懂的专业词汇让我更加的头疼,一边要解决语言问题,一边要解决成绩问题,就这样似懂非懂的把自己混毕业了,然后找了个不相干的行业工作了。



因为个人原因回国发展,回国后个人的时间多了一些,偶然的一次机会遇到了Arduino UNO,开始被Arduino简易的编程方式吸引了,就去X宝淘了一块开发板套件,各种传感器(温度,按键,1602 LCD,红外遥控器和接收头。。等等)。把所有的例程都玩了个遍,确实信心爆满足啊。。但是想要玩新的器件,如果在Arduino下没找到配套的库,就抓瞎了。。。不知道如何是好,所以决定要从底层,慢慢学习。。就这样。。。。把目光转移到了近几年最火的STM32系列单片机的身上了。。到网络上查询各种教程系列非常的丰富。。



从这就开始了我的STM32之旅,直接上X宝买了套件:

TB1.uY6GXXXXXaxaXXXXXXXXXXX_!!0-item_pic.jpg

TB15iodGXXXXXX5aXXXXXXXXXXX_!!0-item_pic.jpg

TB1sEt9HVXXXXXXaXXXXXXXXXXX_!!0-item_pic.jpg

T2x52dXq0XXXXXXXXX_!!1980025016.jpg



然后跟着套件里的视频+例程。。一边又一边的看视频,看C语言,看各种相关的Blog和教程。。。几乎把所有业余的时间都用到了学习STM32上了。几乎快忘记了Arduino的存在了。。

业余时间里一天天的随着代码错与对,被来回重复的擦写。。。但是基础薄弱的我,还是很多东西不懂和难以理解,可能因为很久没有碰编程的原因,学习起来还是很吃力。。。不过还是硬着头皮,慢慢的一边又一边的重复同样的事情。一次有一次的被一个又一个的Bug弄的崩溃了。。。时间也随着乏味的找错过程,慢慢的逝去了。。



偶然的一次机会,在查找问题时找到了与非网,然后就一直没有离开过。。加了STM32 QQ3群里,结识很多大师,学习了很多有用的知识。。。。也在论坛抢开发板的活动中,得到几块NUCLEO开发板(F303 F030)。。在这要再次感谢论坛,希望越办越好哈哈,当然是发板子的活动多多益善啊。。。。。。。。。。。。

那来点干货吧!!!



使用NUCLEO- STM32F030R8作为主控-控制MPPTCVT方式控制输出电压。



1.      这个项目使用CubeMx4.11 建的工程,因为4.12 BUG的问题(ADC Cube设置后,生成的代码不全,只有一个通道。。。。)调试过程中出现很多问题,所以尝试用4.11 通过了所有的功能测试。。。。
希望ST官方可以尽快修复BUG啊。。。。。。


好了先从CUBE配置外设开始。
选择外部晶振。。
stm32f030r8-01.png

stm32f030r8-02.png

stm32f030r8-03.png

SPI配置:
stm32f030r8-04.png

LCD控制引脚配置:
stm32f030r8-12.png

LCD.png

串口DAM配置:
stm32f030r8-05.png

stm32f030r8-06.png

stm32f030r8-07.png
ADC DMA 多通道配置:
stm32f030r8-08.png

stm32f030r8-09.png

stm32f030r8-10.png

定时器3配置:
stm32f030r8-11.png

BOOST 计数工具。。。
stm32f030r8-17.png

stm32f030r8-16.png

2.      好了接下来介绍下功能:


可以直接应用于光伏发电项目的离网充电系统:

电压工作范围:光伏发电板输入空载DC21v-60v输出范围DC24v-120v
充电电流:0-30A的输入电流
最大输出功率:300w散热条件好的情况下可以达到500w
LCD:显示电压控制器工作温度
保护功能:夜间防止流,过压保护,低压保护,过温保护
可以通过串口设置或者APP(可添加按键设置)



3.      STM32F030R8主控使用外设配置:


配置TIMER3: 2个通道作为PWM输出频率50Khz:通道1和通道2

stm32f030r8-19.png


配置SPI2:LCD显示功能:PB13PB14 PB15 PC4 PF4 PF5

stm32f030r8-20.png


配置ADC:DMA方式获取PA0 PA1PA4和内部Vrefint

stm32f030r8-18.png

配置 UART:使用DMA IDLE中断空闲接收数据

stm32f030r8-21.png
使用内部Flash存储数据必须通过验证才能保存到flash指定的地址里。固化到程序里


4.      功率部分使用主要器件:


LM2576HVS 支持最高63v的DC电压降压可调设置
IR2110s MOS管驱动IC
30A 100uH的电感
150v 60a的MOS管和200v的肖基特二极管

电容,电感,电阻不等。。。。
stm32f030r8-13.png

stm32f030r8-14.png

stm32f030r8-15.png

程序函数部分截图:

宏定义部分:
stm32f030r8-22.png
函数部分:
stm32f030r8-23.png

内部FLASH擦写函数:
stm32f030r8-24.png

数据验证和固化部分:
stm32f030r8-25.png

串口调试截图:
stm32f030r8-26.png

stm32f030r8-27.png

stm32f030r8-28.png

先上LCD测试图片:

IMG_20160129_225559.jpg

IMG_20160129_225624.jpg

后续继续更新:(因为天气原因,一直下雨,没有太阳不能实际测试。。后续会继续更新。。)

先把测试通过的bin和hex文件分享下:

STM32F030R8_BOOST_MPPT_HEX.rar (24.33 KB, 下载次数: 34)
收藏 3 评论32 发布时间:2016-2-1 14:34

举报

32个回答
党国特派员 回答时间:2016-2-5 09:57:03
学习下。。。 blank.png blank1.png blank2.png blank3.png blank4.png
Paderboy 回答时间:2016-2-16 22:30:27
alles_ok>>0_0<< 发表于 2016-2-16 22:11
不错,目前太阳能好像很火啊。。收藏了

123-353223 回答时间:2019-6-18 11:29:46
这里除了boost计算不会外其他都齐了,想用STM8做一个,“boost 计数工具”是个软件吗?
沐紫 回答时间:2016-2-1 14:46:42
帖子很棒!
Paderboy 回答时间:2016-2-1 14:48:17

献丑了。。。。。
creep 回答时间:2016-2-1 14:49:30
楼主自学能力好强,感谢分享!
Paderboy 回答时间:2016-2-1 14:53:59
creep 发表于 2016-2-1 14:49
楼主自学能力好强,感谢分享!

谢谢“橙子哥”,还要继续努力。。。
netlhx 回答时间:2016-2-1 17:44:58
不错,顶一个
Paderboy 回答时间:2016-2-1 18:25:32

谢谢N神。。
lisingch 回答时间:2016-2-1 22:54:55
喜欢这种贴子,赞一个!
风子 回答时间:2016-2-2 00:46:18
干货很好,值得好好研究
Paderboy 回答时间:2016-2-2 10:17:11
风子 发表于 2016-2-2 00:46
干货很好,值得好好研究

Paderboy 回答时间:2016-2-2 10:17:26
lising 发表于 2016-2-1 22:54
喜欢这种贴子,赞一个!

nobita 回答时间:2016-2-2 10:51:37
赞一个
潇潇雨歇pku 回答时间:2016-2-2 11:05:04
顶一个      
Paderboy 回答时间:2016-2-2 11:32:40
123下一页
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版