第六章 基本编程技术2.ppt_第1页
第六章 基本编程技术2.ppt_第2页
第六章 基本编程技术2.ppt_第3页
第六章 基本编程技术2.ppt_第4页
第六章 基本编程技术2.ppt_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第六章基本编程技术 基于MCS 51的编程基于rtx51 tiny 编程的基本概念 计算机硬件通用型 执行文件 RAM运行 嵌入式 固化在ROM中运行 或shadow 操作系统引导与环境的建立任务调度文件系统与应用程序的关系 捆绑或独立编程环境对程序结构的影响开始 运行 退出初试化 无穷循环 无OS带OS时 多任务 无操作系统的前后台方式程序编写 前台主要 定时中断通信中断外部事件中断ISR主要设置Flags 后台的循环主要 查询标志 并根据标志完成定时任务数据收发外部事件处理清除Flags 信号量 撤消信号 循环 流水灯的例子 送数 数据更新 延时等待 置初值 效率 多个任务都需要等待时如何协调 如果有繁重的计算 CPU资源如何发挥作用 超循环 初试化 时间标志 其它任务 更新数据 送数 撤消定时标志 Yes 定时标志生成算法 中断响应 中断返回 全程变量定时标志计算辅助变量 状态机编程算法 任务分解为状态转移状态设置转移条件由前台标志决定或由任务状态决定红色箭头为出错处理或状态维持 状态0 状态1 状态2 超循环 Sts Sts 1 N 1 状态机在串行数据通信中的作用 通信规约同步字命令字数据长度数据校验命令执行 Status 0 1 2 3 4 5 转移条件收到同步字收到命令字收到数据长度字节收到数据校验计算正确执行 Status 5 利用前后台及状态机技术的编程示例 设单片机接收命令并执行 字符编码 9600 N 8 1 无校验8位 1停止位 通信规约 7Eh Comm Len Data Verify7Eh 同步字符7Eh 单同步 Comm 命令 1字节 合法命令为0 1 2Len 数据长度 1字节 8Verify 校验和 从Comm字节起到此字节之前所有字节内容累加 累加和为1字节 溢出丢弃单片方式 无外部RAM fosc 11 0592MHz 任务实现分析 串行口的初试化 中断接收编程 前台中断 接收数据到40 5Fh循环缓冲队列 接收存数指针rHnd 取数指针gHnd gHnd rHnd表示队列为空 注意后台以状态变量status控制规约的解析过程 不满足执行条件 状态保持 正常执行依次递进 出现错误状态变量清0 丢弃数据数据校验正确时执行命令 具有可抢占式任务调度的前后台系统 调用相关指令开放中断系统 当前任务可剥夺 MCS 51实现任务抢占 EXTRNCODE F disp CSEGAT001BhLJMPT1SRVT1 ISRSEGMENTCODERSEGT1 ISRT1SRV MOVTH1 1FhMOVTL1 00hCALLisr retPUSHDPHPUSHDPLPUSHACCPUSHPSWMOVPSW 0PUSH0callF dispPOP0POPPSWPOPACCPOPDPLPOPDPHretisr ret RETIEND 函数F disp 为时间关键性任务 必须在T1中断后执行 简单的处理方法是将F disp的全部代码纳入T1中断中 但这样会延误其它中断 一些细节 EXTRNCODE F disp CSEGAT001BhLJMPT1SRVT1 ISRSEGMENTCODERSEGT1 ISRT1SRV MOVTH1 1FhMOVTL1 00hCALLisr retPUSHDPHPUSHDPLPUSHACCPUSHPSWMOVPSW 0PUSH0callF dispPOP0POPPSWPOPACCPOPDPLPOPDPHretisr ret RETIEND PUSH0 POP0 保护了R0 R0的直接地址为0 汇编语言调用C51的问题还有哪些寄存器需要保护 需要查看C51中F Disp 函数中对通用寄存器的实际情况在C51模块中加 pragmaSR

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论