828

帖子

8

TA的资源

一粒金砂(高级)

21
 
gs001588 发表于 2017-3-12 23:38
给个bootloader的hex文件,我导入工程看看程序跳转代码,和占用flash段情况。无论你什么时候烧写用户代码 ...

没有hex,是bin文件,sensortile自带的
个人签名人生有许多选项是灰色的、不可选的,但至少你可以选择生活的态度。。。韬光养晦,志存高远http://www.xzroad.com/
 
 

回复

828

帖子

8

TA的资源

一粒金砂(高级)

22
 
本帖最后由 wugx 于 2017-3-13 08:51 编辑
gs001588 发表于 2017-3-12 23:38
给个bootloader的hex文件,我导入工程看看程序跳转代码,和占用flash段情况。无论你什么时候烧写用户代码 ...

这个是自带的,用st-link utility软件可擦写

BootLoaderL4.bin

4.21 KB, 下载次数: 2

readme.txt

4.33 KB, 下载次数: 2

个人签名人生有许多选项是灰色的、不可选的,但至少你可以选择生活的态度。。。韬光养晦,志存高远http://www.xzroad.com/
 
 
 

回复

675

帖子

5

TA的资源

纯净的硅(初级)

23
 
gpio12是不是已经复用啦!

点评

没有啊  详情 回复 发表于 2017-3-13 12:36
 
 
 

回复

828

帖子

8

TA的资源

一粒金砂(高级)

24
 
dwwzl 发表于 2017-3-13 12:21
gpio12是不是已经复用啦!

没有啊
个人签名人生有许多选项是灰色的、不可选的,但至少你可以选择生活的态度。。。韬光养晦,志存高远http://www.xzroad.com/
 
 
 

回复

9803

帖子

24

TA的资源

版主

25
 
我试了一下你的项目,IAR编译没成功


个人签名虾扯蛋,蛋扯虾,虾扯蛋扯虾
 
 
 

回复

9803

帖子

24

TA的资源

版主

26
 

你的代码我用MDK跑了一下
如果使用HAL_Delay(1000);延时代码会停在HAL_Delay函数的while循环处
  while((HAL_GetTick() - tickstart) < wait)
  {
  }

如果使用你自己写的延时函数
delayms(1000);可以正常运行,LED常亮,看不到闪烁效果
如果把传入的参数加大
delayms(10000);这时LED显示正常




点评

你确认你没改别的吗?我改了不行啊  详情 回复 发表于 2017-3-13 20:24
个人签名虾扯蛋,蛋扯虾,虾扯蛋扯虾
 
 
 

回复

828

帖子

8

TA的资源

一粒金砂(高级)

27
 
littleshrimp 发表于 2017-3-13 18:31
你的代码我用MDK跑了一下
如果使用HAL_Delay(1000);延时代码会停在HAL_Delay函数的while循环处
  while ...

你确认你没改别的吗?我改了不行啊

点评

我第一次下载你的代码时bootloder没有了 代码运行不到main函数 换Datalog例程也一样 重新刷Bootloader解决 因为我以前一直用IAR也不排除bootloader以前就没了  详情 回复 发表于 2017-3-13 23:21
复位了一下,可以闪了  详情 回复 发表于 2017-3-13 20:40
个人签名人生有许多选项是灰色的、不可选的,但至少你可以选择生活的态度。。。韬光养晦,志存高远http://www.xzroad.com/
 
 
 

回复

828

帖子

8

TA的资源

一粒金砂(高级)

28
 
wugx 发表于 2017-3-13 20:24
你确认你没改别的吗?我改了不行啊

复位了一下,可以闪了

点评

应该不是复位这么简单吧 后来一直好用么  详情 回复 发表于 2017-3-13 23:22
个人签名人生有许多选项是灰色的、不可选的,但至少你可以选择生活的态度。。。韬光养晦,志存高远http://www.xzroad.com/
 
 
 

回复

9803

帖子

24

