电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > PPTX文档下载
分享到微信 分享到微博 分享到QQ空间

嵌入式技术及应用 教学课件 ppt 作者 曹金玲 第三章

  • 资源ID:89495207       资源大小:61.67KB        全文页数:10页
  • 资源格式: PPTX        下载积分:10金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要10金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

嵌入式技术及应用 教学课件 ppt 作者 曹金玲 第三章

第3章 利用C语言开发嵌入式系统,本章主要内容,3.1 C语言与汇编语言的比较 3.2应用C语言开发ARM入门,3.1 C语言与汇编语言的比较,ARM处理器支持两种语言进行设计,一种是汇编语言(ARM/Thumb),另一种是高级语言(如C/C+语言)。汇编语言的机器代码生成效率很高,但可读性却不强,复杂的程序很难读懂;而高级语言在大多数情况下其机器代码生成效率较差,但可读性和可移植性却比汇编语言强很多,而且还可以嵌入汇编来解决高效性的代码编写问题。由于本章的重点是C语言开发嵌入式系统,所以本节只就ARM的汇编指令集做一个概括性介绍。,3.1 C语言与汇编语言的比较,利用汇编语言开发ARM系统底层驱动 ARM的汇编指令包括32位的ARM指令集和16位的Thumb指令集。ARM指令集效率高,代码密度低,而Thumb指令集具有更好的代码密度,却保持ARM的大多数性能上的优势,它是ARM指令集的子集(注:代码密度是单位存储空间中包含的指令的个数。举例说明,ARM指令是32位的,而Thumb指令是16位的,如果在1K的存储空间中,可以放32条ARM指令,但是可以放64条Thumb指令,因此存放Thumb指令时,代码密度高)。ARM程序和Thumb程序可相互调用,它们之间的状态切换开销几乎为零。,3.1 C语言与汇编语言的比较,利用C语言开发ARM底层驱动 C语言是目前常用编程语言中结合底层硬件最好的高级语言。C语言应用在嵌入式开发中的特点是代码效率较高而执行效率较低。之所以C语言的执行效率较低时因为用C语言编写的ARM底层驱动在通过软件编译时会生成相应的汇编代码,汇编代码再被编译为机器码由ARM处理器执行。C程序转换为汇编程序这个过程是由编译软件自动完成的,用户无法对其进行干涉,所以一条C程序究竟转换为多少汇编代码在一般情况下是不知道的,所以用户无法根据指令周期对程序运行的精确时间进行估计,分析由汇编语言编写的简单延迟代码和用C语言中for循环编写的简单延迟代码就是很好的例证。 虽然相对于汇编语言,C语言的执行效率较低,但是ARM9处理器的速度非常快(百兆级),S3C2410A的最高速度就可达266MHz。一般非高速应用,这个级别的速度都能满足需要,所以C语言所带来的代码上的开销基本可以忽略不计。如果一定要求对程序的关键地方做时间上的严格控制,可以采取C语言和汇编语言混合编程的模式处理。关键程序段用汇编语言编写,其他部分还是采用C语言编写,这样一来就可以两全其美了。 采用C语言编写ARM9底层驱动,只需要对ARM9处理器的外设控制器的寄存器进行全面了解就能写出功能完整的驱动程序。有关ARM9处理器的启动程序和操作系统在ARM9处理器上的关于CPU的移植,这两部分代码都用汇编语言编写。一般开发系统出厂时,这两部分代码全部由厂家提供,用户可以直接使用,无需自行编写。,3.1 C语言与汇编语言的比较,C语言与汇编语言比较 1汇编语言的特点 汇编语言直接同底层软件甚至硬件进行交互,其优点是: (1)能够直接访问与硬件相关的存储器或I/O端口; (2)能够不受编译器的限制,对生成的二进制代码进行完全的控制; (3)方便对位的操作; (4)能够对关键代码进行更准确的控制; (5)能够根据特定的应用对代码做最佳的优化,提高运行速度; (6)能够最大限度地发挥硬件的功能。 汇编语言是一种层次非常低的语言,它仅仅高于直接手工编写二进制的机器指令码,所以汇编语言有如下缺点: (1)编写的代码晦涩难懂,不易维护; (2)因为汇编你语言与硬件联系紧密,所以只能针对特定的体系结构和处理器进行优化; (3)由于其代码效率低,所以开发效率很低。,3.1 C语言与汇编语言的比较,2C语言的特点 C语言的优点是: (1)简洁紧凑、灵活方便。C语言一共只有32个关键字,9种控制语句,程序书写形式自由,区分大小写。把高级语言的基本结构和语句与低级语言的实用性结合起来。 (2)运算符丰富。C语言的运算符包含的范围很广泛,共有34种运算符。C语言把括号、赋值、强制类型转换等都作为运算符处理。从而使C语言的运算类型极其丰富,表达式类型多样化。 (3)数据类型丰富。C语言的数据类型有:整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等。能用来实现各种复杂的数据结构的运算。并引入了指针概念,使程序效率更高。 (4)C是结构式语言。C语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。 (5)适用范围大,可移植性好。C语言有一个突出的优点就是适合于多种操作系统,如Linux、UNIX和windows等;也适用于多种机型。 C语言与汇编程序相比,其缺点是语法要求不是很严格,程序设计自由度很大,这样写出的程序容易出现Bug;另外由于C语言是高级语言,对于硬件程序设计所生成目标代码的效率相对较低,一般比汇编程序生成的目标代码效率低10%20%。C语言和汇编语言混合编程基本上可以解决C语言代码效率较低的问题。,3.2应用C语言开发ARM入门,1 宏定义 对ARM器件的操作实质上就是对其各个功能寄存器的操作。达盛公司的实验平台中对S3C2410A的所有功能寄存器都做了宏定义,这样做是为了简化寄存器的访问操作。文件2410ADDR.H中包含了S3C2410A的所有寄存器定义。 / I/O PORT #define rGPACON (*(volatile unsigned *)0x56000000) /Port A control #define rGPADAT (*(volatile unsigned *)0x56000004) /Port A data #define rGPBCON (*(volatile unsigned *)0x56000010) /Port B control #define rGPBDAT (*(volatile unsigned *)0x56000014) /Port B data #define rGPBUP (*(volatile unsigned *)0x56000018) /Pull-up control B,3.2应用C语言开发ARM入门,2 程序架构 相关头文件包含 定义全局变量 主函数体 相关变量的定义 功能函数调用/注释 ,3.2应用C语言开发ARM入门,3 程序的注释及说明 在开发ARM程序的过程中需要注意一下几点: (1)变量及常量的定义名称要有具体的意义。也就是说变量或常量的定义不要用简单的a、b、c等字母,多用num、count等有实际意义的单词定义变量或常量。 (2)关键的程序行要有注释。注释一方面是给该程序的开发者维护程序使用,另一方面是给其他开发人员使用。 (3)在每个功能函数的开头都要有相关的信息注释。例如: 建议读者采用上述函数注释信息形式,给自己开发的功能函数编写注释。 (4)建议在主函数的开头部分根据程序功能多定义全局变量,这样程序处理数据比较方便。 (5)子函数的名称也必须是有实际意义的单词或拼音,这样便于程序维护和移植。,

注意事项

本文(嵌入式技术及应用 教学课件 ppt 作者 曹金玲 第三章)为本站会员(E****)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.