最近由于想参加电脑鼠比赛,于是就想用现成的nrf24l01通信模块做一个远程下载程序的功能,以此方便调试电脑鼠,通过百度了解到IAP编程,堆栈向量表,启动模式巴拉巴拉的,然后顺便彻底搞懂了这玩意:
一般程序的下载有三种方法:ISP(In System Programing)、ICP(In Circuit Programing)、IAP(In applicating Programing)
这三种下载方式都是个啥?
单片机中ICP和ISP有哪些不同?
这位老哥写的看起来很专业,你们可以看看。
我自己的理解:
ISP一般是通过串口(USB线)下载程序,ICP是通过SWD(几根线)下载程序,IAP是让你的MCU可以通过所有的MCU支持的通讯接口或者方式(TTL、RS232、RS485、I2C,SPI,CAN等等)下载程序,NRF24l01模块之间是通过2.4G无线通信协议通信的,而NRF24l01是使用SPI与单片机通信的,所以用IAP没毛病。
实际使用的时候就是PC将bin文件(程序编译后的二进制文件)通过串口传给MCU,MCU传给无线通讯模块,无线通讯模块传给远程的无线通讯模块,远程的无线通讯模块再传给远程的MCU,嗯,逻辑清晰。
其实根据上
终于明白了:STM32三种启动方式
最新推荐文章于 2024-08-02 12:58:04 发布
本文介绍了STM32的三种启动模式:系统存储器启动、SRAM启动和Flash启动。系统存储器启动是最常见的方式,内置bootloader用于通过串口下载程序到flash。SRAM启动用于检测板子上的I/O口焊接是否正常,而Flash启动则是利用部分flash作为bootloader,接收并写入新的程序到另一部分flash中。
摘要由CSDN通过智能技术生成