编辑: 施信荣 | 2015-05-19 |
5 Rev 1.1, 2013/12/09 前置 ++ 和-- 运算符
44 Sizeof 单目运算符.44 乘法运算符(Multiplicative Operators)45 加号(Additive Operators)45 移位运算符(Shift Operators)46 关系运算符(46 相等运算符(47 逻辑运算符 AND(&
&
),逻辑运算符 OR(47 条件运算符(Conditional Operator)48 5. 语句(Statements)49 表达式语句(Expression Statements)49 块语句(Block Statement)49 选择语句(Selection Statements)49 If 语句.50 switch 语句.51 重复语句.51 while 语句.52 do 语句.52 for 语句.53 Jump 语句
54 goto 语句.54 continue 语句
54 break 语句.55 return 语句.55 有标号语句.55 中断.56
(一) R-Plane.58
(二) F-Plane Bank 0.58
(三) F-Plane Bank 1.59 ISR_SaveData、ISR_RestoreData.60 TM57 C 编译程序 使用手册 UM-TM57XX_C_Compiler_S
6 Rev 1.1, 2013/12/09 ISR_SaveData_
5、ISR_RestoreData_5 、ISR_SaveData_
10、ISR_RestoreData_10.68 6. 预处理器(Preprocessors)73 宏定义(Macro Definition)73 无参的宏定义(Non-parameter Macro Definition)73 有参宏的定义(Definition of Macro with Parameters)74 包含档(Files Include)74 条件编译(Conditional Compilation)74 pragma 指令 (#pragma)75 7. 在C项目中混用 C、汇编程序代码.76 基本概念.76 C 程序调用无需传入参数之汇编函数.77 C 程序调用需传入参数之汇编语言.77 汇编调用 C 函数.78 C 和汇编混合编程的一些经验.79
(一) 谨慎使用汇编指令.79
(二) 尽量以内嵌 inline asm 取代
79
(三) 避免在 C/ASM 混合编程时, 使用.org xx 指令.79 8. 建立库函数.80 库函数.80 使用库函数.80 建立库函数之方式.80 如何引用库函数.83 9. 内存对应图.84 10. 附录.85 例子 1.85 例子 2.90 例子 3.91 例子 4.93 TM57 C 编译程序 使用手册 UM-TM57XX_C_Compiler_S
7 Rev 1.1, 2013/12/09 1. TM57 系列 C 语言编译程序概述 TM57 系列 C 语言编译程序的特殊功能 TM57 系列 C 语言编译程序符合 ANSI C 标准(但,TM57 系列 C 语言编译程序不支持指针函 式).此外,为使 tenx 芯片的工作效率与控制性能达到最佳状态,以及提供给 C 语言编程者更 好的编程支持,增加了以下特殊功能: 1. 位变量 ? 程序中只允许在全局范围中宣告位数据型态,其宣告语法请参考位数据型态. ? 在结构、联合中使用位字段,宣告语法请参考结构、联合中宣告和使用位字段. 2. 为让 C 语言编程者更自主性地安排全局变量(global variable)及函式地址,以切实地符合 实作需求;
TM57 C 语言编译程序提供指定全局变量寻址在那一个缓存器位置(Fplane 或Rplane),和指定全局常变量及函式在 TABLE ROM 地址的功能.若实作的芯片中,其F- Plane RAM 有一个以上的 bank 时,亦可指定全局变量是要储存在 F-Plane 的那个 bank 位置 上. ? 宣告变量指定储存缓存器之语法及应注意事项,请参考 F-Plane / R-Plane 宣告. ? 为全局常变量安排在 TABLE ROM 起始地址, 用户可指定 #pragma tableromaddr 来达到目的. ? 在函数定义程序中指定 TABLE ROM 地址, 请参考函数声明. 3. 提供中断函式与多样的中断保护功能:触发中断函式的执行........