stm32串口升级问题

2019-10-15 04:20发布

请问下要让STM32通过串口进行升级的话有几种办法.我现在思路:
      1.像串口下载程序一样通过软件置位BOOT0来进行升级。
      2.还是需要用网上说的用IAP和APP的方式进行升级。(新人不是很懂这个)
请问还有没有其他硬件不用操作的方法进行升级,还有就是上面的方法具体的操作流程能不能说下 。
谢谢!!!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
密耳
1楼-- · 2019-10-15 05:42
2
kxing91
2楼-- · 2019-10-15 11:35
 精彩回答 2  元偷偷看……
hgr211
3楼-- · 2019-10-15 12:26
我将boot弄个按键,按下去开机就是升级状态,就不用管其它的问题
番茄君
4楼-- · 2019-10-15 13:51
http://www.openedv.com/posts/list/0/16049.htm   
http://www.openedv.com/posts/list/14429.htm
要硬件不操作的话,你自己搞个标志位,检查标志位是否置位就好了
石头1379
5楼-- · 2019-10-15 15:38
各位大哥说的都有道理,按键和串口芯片的做法都是可以的,但是从实际要求来说还是IAP的方式更加合理点。
看了例程,自己也移植了下,编译是能通过的。
但是有2个问题问下:
    在程序中添加
              if(((*(vu32*)(0X20001000+4))&0xFF000000)==0x08000000)
                                {         
                                iap_write_appbin(FLASH_APP1_ADDR,USART_RX_BUF,applenth);
                                }
为什么会直接出现死机的现象,连LED灯都点不亮,况且这一句是在一个按键判断语句中的,按理来说应该还没有执行的。
屏蔽到后就运行就正常了。
还有一个是APP程序是不是和stm32的程序编写一样的,也是要添加头文件和跑MAIN()函数的。
(我单片机用的是STM32F051的例程中的是STM32F10序列能不能兼容的,编译也没有出现问题)
石头1379
6楼-- · 2019-10-15 21:25
各位大哥上面的解决了  
请问下怎么把中断向量表改回来(改了一次就不能进入中断了)
芯片是STM32F051的  

一周热门 更多>