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

【STM32F303开发】+ 非CubeKeil环境搭建&简易点灯——by shadow丶

[复制链接]
shadow丶 提问时间:2015-6-21 15:29 /
感觉上最能锻炼的能力的还是使用Keil!寄存器各种映射,如果要实现功能mbed固然不错,不过要是作为学习Keil寄存器也是不错的0.0
本教程献给有兴趣有时间的朋友,帮你简单如个门
本人小白,教程过于简单0.0大牛勿喷!!!

想快速开发的坛友可以使用mbed:
【STM32F303开发】+ 失败的固件升级&点灯——by shadow丶
https://www.stmcu.org.cn/module/forum/forum.php?mod=viewthread&tid=602253&fromuid=2072898

下面开始把,首先安装keil
安装包在keil官网就可以下载到
keil官网:http://www.keil.com/
MDK5.15:http://www.keil.com/demo/eval/arm.htm#DOWNLOAD
懒人通道度盘:链接:https://pan.baidu.com/s/1gd4bEoz 密码:3wnu
PS:要是不好使及时向楼主反映/呃要不就勤快下去官网下0.0
破解: Keil mdk512、c51v953破解.zip (40.6 KB, 下载次数: 39)
QQ截图20150621145732.png
收藏 评论44 发布时间:2015-6-21 15:29

举报

44个回答
creep 回答时间:2015-6-22 14:59:52
shadow丶 发表于 2015-6-22 00:49
简单的说这样就已经跪了!!!
直接赋值就跪了0.0

最根本的是原因是下面的那句GPIOA->MODER= 1<<10;关闭了JTAG/SWD功能,所以才导致STLINK连不上开发板。
code.jpg
Stlink 找不到开发板:
stlink.jpg

因为JTAG/SWD引脚在复会后就被默认设置为AF的模式作为下载使用:
io.jpg
上面几个引脚对应的IO口的MODER的复位值也是设置为AF模式:
reset.jpg

所以GPIOA->MODER= 1<<10;这句代码直接把SWD使用的PA14/PA13设置了输入模式,这也就导致了开发板的SWD功能被关闭,所以stlink也就连不上开发板了。有的时候可能真的需要SWD引脚下载完代码后作为其他的模式使用,如果是这样的只需要在每次下载的时候复位开发板后马上下载程序即可,所以你这个代码每次复位后也能正常下载使用STLINK。




shadow丶 回答时间:2015-6-21 19:37:37
creep 发表于 2015-6-21 17:22
感谢分享,看到了床单,这是直接在床上搞起了啊。
使能某个外设的时钟肯定不能直接对RCC寄存器这样赋值,RC ...

呃  算是把0.0   回家了就自由两天0.0  嘿嘿   对单独RCC的赋值没事 然后再调用后面控制引脚的寄存器  STlink直接就变黄灯了     总共就用这么及个寄存器0.0  于是就跪了0.0  从新刷个bin文件才好的
creep 回答时间:2015-6-21 21:17:45
shadow丶 发表于 2015-6-21 19:37
呃  算是把0.0   回家了就自由两天0.0  嘿嘿   对单独RCC的赋值没事 然后再调用后面控制引脚的寄存器  ST ...

只进行RCC->AHBENR = 0x00020000;操作肯定不会导致Stlink杯具的,不知道你是不是还进行了其他的操作,如果方便的话把错误的设置分享出来,也避免其他人掉坑里!
shadow丶 回答时间:2015-6-21 15:34:25
沙发自己座  有问题补充用
Paderboy 回答时间:2015-6-21 16:53:42
多谢分享。。。。
creep 回答时间:2015-6-21 17:22:47
感谢分享,看到了床单,这是直接在床上搞起了啊。
使能某个外设的时钟肯定不能直接对RCC寄存器这样赋值,RCC->AHBENR = 0x00020000;这会导致其他的外设的时钟被关闭。但是即使这样写了,也不会导致Stlink连不上吧。
mark0668 回答时间:2015-6-21 18:46:59
看看什么效果,
shadow丶 回答时间:2015-6-21 19:38:36

呃效果就是灯常亮啊  没加延时    主要就是搭建下环境0.0
点灯是为了  证明环境好使
shadow丶 回答时间:2015-6-21 19:41:06
creep 发表于 2015-6-21 17:22
感谢分享,看到了床单,这是直接在床上搞起了啊。
使能某个外设的时钟肯定不能直接对RCC寄存器这样赋值,RC ...

不过很奇怪  keil的库 没有STM32f3的库吗?    还是必须cube建?
creep 回答时间:2015-6-21 21:15:26
shadow丶 发表于 2015-6-21 19:41
不过很奇怪  keil的库 没有STM32f3的库吗?    还是必须cube建?

STM32F30x系列标准外设库

STM3F303HAL底层驱动
moyanming2013 回答时间:2015-6-21 23:56:52
creep 发表于 2015-6-21 21:17
只进行RCC->AHBENR = 0x00020000;操作肯定不会导致Stlink杯具的,不知道你是不是还进行了其他的操作,如 ...

是啊,stlink应该是好的,只是f303不通了,我想只要再重新编程一个bin就会好。
楼主不也重新编程了一个bin了吗,这已经说明stlink没问题了,否则没法编程。
另:楼主,你没有做时钟的配置,使用默认的配置,这个靠谱吗?
shadow丶 回答时间:2015-6-22 00:43:09
creep 发表于 2015-6-21 21:15
STM32F30x系列标准外设库

STM3F303HAL底层驱动

哦 我知道  就是  那个keil5的pack里没有
像f103pack里直接就有3.5的库
shadow丶 回答时间:2015-6-22 00:45:02
creep 发表于 2015-6-21 21:17
只进行RCC->AHBENR = 0x00020000;操作肯定不会导致Stlink杯具的,不知道你是不是还进行了其他的操作,如 ...

嗯嗯 好的  我再试试  应该能试出来
其实  按位操作就不会掉坑!!
shadow丶 回答时间:2015-6-22 00:49:11
creep 发表于 2015-6-21 21:15
STM32F30x系列标准外设库

STM3F303HAL底层驱动

简单的说这样就已经跪了!!!
直接赋值就跪了0.0

QQ截图20150622004741.png

QQ截图20150622004751.png
芯片已经检测不到了  

shadow丶 回答时间:2015-6-22 00:55:38
moyanming2013 发表于 2015-6-21 23:56
是啊,stlink应该是好的,只是f303不通了,我想只要再重新编程一个bin就会好。
楼主不也重新编程了一个bi ...

是啊  不过应该默认就是72m   的 stlink当然还好  就是连不到芯片了0.0   
123下一页
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版