STM32串口IAP实验笔记】的更多相关文章

STM32的IAP功能确实方便,以前对此如何实现有所了解,但是一直没去测试,这两天来练了下,可谓困难重重,搞了两天问题也一一解决,下面做些简要的笔记 IAP就是在线应用编程,方便程序升级,可以不用打开产品,直接通过串口升级,那么就需要一个引导程序(大神们喜欢称bootload),一个APP程序(实际产品的工作程序) 减小测试难度,我设计了3个程序,一个bootload程序,一个LED闪烁程序,一个KEY+LED点动程序,我的目的就是用两个不一样的APP程序,互相升级,方便验证结果 我手里的开发板…
什么是IAP? IAP是In Application Programming的首字母缩写,IAP是用户自己的程序在运行过程中对User Flash的部分区域进行烧写,目的是为了在产品发布后可以方便地通过预留的通信口对产品中的固件程序进行更新升级. 在重新编程过程中可以使用任意类型的通信协议,如UART.I2S.SPI等.这篇笔记分享的是使用UART方式IAP. 串口IAP实验 先理一理流程(本实验是以STM32F103ZET6为例): 1.实验说明 做这个实验需要准备两个keil工程,一个工程用…
第一次深入学习stm32,花了好长时间才看懂代码(主要是C语言学习不够深入),又花了段时间自己敲了一遍,然后比对教程,了解了利用中断来串口通信的设置方法. 板子是探索版f407,本实验工程把正点原子库函数工程模版拿来使用,自己主要敲了一下main.c.usart.h和.c文件. 一.头文件usart.h #ifndef __USART_H //定义同时防止重复定义 #define __USART_H #include "stdio.h" #include "stm32f4xx…
前言 第26节也是串口,笔记链接在此:https://www.cnblogs.com/YuQiao0303/p/10019362.html github地址:https://github.com/YuQiao0303/STM32F407-Examples 基本把27节的新内容都写在代码注释里了,只有一点: 在串口调试助手中,选"发送新行",则这一条数据会以0x0d,0x0a 结尾(ascii码) 代码 usart.c #include "sys.h" #includ…
stm32F103RCT6提供5路串口.串口的使用,只要开启串口时钟,设置相应的I/O口的模式,然后配置下波特率.数据位长度.奇偶校验等信息,即可使用. 1.串口的配置步骤 ①串口时钟使能 APB2外设时钟使能寄存器(RCC_APB2ENR) 置1开启.清0关闭. 第14位对串口1的时钟使能 Eg:RCC->APB2ENR| = 1<<14; //使能串口1时钟 除串口1的时钟使能在RCC_APB2ENR寄存器,其余的时钟使能位在寄存器RCC_APB1ENR寄存器,而APB2(72M)的…
https://www.cnblogs.com/Mysterious/p/4804188.html STM32L0 HAL库 UART 串口读写功能 串口发送功能: uint8_t TxData[10]= "01234abcde"; HAL_UART_Transmit(&huart2,TxData,10,0xffff);//把TxData的内容通过uart2发送出去,长度是10,timeout的时间是最大值0xffff 串口接收功能1: uint8_t value='F'; H…
from:   http://bbs.eeworld.com.cn/thread-294115-1-1.html 几乎所有的同类书籍都介绍综合性的应用示例如“万年历 + 温度显示 + 闹钟响铃 + 计时表”这样的一个实时时钟范例或“STM32 + 音频解码 + 大容量存储方案”这样的MP3播放器范例.这些综合性实例的目的在于引领读者进行综合性实验,达到把单片机的基础模块整合运用的目的.这些实例普遍存在一种共同点,即“练手”意义要大于“实用”的意义.本文将讲述一个STM32的综合性应用示例,该示例…
STM32的IAP实现 2014年07月28日 16:31:06 Stylesen 阅读数:556   IAP,全称是“In-Application Programming”,中文解释为“在程序中编程”.IAP是一种对通过微控制器的对外接口(如USART,IIC,CAN,USB,以太网接口甚至是无线射频通道)对正在运行程序的微控制器进行内部程序的更新的技术(注意这完全有别于ICP或者ISP技术).ICP(In-Circuit Programming)技术即通过在线仿真器对单片机进行程序烧写,而I…
起因: 串口IAP升级在正点原子的例程中有讲解,正点原子的方法是:在RAM中开辟一个120K的数据空间,用来存放bin文件,bin文件通过串口一次性发送到单片机,然后再实现程序的跳转.但是这种方法在实际项目中并不实用,因为没用文件校验,不能保证bin文件的完整性,如果贸然跳转,将会是设备陷入到永远无法正常工作的状态,除非返厂,重新烧写程序: 因为项目需要,但是又不想自己写上位机(偷懒),因此就是用成熟软件自带Ymodem协议进行数据传输. Ymodem协议简介: 参考:https://blog.…
STM32F103RCT有3个ADC,12位主逼近型模拟数字转换器,有18个通道,可测量16个外部和2个内部信号源.各通道的A/D转换可以单次.连续.扫描或间断模式执行. 1.通道选择 stm32把ADC转换分成2个通道组:规则通道组相当于正常运行的程序:注入通道组相当于中断.程序初始化阶段设置好不同的转换组,系统运行中不用变更循环转换的配置,从而达到任务互不干扰和快速切换. 有16个多路通道.可以把转换组织成两组:规则组和注入组.在任意多个通道上以任意顺序进行的一系列转换构成成组转换.例如,可…