TA的资源

版主

29
 


我第一次下载你的代码时bootloder没有了
代码运行不到main函数
换Datalog例程也一样
重新刷Bootloader解决
因为我以前一直用IAR也不排除bootloader以前就没了

点评

keil打开的时候默认的是0x8000000,所以第一次下的时候不注意就把加载器掩盖了,我都是分开单独下的  详情 回复 发表于 2017-3-14 08:05
 
 
 

回复

9803

帖子

24

TA的资源

版主

30
 


应该不是复位这么简单吧
后来一直好用么

点评

是好用,我用GPIO2和GPIO3试过了,没问题,就是要复位一下,难道说下完程序后程序指针没有找到0x08004000地址,而且关于hal_delay的用法还是一筹莫展,只要配置RCC应该就能用啊  详情 回复 发表于 2017-3-14 08:13
 
 
 

回复

828

帖子

8

TA的资源

一粒金砂(高级)

31
 
littleshrimp 发表于 2017-3-13 23:21
我第一次下载你的代码时bootloder没有了
代码运行不到main函数
换Datalog例程也一样
重新刷Bootloader ...

keil打开的时候默认的是0x8000000,所以第一次下的时候不注意就把加载器掩盖了,我都是分开单独下的
个人签名人生有许多选项是灰色的、不可选的,但至少你可以选择生活的态度。。。韬光养晦,志存高远http://www.xzroad.com/
 
 
 

回复

828

帖子

8

TA的资源

一粒金砂(高级)

32
 
本帖最后由 wugx 于 2017-3-14 08:16 编辑
littleshrimp 发表于 2017-3-13 23:22
应该不是复位这么简单吧
后来一直好用么

是好用,我用GPIO2和GPIO3试过了,没问题,就是要复位一下,难道说下完程序后程序指针没有找到0x08004000地址,那datalog例程怎么解释,难道是哪个文件要修改一下,startup_stm32l476xx.s 这个文件我都复制过来试了不行,而且关于hal_delay的用法还是一筹莫展,只要配置RCC应该就能用啊

点评

这是你的例程,MDK下载后运行就能闪灯 离开MDK,上电也正常 和DATALOG一样 你说的复位是怎么回事?  详情 回复 发表于 2017-3-14 08:57
个人签名人生有许多选项是灰色的、不可选的,但至少你可以选择生活的态度。。。韬光养晦,志存高远http://www.xzroad.com/
 
 
 

回复

9803

帖子

24

TA的资源

版主

33
 
wugx 发表于 2017-3-14 08:13
是好用,我用GPIO2和GPIO3试过了,没问题,就是要复位一下,难道说下完程序后程序指针没有找到0x08004000 ...

这是你的例程,MDK下载后运行就能闪灯
离开MDK,上电也正常
和DATALOG一样

你说的复位是怎么回事?

2.rar (9.89 MB, 下载次数: 5)

点评

我这边下下去要复位后才能正常  详情 回复 发表于 2017-3-14 10:18
个人签名虾扯蛋,蛋扯虾,虾扯蛋扯虾
 
 
 

回复

9803

帖子

24

TA的资源

版主

34
 
HAL_Delay死循环是因为while中HAL_GetTick()一直返回零
HAL_GetTick()返回了全局变量uwTick
uwTick是由HAL_IncTick(void)函数控制它增长的
参考datalog例程HAL_IncTick()函数由SysTick_Handler中断函数调用
SysTick_Handler中断在stm32l4xx_it.c中

要实现SysTick的计数功能应该先实现SysTick_Handler函数并在SysTick_Handler函数中调用HAL_IncTick()

点评

但也没看到那个地方开启这个中断,这个函数又是怎么被main调用的?  详情 回复 发表于 2017-3-15 23:01
好,晚上看看,谢谢  详情 回复 发表于 2017-3-14 10:19
个人签名虾扯蛋,蛋扯虾,虾扯蛋扯虾
 
 
 

回复

