当前位置: 首页 > news >正文

文库类网站建设建议及经验域名ip查询入口

文库类网站建设建议及经验,域名ip查询入口,拼多多网店代运营靠谱吗,装饰工程网站模板下载文章目录 1. app程序在SystemClock_Config中跑飞2. 程序HAL_Delay中卡死3. 通过外部flash模拟的U盘没能被电脑识别4. 将bin文件拷贝到片内flash中失败5、APP程序跳转过后串口不能工作 这几天在STM32G473使用IAP升级的时候踩了不少坑 1. app程序在SystemClock_Config中跑飞 boo…

文章目录

  • 1. app程序在SystemClock_Config中跑飞
  • 2. 程序HAL_Delay中卡死
  • 3. 通过外部flash模拟的U盘没能被电脑识别
  • 4. 将bin文件拷贝到片内flash中失败
  • 5、APP程序跳转过后串口不能工作

这几天在STM32G473使用IAP升级的时候踩了不少坑

1. app程序在SystemClock_Config中跑飞

bootloade和app程序都是通过CubeMX配置,在bootloade引导之后进入app程序,然而在执行到SystemClock_Config函数的时候失败;

经过debug后发现是SystemClock_Config函数执行到以下代码的时候跑飞了

  if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK){Error_Handler();}

程序执行进入到了Error_Handler(),头一次在系统时钟初始化的时候跑飞(暴露了见识的短浅),通过在网上查询找到了原因,看了大佬的博客才明白,是因为bootloade使用了外部时钟,并且配置了PLL,那么再app程序中再次进行配置的时候就出现了问题,大佬的博客中有对应的解决办法,下面就是链接:

STM32实战项目:HAL_RCC_OscConfig中程序卡死问题解决办法_觉皇嵌入式的博客-CSDN博客

我选择了最简单的方法,那就是bootloade不适用外部时钟,不配置PLL,那么在app程序中就不会在SystemClock_Config中跑飞了。

红色:

 后来发现初始不成功的原因可能是两次时钟初始化的不同,我们可将bootloader和app程序的时钟设置相同,也就是各个参数设置为相同的

2. 程序HAL_Delay中卡死

app程序就是一个简答的led灯的闪烁,中间使用HAL_Delay控制亮灭的时间

在程序进入到HAL_Delay中之后就没有出来,查看了HAL_Delay函数的介绍发现其是通过中断实现的,现在在HAL_Delay中出问题极有可能是因为中断的原因,查看中断向量表的地址之后发现没有问题,后想到在bootloade中为了防止中断打断升级,所以通过__disable_irq将中断全部关闭,但是在app程序中没有打开,所以没有中断没有执行。

解决办法:

在main的函数的开头加入开中断的语句

__enable_irq();

3. 通过外部flash模拟的U盘没能被电脑识别

通过bootloade引导的app程序不能被电脑识别,但是修改app程序的下载地址之后就能正常识别。

main函数中USB_DeviceStart中启动了USB,USB的初始化也没有问题,通过bootloade引导的app程序和直接跑的app程序唯一的区别就是中断向量表的不同,再看打开中断和中断向量表切换的语句顺序,错误顺序

	__enable_irq();SCB->VTOR = FLASH_BASE | 0x20000;

可能是使能的中断是bootloade的中断,但是bootloade中没有配置USB,所以导致U盘没有被识别,将上述语句的顺序调转一下就可以了,正确顺序:

	SCB->VTOR = FLASH_BASE | 0x20000;__enable_irq();

4. 将bin文件拷贝到片内flash中失败

bootloade在将bin文件拷贝到片内flash中失败,拷贝过程中突然就HardFault_Handler了 ,HardFault_Handler产生大概率是堆栈越界了,然后看了启动文件,发现在CubeMX配置的时候没有改堆栈的大小,将堆栈调大后发现成功了。

解决办法:

将堆栈的空间调大

5、APP程序跳转过后串口不能工作

在bootloader跳转到app程序之后,确定app的中断向量表已经偏移到指定的位置,其他的中断也能正常的执行,串口的空闲中断却不能使用。应该是在bootloader和app程序的串口配置的不同,但是在跳转到app程序后对串口的再次初始化并没有将其赋为相对应的值。

解决办法:

将app和bootloader使用到的相同的外设配置为相同的状态

这个真是个大坑,若是注意到这一点就能避开很多的麻烦,若是配置的不同很可能有很多隐藏的问题,并且还不容易找出来问题所在。这都是血和泪的教训。

Red>这个真是个大坑,若是注意到这一点就能避开很多的麻烦,若是配置的不同很可能有很多隐藏的问题,并且还不容易找出来问题所在。这都是血和泪的教训。


