探讨STM32ISP及STM32波特率自动识别技术(菜农)

技术分类: 微处理器与DSP  | 2008-07-13
作者:hotpower: EDN China

  EDN博客精华文章  作者:hotpower

探讨STM32ISP及STM32波特率自动识别技术(菜农)

  STM32之ISP也同其他ISP一样采用从机(STM32)波特率自动识别技术.

  它采用非常“不理智”的偶校验(一个字节前面加一位校验位使得“1”的个数保持为偶数),菜农对其不

  慎满意~~~

  为什么???...(俺不说)

  识别码0x7F,即S 1111 1110 P T (其中S为起始位,P为校验位,T为停止位)

  或: 0 1111 1110 1 1

  可以“看出”它采用“7:1”识别模式。

  即D0D1D2D3D4D5D6的脉宽是S脉宽的7倍.

  或D0D1D2D3D4D5D6的脉宽是D7脉宽的7倍.

  波特率自动识别技术有很多种,其中最常见的是定长对变长波特率自动识别技术

  STM32的波特率自动识别技术为PC端为定长波特率(可变化但波特率保证正确)

  STM32侧由于事先不知主机(PC)的波特率大小, 故其必须测量PC的波特率信号脉宽。

  从机测量波特率信号脉宽也有多种,最常见的也是最蠢笨的脉宽测量.

  从前面所述“7:1”识别模式可以看出:

  主机发送识别码0x7f后,从机侧的S被拉低为0,故可对STM32产生中断,即同步开始。

  但由于中断要占用MCU的中断向量表部分,故ISP程序为不影响用户的代码空间一般采用

  IO查询+定时计数模式.

  STM32的大鼻子老外的脑浆也是白色的,故跑不出此套路~~~如同NXP等~~~

  菜农的脑浆是"红色"的~~~故肯定不会采用此“低级趣味”的方法~~~

  让俺会这样定义(设计):

  1.主机以某一固定波特率表中正确的波特率间隔循环发送识别码0x7f.

  2.从机(假设主频已漂移)先用正常主频的波特率表中循环取出正确的波特率并

  间隔地从硬件端口读取接收的数据直到接收到识别码0x7f为止。

  若主频未漂移,那么循环表中所有波特率必然收到识别码0x7f,自适应过程结束.

  否则,上下微调波特率表中的所有时间常数则最后必然找到识别码0x7f.

  菜农在GPS上就采用这种波特率自动识别技术,因为GPS模块是以某一固定的波特率

  “没命的发送NEMA0813语句”,这就满足了“主机循环发送识别码”的协定。

  波特率自适应就说完了~~~开始分析STM32的自动ISP过程吧~~~

  首先ISP必须要有个进入开关设定,即Boot1/Boot0的设置.

  我们可以简化为Boot1恒为1,Boot0为进入开关.

  STM32的Boot0为: 1---运行状态  0---ISP状态

  激活ISP状态由Reset信号完成,这样就保证了在任意时刻只能在一种条件下工作的约定(公理)

  所以我们只需控制好Boot0和Reset这2个信号即可实现自动ISP~~~

  有很多人不满菜农的自动ISP行为~~~谁让俺学的是自控呢???

  N十年前俺在农校的第1堂课在笔记本上写的第1行字(可能也是当时的革命誓言吧):

  让人类从繁重地危害身心健康的体力劳动中解放出来!!!

  多年来俺一直想着这个“誓言”和“梦想”~~~从不违犯~~~所以俺设计的产品可以“笑傲江湖”十数年~~~

  言归正传.试想一下:

  当产品完成设计交付用户时,机壳肯定是封死的,除非是开发板之类的俺无话可说~~~

  但是搞产品要想“笑傲江湖”十数年就必须考虑任何微小的细节。

  现在是网络时代,USB转串口技术的成熟使都认为的工控通讯用串口是小儿科的歪论破灭!!!

  可以看到各厂家对串口的重新定位,特别是多串口产品,像ST就比较“超前”~~~

  随着技术的进步和用户的需求,远程诊断和ISP肯定是个方向.

  自动ISP可以解决不愿给源码又不愿付差旅费的烦恼,而且也从ISP软件升级后延长产品的寿命.

  ISP过程实际就是发送接收方各自的攻防体系的建立和实现过程:

  主机发送信号,从机接收信号并应答,反之亦然.

  小朋友和网友说ST的ISP有时很难联机通讯,俺开始玩STM32时也觉得如此,后来还好些。

  主要是菜农近来的打击目标侧重在DSP上,就一直没追究其问题的所在.

  不过对STMISP软件未带自动ISP很是不满~~~所以当菜鸟时就与香主“盲谈”了自动ISP的构建.

  俺有个不好的习惯~~~ 一但俺认证可行后,只要不搞产品就不会去急迫地实施---虽然可行...

  小朋友说网友说俺忽悠人~~~冤枉菜农了~~~

  因为俺无法抽身~~~俺不愿放过用HotBios叫板TI的DSP/BIOS的大好机会~~~

0
0
(请您对文章做出评价)
1】【2
加载中

对文章的评论

更多评论

剩余字数:  

浏览该文章的用户还看过...

  • 文 章

  • 论 坛

  • 博 客

  • 小 组

设计资源与分销

  • 博客推荐

  • 论坛推荐

  • 在线研讨会