24小(xiǎo)时联系電(diàn)话:18217114652、13661815404
中文(wén)
- 您当前的位置:
- 首页>
- 電(diàn)子资讯>
- 技术专题>
- 為(wèi)什么要嵌入C?
技术专题
為(wèi)什么要嵌入C?
為(wèi)什么要嵌入C?
嵌入式C是C语言的一种变體(tǐ),旨在支持嵌入式系统上的编程。它由于C语言的局限性而出现。
根据维基百科(kē)的说法:“嵌入式C编程通常需要对C语言进行非标准扩展,以支持增强的微处理(lǐ)器功能(néng),例如定点算术,多(duō)个不同的存储體(tǐ)以及基本的I
/ O操作。”
C的局限性
C在用(yòng)于微控制器时有(yǒu)一些限制-
C不支持直接访问寄存器,也不支持读取和设置单个位。
C不支持中断服務(wù)代码。
C不提供堆栈支持。
嵌入式C的功能(néng)
嵌入式C的功能(néng)使其成為(wèi)嵌入式系统开发的资产-
允许控制ON和OFF –芯片外围设备。
帮助充分(fēn)利用(yòng)基于RISC架构的有(yǒu)限的微控制器指令集。
帮助处理(lǐ)中断。
允许进行高级优化,从而有(yǒu)助于节省代码空间(这在嵌入式系统中已经是一个限制)。
嵌入式C在Extra中具有(yǒu)什么功能(néng)?
“ C”语言编译器已扩展為(wèi)包括新(xīn)的关键字,以访问微控制器中绝对位置的寄存器和变量。因此,它為(wèi)嵌入式系统开发提供了更好的支持。添加了诸如INTERRUPT,AT等的关键字。
在幕后,它包含了用(yòng)于子程序的CALL和RET或用(yòng)于微控制器的ISR的特定指令。
它还支持微控制器上存在的PORT和PINS枚举,还允许您访问和设置各个位以配置各种外设。
嵌入式C支持示例
每个微控制器都提供自己的库集,以支持其在Embedded C中的编码。
AVR库
例如,如果要编码AVR微控制器,则可(kě)以使用(yòng)AVR Libc软件包,该软件包為(wèi)Atmel AVR 8位RISC微控制器提供了标准C库的子集。此外,该库提供了大多(duō)数应用(yòng)程序所需的基本启动代码