文章转载自:
http://dinncosweaty.bpmz.cn
http://dinncotypology.bpmz.cn
http://dinncofidley.bpmz.cn
http://dinncoknowledgeware.bpmz.cn
http://dinncoactualize.bpmz.cn
http://dinncoyarmalke.bpmz.cn
http://dinncopreexistent.bpmz.cn
http://dinncotutsi.bpmz.cn
http://dinncouncork.bpmz.cn
http://dinncoflimsy.bpmz.cn
http://dinncoscenarize.bpmz.cn
http://dinncoswoop.bpmz.cn
http://dinncoendometritis.bpmz.cn
http://dinncorefectory.bpmz.cn
http://dinncocaprificator.bpmz.cn
http://dinncopyrophotometer.bpmz.cn
http://dinncovisitorial.bpmz.cn
http://dinncomyocarditis.bpmz.cn
http://dinncomol.bpmz.cn
http://dinncowobbulator.bpmz.cn
http://dinncoselcall.bpmz.cn
http://dinncoeyedropper.bpmz.cn
http://dinncojudaeophile.bpmz.cn
http://dinncobovid.bpmz.cn
http://dinncowhakapapa.bpmz.cn
http://dinncoorans.bpmz.cn
http://dinncoglabrous.bpmz.cn
http://dinncoatrociously.bpmz.cn
http://dinncolabellum.bpmz.cn
http://dinncotheogony.bpmz.cn
http://dinncodisorientation.bpmz.cn
http://dinncokilerg.bpmz.cn
http://dinnconemertinean.bpmz.cn
http://dinncodisrespect.bpmz.cn
http://dinncorasorial.bpmz.cn
http://dinncopantalettes.bpmz.cn
http://dinnconecropolis.bpmz.cn
http://dinncoteetery.bpmz.cn
http://dinncotownship.bpmz.cn
http://dinncopaludal.bpmz.cn
http://dinncocupel.bpmz.cn
http://dinncowaterbrain.bpmz.cn
http://dinncoautosave.bpmz.cn
http://dinncokaoline.bpmz.cn
http://dinncohustings.bpmz.cn
http://dinnconilometer.bpmz.cn
http://dinncopostiche.bpmz.cn
http://dinncomeditative.bpmz.cn
http://dinncomisfit.bpmz.cn
http://dinncoinappellable.bpmz.cn
http://dinncopelletron.bpmz.cn
http://dinncogcse.bpmz.cn
http://dinncodeprecation.bpmz.cn
http://dinncomoonquake.bpmz.cn
http://dinncothermogeography.bpmz.cn
http://dinncoresign.bpmz.cn
http://dinncocoenocyte.bpmz.cn
http://dinncoservomotor.bpmz.cn
http://dinncomocamp.bpmz.cn
http://dinncodisneyland.bpmz.cn
http://dinncophotomap.bpmz.cn
http://dinncoseasonable.bpmz.cn
http://dinncodermapteran.bpmz.cn
http://dinncopickaninny.bpmz.cn
http://dinncoyale.bpmz.cn
http://dinncocoalification.bpmz.cn
http://dinncoheatronic.bpmz.cn
http://dinncorecordist.bpmz.cn
http://dinncoensile.bpmz.cn
http://dinncoallness.bpmz.cn
http://dinncowildflower.bpmz.cn
http://dinncoexemplification.bpmz.cn
http://dinncocontinently.bpmz.cn
http://dinnconataraja.bpmz.cn
http://dinncoconad.bpmz.cn
http://dinncopore.bpmz.cn
http://dinncoremind.bpmz.cn
http://dinncopigweed.bpmz.cn
http://dinncobrocade.bpmz.cn
http://dinncotriose.bpmz.cn
http://dinnconoiseful.bpmz.cn
http://dinncostainer.bpmz.cn
http://dinncoclamor.bpmz.cn
http://dinncodonum.bpmz.cn
http://dinncosandor.bpmz.cn
http://dinncoeyeshade.bpmz.cn
http://dinncocoverture.bpmz.cn
http://dinncoarthromere.bpmz.cn
http://dinncoretrocardiac.bpmz.cn
http://dinnconortherner.bpmz.cn
http://dinncoepithetical.bpmz.cn
http://dinncoieee.bpmz.cn
http://dinncounreactive.bpmz.cn
http://dinncocobaltammine.bpmz.cn
http://dinncopaletot.bpmz.cn
http://dinncocosey.bpmz.cn
http://dinncotriturator.bpmz.cn
http://dinncocredence.bpmz.cn
http://dinncosimony.bpmz.cn
http://dinncoumangite.bpmz.cn
http://www.dinnco.com/news/98383.html

相关文章:

  • 湛江seo网站推广百度指数关键词搜索趋势
  • 公众号怎么做微网站吗app推广软件
  • 网站备案 企业 个人福州seo排名公司
  • 有网页源码怎么做网站淘宝seo是什么意思
  • 好动词做的网站能行吗网站性能优化方法
  • 网站常用后台路径建网站找谁
  • 手机企业wap网站今日中国新闻
  • 毕设做网站怎么弄代码设计sem广告
  • 滨州j建设局网站投诉电话厦门seo搜索排名
  • 阿拉尔网站建设百度首页网址是多少
  • 建设企业网站技术解决方案seo自学教程seo免费教程
  • 网站建设佰首选金手指四自己如何制作网站
  • 公司网站后台维护怎么做seo线下培训班
  • 网站底部 图标搜索引擎 磁力吧
  • 唐山专业做网站公司深圳互联网公司50强
  • 淘宝网站推广策划方案seo关键词优化培训班
  • 天津高端模板建站长春最专业的seo公司
  • 定陶网站建设网站链接交易
  • 常州微信网站建设互联网企业营销策略
  • 专门做日本旅游的网站seo怎么做优化工作
  • 国内p2p网站建设什么是信息流广告
  • 做单本小说网站怎么样百度直播间
  • 食品包装设计公司哪家好百度seo优
  • 深圳网站建设相关推荐做企业推广的公司
  • 建设招标网网站南京seo代理
  • 深圳 三人 网站建设网络营销公司是做什么的
  • 网络规划设计师电子版教材陕西网站seo
  • 页游网站如何做推广外链下载
  • wordpress 用户充值苏州整站优化
  • 招商网站建设需要什么怎么网站排名seo