stm32 upgrade program solution

Publisher:温馨小屋Latest update time:2016-08-25 Source: eefocusKeywords:stm32 Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere
The STM32 chip comes with a built-in ISP program. When the chip is powered on, it will check the BOOT0 BOOT1 level status. If 
BOOT0=1 
BOOT1=0 
, it will enter the built-in ISP program, which can basically meet the needs of program upgrades. 
However, how to enter this mode is a problem. Some people on the Internet use the handshake signal of the serial port to control it, but this will exceed 3 lines (RX TX GND). 
Yesterday, a method was tested. The host computer issued an instruction. After the STM32 user's own program was parsed, it used its own IO port to control a simple delay circuit to pull up BOOT0, and then the chip restarted to enter ISP. After the refresh is completed, jump into the user program to run, and the control is returned to the user program. 
Set PB8 to ISP_DRV in the program, push-pull output; after a certain period of output, after the capacitor is fully charged, you can use NVIC_SystemReset() to restart (3.12 library). You can enter ISP mode. 
In addition, you need to set the following vector table address in the program to enter the user program after checking the jump to user application after flash of the ISP program. 
/* Set the Vector Table base location at 0x08000000 */  
  NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x0); 

Tested several times and no abnormality was found.
Keywords:stm32 Reference address:stm32 upgrade program solution

Previous article:STM32 IAP implementation
Next article:The difference between STM32 large and small capacity chips

Recommended ReadingLatest update time:2024-11-16 13:48

Design and implementation of LED writing dot matrix screen based on STM32
In recent years, with the rapid development of the information industry, dot matrix LED display screens have been widely used in various advertising and information display systems such as the financial industry, postal and telecommunications industry, stadiums, and advertising industry, becoming an important means
[Microcontroller]
Design and implementation of LED writing dot matrix screen based on STM32
STM32 window watchdog WWDG reset
In addition to an independent watchdog, the STM32 also has a window watchdog. The window watchdog can of course also reset the MCU, but it is different from the independent watchdog reset. First, the clock source required by the window watchdog comes from PCLK2. Its clock is obtained after the 4096 frequency division o
[Microcontroller]
STM32 window watchdog WWDG reset
About STM32GPIO working mode
1: Reprint link (based on Zhengdian Atom Open Source Electronic Network): http://www.openedv.com/posts/list/21980.htm 2: The reprinted learning content is as follows: (I use it as a study note)     Floating, as the name suggests, means floating in the air. If you pull a rope from above, it will go up, and if you pull
[Microcontroller]
STM32 hardware CRC32 usage
I recently used the CRC32 module of STM32. After looking at the Lib on the official website, I felt that it was very simple to use. However, you will find that when you use it directly, the calculation results are inconsistent with those of many online CRC32 websites or PC-side CRC32 verification tools! I am simply sp
[Microcontroller]
STM32 hardware CRC32 usage
STM32 USB HID custom device bulk transmission
ST (STMicroelectronics) has written a USB peripheral library for the STM32 series processors and provided good reference examples. This article refers to the examples provided by ST to implement USB bulk transmission on the STM32F4 discovery board. The host side is a USB read and write application written on the Linux
[Microcontroller]
Wanli EK-STM32F STM32 development board is simulated in RAM under MDK environment
  Contents of startup script RAM.ini: FUNC  void  Setup  (void)  {     SP  =  _RDWORD(0x20000000);                    //  Stack pointer     PC  =  _RDWORD(0x20000004);                    //  PC     _WDWORD(0xE000ED08,  0x20000000);      //  Interrupt vector offset address } LOAD  .ObjBlinky.axf
[Microcontroller]
Four output modes of STM32
1. Normal push-pull output (GPIO_Mode_Out_PP):   Application: Generally used in 0V and 3.3V applications. The circuit passes through two P_MOS and N_MOS tubes, which are responsible for pulling up and pulling down current.   Usage: Direct use   Output level: The low level of push-pull output is 0V and the high level i
[Microcontroller]
Solution to "no target connect" when downloading STM32 SWD
1. Reappearance of the problem 2. Causes of the problem The two download pins of swd download are reused in the program, and then st-link cannot connect to your microcontroller through the download pins, so it shows that the target cannot be detected. 3. Solution The first: STEP1: Pull the BOOT0 pin high
[Microcontroller]
Solution to
Latest Microcontroller Articles
  • Download from the Internet--ARM Getting Started Notes
    A brief introduction: From today on, the ARM notebook of the rookie is open, and it can be regarded as a place to store these notes. Why publish it? Maybe you are interested in it. In fact, the reason for these notes is ...
  • Learn ARM development(22)
    Turning off and on interrupts Interrupts are an efficient dialogue mechanism, but sometimes you don't want to interrupt the program while it is running. For example, when you are printing something, the program suddenly interrupts and another ...
  • Learn ARM development(21)
    First, declare the task pointer, because it will be used later. Task pointer volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • Learn ARM development(20)
    With the previous Tick interrupt, the basic task switching conditions are ready. However, this "easterly" is also difficult to understand. Only through continuous practice can we understand it. ...
  • Learn ARM development(19)
    After many days of hard work, I finally got the interrupt working. But in order to allow RTOS to use timer interrupts, what kind of interrupts can be implemented in S3C44B0? There are two methods in S3C44B0. ...
  • Learn ARM development(14)
  • Learn ARM development(15)
  • Learn ARM development(16)
  • Learn ARM development(17)
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号