828

帖子

8

TA的资源

一粒金砂(高级)

35
 
littleshrimp 发表于 2017-3-14 08:57
这是你的例程,MDK下载后运行就能闪灯
离开MDK,上电也正常
和DATALOG一样

你说的复位是怎么回事?
...

我这边下下去要复位后才能正常

点评

我发回去的例程你试一下  详情 回复 发表于 2017-3-14 11:24
个人签名人生有许多选项是灰色的、不可选的,但至少你可以选择生活的态度。。。韬光养晦,志存高远http://www.xzroad.com/
 
 
 

回复

828

帖子

8

TA的资源

一粒金砂(高级)

36
 
littleshrimp 发表于 2017-3-14 09:27
HAL_Delay死循环是因为while中HAL_GetTick()一直返回零
HAL_GetTick()返回了全局变量uwTick
uwTick是由HA ...

好,晚上看看,谢谢
个人签名人生有许多选项是灰色的、不可选的,但至少你可以选择生活的态度。。。韬光养晦,志存高远http://www.xzroad.com/
 
 
 

回复

9803

帖子

24

TA的资源

版主

37
 
wugx 发表于 2017-3-14 10:18
我这边下下去要复位后才能正常

我发回去的例程你试一下
个人签名虾扯蛋,蛋扯虾,虾扯蛋扯虾
 
 
 

回复

828

帖子

8

TA的资源

一粒金砂(高级)

38
 
littleshrimp 发表于 2017-3-14 09:27
HAL_Delay死循环是因为while中HAL_GetTick()一直返回零
HAL_GetTick()返回了全局变量uwTick
uwTick是由HA ...

但也没看到那个地方开启这个中断,这个函数又是怎么被main调用的?

点评

通过core_cm4.h文件中的__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks)函数设置的 main函数->HAL_Init();->HAL_InitTick(TICK_INT_PRIORITY);->HAL_SYSTICK_Config(SystemCoreClock/1000);->SysTick_C  详情 回复 发表于 2017-3-15 23:42
个人签名人生有许多选项是灰色的、不可选的,但至少你可以选择生活的态度。。。韬光养晦,志存高远http://www.xzroad.com/
 
 
 

回复

9803

帖子

24

TA的资源

版主

39
 
wugx 发表于 2017-3-15 23:01
但也没看到那个地方开启这个中断,这个函数又是怎么被main调用的?

通过core_cm4.h文件中的__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks)函数设置的

main函数->HAL_Init();->HAL_InitTick(TICK_INT_PRIORITY);->HAL_SYSTICK_Config(SystemCoreClock/1000);->SysTick_Config(TicksNumb);


点评

哦,对,在硬件初始化里面就配置了点滴中断, [attachimg]289314[/attachimg] SysTick_Handler这个函数的地址果然在中断向量表里,它就是中断服务程序,郁闷啊,刚发现keil可以搜索所有文件,茅塞顿开啊,感谢感  详情 回复 发表于 2017-3-16 20:47

赞赏

1

查看全部赞赏

个人签名虾扯蛋,蛋扯虾,虾扯蛋扯虾
 
 
 

回复

828

帖子

8

TA的资源

一粒金砂(高级)

40
 
本帖最后由 wugx 于 2017-3-16 20:48 编辑
littleshrimp 发表于 2017-3-15 23:42
通过core_cm4.h文件中的__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks)函数设置的

main函 ...

哦,对,在硬件初始化里面就配置了点滴中断,


SysTick_Handler这个函数的地址果然在中断向量表里,它就是中断服务程序,郁闷啊,刚发现keil可以搜索所有文件,茅塞顿开啊,感谢感谢,这个中断是硬复位?

点评

对,这个中断不需要手动清除  详情 回复 发表于 2017-3-16 21:49
个人签名人生有许多选项是灰色的、不可选的,但至少你可以选择生活的态度。。。韬光养晦,志存高远http://www.xzroad.com/
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表