- 1、本文档共1页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第14章 单片机C语言程序设计基础 参考答案.doc
第14章 单片机C语言程序设计基础
参考答案
1.答:C51在标准C的基础上,作了以下扩充:
(1)数据类型的不同。51系列单片机包含位操作空间和丰富的位操作指令,因此Keil C51与ANSI C相比又扩展了4种类型,以便能够灵活地进行操作。
(2)头文件。生产51系列单片机的厂家有多个,它们的差异在于内部资源如定时器、中断、I/O等数量以及功能的不同,而对于使用者来说,只需要将相应的功能寄存器的头文件加载在程序内,就可实现它们所具有的功能。因此,Keil C51系列的头文件集中体现了各系列芯片的不同资源及功能。
(3)数据存储类型的不同。标准C最初是为通用计算机设计的,在通用计算机中只有一个程序和数据统一寻址的内存空间,而51系列单片机有片内、外程序存储器,还有片内、外数据存储器。标准C并没有提供这部分存储器的地址范围的定义。此外,对于AT89C51单片机中大量的特殊功能寄存器也没有定义。
(4)标准C没有处理单片机中断的定义。
(5)库函数有较大不同。标准C的库函数中有一些库函数可继续使用部分库函数不适合于嵌入式处理器系统,因此它们被排除在Keil C51之外,例如库函数printf和scanf,在标准C中,这两个函数通常用于屏幕打印和接收字符,而在Keil C51中,它们主要用于串行口数据的收发。
(6)51单片机的硬件资源有限,C51的编译系统不允许太多的程序嵌套。其次,标准C所具备的递归特性不被Keil C51支持。
但是从数据运算操作、程序控制语句以及函数的使用上来说,Keil C51与标准C几乎没有什么明显的差别。如果程序设计者具备了有关标准C的编程基础,只要注意Keil C51与标准C的不同之处,并熟悉AT89S51单片机的硬件结构,就能够较快地使用Keil C51编程。
2. 答:略。
3. 答:略。
4. 答:略。
5. 答:可参考例14-8,将波形数据输出从零开始不断增1到达最大值后不断减1,回零后再不断增1到达最大值后不断减1,从而重复不断发出三角波波形的数据。
·2·
·1·
文档评论(0)