找回密码
 注册
关于网站域名变更的通知
查看: 256|回复: 1
打印 上一主题 下一主题

真干货!从51到stm32开发入门

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-2-19 09:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
真干货!从51到stm32开发入门
2 X2 ?, Y+ U, `; {- S& `* y4 D
6 ?, O8 Y3 i2 a; }' b
本来只是路过,写详细一点。
我看楼主浮躁得不得了。现在什么都不要做了,先去看几遍《不要做浮躁的嵌入式工程师》这篇文章,想清楚了,
再动手吧。
我做了个实例,不用ST的库来点LED,解答你的问题
我的 KeilMDK 3.5
我的STM32板子奋斗版是 ,IC 是 STM32F103VET6
调试工具 JLINK V8
LED 接在 PB5 ,高电平点亮
既然楼主说一定懂C语言了,那么对于下面我的问题,不查百度,完全靠自己,懂多少?然后查了百度之后又能懂多少?
(一)新建 keil 工程,IC选择 ST 公司的 STM32F103VE,keil提示是否copy 启动文件,选择是。
这里有问题问楼主,
你有没有读过这个启动头文件? 51 也是同样的启动文件,51的那个启动文件有没有读过?你知道
头文件里面做了什么吗? C语言真的从 main 函数开始吗?运行时库是什么?这些资料从
什么地方知道?keil编译器的行为?
(如果你说头文件是汇编的,没有必要看,那我当我没说)
例如启动文件里面有这么一句,我的问题是 __main 这个标号在哪里实现的,注意,这里肯定不是 main 函数
这里跳到哪里去了?还有个问题 [WEAK] 这里是什么意思?有什么用????
Reset_Handler PROC
EXPORT Reset_Handler [WEAK]
IMPORT __main
LDR R0, =__main
BX R0
(二)新建一个 main.c 并且写一个 main函数,什么都不做,这和51一样了。
void main(void)
{
while (1)
{
}
}
然后因为我需要调试,则设置jlink调试器,在项目属性里面 Debug 标签,Use J-LINK/J-TRACE ,然后到
utilities 标签,同样选择J-LINK /J-TRACK ,并且选择 Setting 按钮,里面的 Programming Algorithm
还是空的,表示keil 不知道目标是什么,我添加一个 STM32F10X High-density Flash ,问题,为什么是
High-desity ?依据是什么???
全部确认返回。
这个时候已经可以编译,开发板上电,已经可以下载仿真的,虽然程序什么都没有写
游客,如果您要查看本帖隐藏内容请回复
6 l6 `2 o5 Y2 p9 B4 @) Q# R

该用户从未签到

2#
发表于 2019-2-19 18:10 | 只看该作者
谢谢楼主分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-6-18 11:42 , Processed in 0.078125 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表