STC新型单片机的ISP程序设计.docx

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
新型单片机的程序设计 随着单片机技术的不断发展,()功能的支持越来越普遍,这给应 用系统程序代码升级带来了极大的方便。但是,()程序的设计以及程 序空间的安排等,是需要开发者仔细细致考虑的。本文针对新型单片 机的应用程序设计作了详细的介绍, 以11F为例,详细说明了具体实 现过程,并给出了源代码。 新型单片机介绍 系列单片机是宏晶科技设计生产的单时钟机器周期 ()的单片机, 是高速、低功耗、超强干扰的新一代单片机,指令代码完全兼容传统, 但速度快倍。内部集成的寿命可达万次,并且完全支持和功能。该系 列针对不同功能、电压、封装等的型号规格非常齐全。所有的系列单 片机内部都固化了宏晶科技的程序, 不需要并行编程器,通过串口就 可以烧录用户程序。但一些系统为了程序保密或者采用其他诸如通讯 或其他通讯方式的需要,仍然需要自己编写程序用于系统升级。 在系 列单片机中以打头的芯片型号,用户程序和数据是统一寻址,允许在 用户程序中擦写,因此可以编写自己的程序。 本程序例子中选用的单片机是11F,包含内部可用的空间和扩展 的字节。 单片机内部存储器安排 为了充分使用单片机内部,将划分为三部分: 地址 使用分区 地址划分例子 高地址: 数据存储区 低地址(): 监控程序区 用户程序区 用户程序区从低地址开始,主体程序运行不受任何影响。当满足 特定条件(需要进入监控程序)时,跳转到监控程序区运行,可对用 户程序区进行擦除和改写。剩下的高地址可用作数据存储。 串口接收到特殊格式指令; 用户板上指定的按键或跳线组合; 由用户板操作功能选择。 四.程序设计 程序设计比较简单,只需对几个特殊功能寄存器进行操作就可以 完成的擦除和改写。 附件二是程序的源代码;附件三.是头文件说明,其中可以看到 对存储器的安排: * 用户程序末地址 () * * 在线升级监控程序地址 () * * 数据地址 (数据) * * 数据页数 (字节页) * 程序中需要说明的几点是: 开启功能前, 将中断允许暂存到位变 量,并将中断禁止;关闭功能时再将中断恢复。另外,根据硬件选择 的振荡器频率,在中设置适当的参数。 五. 程序设计 程序中主要是根据串口接收到的指令, 调用函数进行操作。 附件 四. 是程序的源代码。附件五是程序初始化代码,由于程序被安排从 地址开始, 因此与普通程序初始化代码不同, 中指定了代码地址是从 开始,即:“ 000”。 生成程序需要在中建立工程文件,除了包含,还应包含及。另外 还需设置程序空间地址范围:在选项卡中, 设置, 另外,程序中同时支持读写。 程序开始时将字节数据读入缓冲区 备用。指令操作过程中, 实际都只在缓冲区中操作, 直到退出程序前, 才将数据扇区擦除并将字节数据全部写入。 如果用户程序开启了看门狗, 进入监控程序后, 在看门狗最长复 位时间内, 如果串口没有收到有效的系统复位通讯指令数据, 芯片会 自动复位返回用户程序区运行。 这样可以防止程序的误入, 当然还可 以修改监控程序作更多的标志和判断以及程序陷阱, 进一步防止程序 的误操作 六 . 用户程序设计 在用户程序设计中,应该包含有判断以及跳转监控程序的代码 段。附件六是一个简单的用户程序的例子, 程序通过两种方式可进入 监控程序:同时按下两个按键或者串口在之内接收到特殊字符 '和''。' 生成程序也需要在中建立工程文件,除了包含,还应包含 七. 与计算机连接的通讯协议 升级用户代码时,需要与计算机进行通讯,一般采用串行通讯, 数据协议采用简单协议。 本文例子采用的通讯协议可以用串口测试程 序()进行程序升级测试,注意:选择晶体倍速再复位,这样通讯速率 才是。 复位指令 (计算机>单片机 ) 计算机发送四字节复位指令: ,单片机返回复位信息。 复位信息 (单片机>计算机 ) 复位信息为字节,前三字节为单片机公司特征字符 (如:“”“” “” ),最后一字节为效验和。 数据包格式 计算机发送数据包格式: ,,长度,数据,效验和 (长度与数据的 效验和 )。 擦除指令 计算机发送数据包, 其中数据只有一字节, 内容为:字符 '或''。' 单片机擦除用户程序区后返回一字节表示成功;表示失败。 编程指令 计算机发送数据包,其中数据内容: ',',地址高字节,地址低 字节,程序数据。单片机返回一字节表示成功;表示失败。 读指令 计算机发送数据包,其中数据内容: ','长度,地址高字节, 地址低字节。单片机返回一字节表示失败;表示成功然后紧跟的 是读出的数据字节和效验。 写指令 计算机发送数据包,其中数据内容: ',',地址高字节,地址低 字节,数据。单片机返回一字节表示成功;表示失败。 运行用户程序 计算机发送数据包,其中数据只有一字节,内容为:字符 '。 单片机返回一字节表示成功,然后跳转用

文档评论(0)

niupai11 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档