针对51单片机的手持编程器(SMP)
编程,通过状态指示灯和蜂鸣器监测编程过程。
2、提供灵活的编程手柄
在小封装MCU的应用中,大多数用户的PCB空间受限,要在用户的PCB板上放置一个双排十针的标准编程头是不现实的,也是不经济的。考虑到这种情况,SPP除了提供一个标准的十针编程头外,还提供一个编程手柄。编程手柄一端连接到SPP上,另外一端即为用于连接目标板的编程头。
编程头上的插针可以插拔以组成两种编程头:单排五针编程头和单排三针编程头。用户可以根据PCB的大小,选择不同的编程头。当选用五针或三针编程头时,用户无需在PCB 上安装一个体积较大的双排十针插座,只需在其PCB 上留出五个或者三个编程用的插孔。另外,编程头的插针为弹簧针的结构,用户只需将编程头压在目标板的编程孔上即可完成自动编程或者手动编程。灵活的编程手柄充分考虑了用户的利益,节约了用户PCB空间和成本。
3、供电方式灵活
SMP 有多种供电方式,用户可以根据现场的供电情况选择不同的供电方式。SMP 支持以下供电方式:
由220VAC/9VDC适配器为SMP供电;
由目标板为SMP供电;
SMP也可以为目标板供电。
4、保密性能高
为保护用户的知识产权和经济利益,SMP实现了高度加密。SMP加密分为两个层次,SPP本身的内容实现完全加密、SPP的使用实现口令保护。
1) 编程器本身被完全加密
SMP 使用了Silabs 的MCU 作为主控芯片。Silabs 的MCU 提供了多种安全机制以保护Flash不被访问。Silabs MCU主要提供了如下安全机制:
防止程序被单片机中运行的软件意外修改;
防止程序被仿真器修改;
防止程序被仿真器读取;
防止程序被单片机中运行的用户代码读取或修改
SMP的主要功能是接收用户的HEX 文件用于下载到目标板,保护用户HEX 文件的安全是SMP 的职责。因此,在SMP 中主要采用了“防止程序被仿真器读取”的安全机制。SMP被完全加密,仿真器无法读取SMP Flash中的任何内容,甚至仿真器都不能连接到SMP,仿真器要访问SMP,必须首先将SMP的Flash全部擦除。因此,用户的HEX装入到SMP后不会被盗取,有效保护了用户的知识产权不被侵犯。
2) 编程器实行口令保护
另外,SMP实行口令保护。每一台SMP都有唯一编号,同时,世强会为每一台SMP分配一个唯一的口令。口令与编程数量相关,当编程数量达到预分配值时,编程口令会失效,用户需要获得新的口令才能对SMP进行操作。只有授权用户才能得到SMP口令,即使授权用户的SMP 被非授权用户获得,非授权用户在编程到一定量的时候编程器就无法被继续使用,这样可以充分保护授权用户的利益。
5、 状态指示明确
当PC机参与编程过程时,可以从PC的超级终端清晰看到编程器的配置、编程模式的设置、编程进程、编程结果等等细节。
当SMP 脱机操作时,可以只通过状态指示灯和蜂鸣器监测编程过程。在SMP 工作的每一个阶段,状态指示灯和蜂鸣器的指示都有明确的含义,根据编程的阶段以及当前状态指示灯和蜂鸣器的状态,可以准确判断当前SMP的工作状态。
四、 SMP 操作流程
SMP操作分为初始化、编程操作、固件升级三个个部分
1、SMP初始化流程
SMP 在第一次使用时需要初始化,初始化包括输入SMP 口令、选择目标器件、设置编程接口和编程模式、擦除Flash空间、接收被下载HEX 文件等等。SMP初始化需要PC机的参与,利用Windows自带的超级终端(HyperTerminal)软件提供人机接口。操作流程如图4所示:
图4 SMP初始化流程图
2、 SMP编程操作流程
当SPP 完成初始化工作后,就可以用来完成编程工作了。编程时可以不需要PC 机的参与,编程操作非常简单,操作流程如图5 所示:
图5 SMP编程操作流程图
从以上看,SMP的操作非常简单,容易掌握。
3、 固件升级
为了方便用户随时得到最新的编程器服务,用户可以在本地升级编程器的固件程序,固件程序可以从世强的网站下载或者直接联系世强的相关人员。固件升级流程如下:
图6 SMP固件升级流程图
- 关于RTX51 TINY的分析与探讨(05-30)
- 浅析8051模块化编程技巧(05-28)
- 基于DSP和单片机通信的液晶显示设计方案(07-20)
- 锁相环控制及初始化简析(08-27)
- 基于MSP430自动胀管控制器的研究(09-07)
- 嵌入式C实现延时程序的不同变量的区别(03-01)