第4章c51说明书分解.ppt

  1. 1、本文档共46页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章单片机的C51语言 4.1 C51的程序结构 4.2 C51的数据结构 4.3 C51与汇编语言的混合编程 第4章单片机的C51语言 C51语言编程可胜任单片机的基本测量与控制任务。 对于某些特殊的I/O 接口处理、中断处理、强调程序执行速度等场合,仍希望采用汇编程序。 C51 编译器提供了与汇编语言程序的接口规则,可方便地实现C51 与汇编语言程序的相互调用。 本节仅讨论在C51中调用汇编函数和在C51中嵌入汇编代码两种方法。 概要 第4章单片机的C51语言 1. 在C51中调用汇编程序 1)程序的寻址,main.c中调用的max函数,如何与汇编文件中的相应代码对应起来; 2)参数传递,main.c中传递给max()函数的参数a和b,存放在何处可使汇编程序能够获取到它们的值; 3)返回值传递,汇编语言计算得到的结果,存放在何处可使C语言程序能够获取到。 C51程序中调用汇编语言,需要解决三个问题: 1)程序的寻址问题 第4章单片机的C51语言 通过在汇编文件中定义同名的“函数”来实现。 第4章单片机的C51语言 举例:P1口延迟闪烁。 Test1.c Test2.asm 2. C51中嵌入汇编代码 程序中需要用到一些简短的汇编指令时,可以通过语句 “# pragma”嵌入汇编代码的办法实现。 第4章单片机的C51语言 说明: 汇编代码必须放在两条预处理命令 #pragma asm和#pragma endasm之间,预处理命令必须用小写字母,汇编代码则大小写不限。 本实例可实现用汇编语句进行累加器A循环加1和将累加结果传递给C51变量的功能。 实例: 第4章单片机的C51语言 嵌入汇编代码时需要对编译器Keil进行一定设置,右键点击该.c源文件进行设置。 实例 键控流水灯 第4章单片机的C51语言 【要求】 K1为“启动键”,首次按压K1可产生“自下向上” 的流水灯运动; K2 为“停止键”,按压K2可终止流水灯的运动; K3和K4为“方向键”,分别产生 “自上向下”和 “自下向上” 运动。 第4章单片机的C51语言 思路分析:设立状态标志变量→根据键值修改标志值→根据标志值控制灯的亮灭 总体关系流程图 第4章单片机的C51语言 按键状态值: 无按键—— xxxx 1111B 按压K1——xxxx 1110B 按压K2——xxxx 1101B 按压K3——xxxx 1011B 按压K4——xxxx 0111B 按键动作判断——(P0 0x0f)是否等于 0x0f?若是,说明无按键动作,反之则有按键动作。 → 0x0f → 0x0e → 0x0d → 0x0b → 0x07 获取按键状态 第4章单片机的C51语言 修改方向和启停标志值 第4章单片机的C51语言 P2口亮灯编码: xxxx 1110 xxxx 1101 xxxx 1011 xxxx 0111 D1~D4循环方向控制 char led [ ] = {0xfe,0xfd,0xfb,0xf7}; for (i=0; i=3; i++){ P2 = led [i]; } //↓移动 for (i=3; i=0; i-- ) { P2 = led [i]; } //↑移动 查 表 方法 第4章单片机的C51语言 else 第4章单片机的C51语言 实例2原理图与程序界面图 本章小结 C51变量定义必须考虑单片机的多空间存储结构。其一般定义格式为:【存储种类】数据类型【存储类型】变量名。 在Keil下进行C51编程的基本步骤是:建立工程→输入源程序→添加源程序→【工程设置】→编译源程序→【动态调试 】→ 运行。 单片机I/O口基本编程应用包括按键(或开关)状态检测、发光二极管输出控制、数码管动态显示以及行列式键盘扫描编程等内容。 第4章单片机的C51语言 第4章 单片机的C51语言 4.1 C51的程序结构 4.2 C51的数据结构 4.3 C51与汇编语言的混合编程 第4章单片机的C51语言 4.1 C51的程序结构 4.2 C51的数据结构 4.3 C51与汇编语言的混合编程 第4章单片机的C51语言 51汇编语言能直接操作单片机的系统硬件,指令执行速度快。但其程序可读性差,且编写、移植困难。 C51是为51系列单片机设计的一种C语言,其特点: 结构化语言,代码紧凑——效率可与汇编语言媲美 接近真实语言,程序可读性强——易于调试、维护 库函数丰富,编程工作量小——产品开发周期短 机器级控制能力,功能很强——适合于嵌入式系统开发 与汇编指令无关,易于掌握——在单片机基础上上手快 C51语言已成为51系列单片机程序开发的主流软件方法。 用C语言编写

文档评论(0)

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

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

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档