标题: 请教单片机远程固件升级 [打印本页]

作者: 2297809780    时间: 2021-11-30 16:00
标题: 请教单片机远程固件升级
请教单片机远程固件升级:  最近在做单片机蓝牙功能的发现一个说法,可以用蓝牙进行远程固件升级,也就是远程改代码,在平时测试迭代各种代码的时候深有体会,插拔USB转ttl等等各种不方便,于是就去找芯片厂家要来了IAP例程开发,进行测试例程的时候,也是了解到了远程固件升级的原理,相当于是有两份代码AP和Bootloader引导码程序,只要一开始烧入Bootloader引导码程序,我们就可以远程发送AP文件让单片机自己进行烧录覆盖,然而我发现厂家给的测试工具是超级中断,感觉就是一个串口助手,最后还是要电脑插着USB转ttl,有点鸡肋和多此一举,厂家也说这是让我们理解原理用的,可是如果我想通过蓝牙传输文件的话,我突然发现我没有蓝牙传输文件的工具,在网上找到的工具大部分都是串传输助手之类的,是不是需要我自己写一个蓝牙传输文件的小程序或者app之类的?请大佬前辈指点迷津或者给一个新的思路进行远程烧入代码也行!万分感谢!本人大三,用的芯片是stc8H系列。

作者: npn    时间: 2021-11-30 16:59
固件都是出厂固定的,改不了,改代码属于STC脱机下载的例子,网上有很多。




作者: shumivan    时间: 2021-11-30 17:09
首先,你的这个需求,可以用现成的串口软件或蓝牙软件去发送的,但是问题在于你的单片机要一次全部接受下来这个文件,而且文件格式对与不对你还得判断。你这里说道的蓝牙传输文件工具的使用,自己开发唯一目的是降低传输速率,毕竟你用的是51裸跑不是高性能跑的linux系统。综上所述,你确实需要自己整一个蓝牙传输文件的工具,其中传输协议还得自己写,协议应该包括指定包的申请和断点续传等功能。如果你的bootloader写的好的话,只需要你设备上行触发指定包序号申请就可以了,这样逻辑上简单。假如传输中断,你可以继续自动从头开始。
作者: 2297809780    时间: 2021-11-30 17:17
shumivan 发表于 2021-11-30 17:09
首先,你的这个需求,可以用现成的串口软件或蓝牙软件去发送的,但是问题在于你的单片机要一次全部接受下来 ...

谢谢大佬指导 ,大概了解了,菜鸟有两个方面想请教下大佬 一是这里的51裸跑和linux系统是开发环境吗,我看大部分的单片机开发都是在windows上进行的,这两个词倒是第一次在这里听到(我很菜,希望大佬解答一波万分感谢 二是现成的串口软件使用已经让我初步了解了原理 但是蓝牙软件属实是少我还没找到 有没有蓝牙软件资源让我用下研究研究[
作者: 黄youhui    时间: 2021-12-1 08:44
2297809780 发表于 2021-11-30 17:17
谢谢大佬指导 ,大概了解了,菜鸟有两个方面想请教下大佬 一是这里的51裸跑和linux系统是开发环境吗,我 ...

玩单片机分两种:裸机,系统。我们正常开发区只用官方库就是裸机开发,那些实时系统像ucosii  RX系统就是系统移植,需要额外添加对应的系统库。系统开发的单片机程序是优化过的,他们中断,处理速度等都比裸机快,毕竟人家是专门优化过的,裸机是通用的。
关于蓝牙传输文件,你手机是不可以使用蓝牙吗?茄子快传、快牙。。。。。。。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1