嵌入式开发基础掌握

最近听了清华大学物理系曾鸣老师的嵌入式课程,就课程中的知识进行总结。

  1. 微控制器软件开发过程中的各种文件
    嵌入式开发基础掌握_第1张图片
    (1)C编译器:生成C语言对应的汇编代码
    (2)汇编编译器:将汇编文件变为0/1代码
    (3)目标文件:此时仍是逻辑的,并未与逻辑一一对应
    (4)链接配置文件:规定内存、flash、RAM的具体分配,譬如那个地址段放变量,那个地址段放堆栈
    (5)映射文件:指出每个变量、堆栈的具体空间,譬如每个变量对应的地址范围

  2. C语言的数据类型
    嵌入式开发基础掌握_第2张图片

  3. 嵌入式的重定义:typedef
    C语言不同的数据类型在不同位数的平台上对应不同的长度,例如long int在32位,64位分别对应长度为4,8,为了保证同一工程能在不同平台上均能运行,因此我们只需要使用typedef重定义同一数据类型的长度,例如:typedef int uint_16t。
    因此,总结如下:
    嵌入式开发基础掌握_第3张图片4.C语言的位操作
    C语言的位操作如下所示:
    嵌入式开发基础掌握_第4张图片C语言中使用固定的掩码来进行位运算
    (1)判断位状态:0/1
    嵌入式开发基础掌握_第5张图片上面代码的作用为判断uchar_var第四位即bit3的位值是0/1
    (2)提取某几位的值
    嵌入式开发基础掌握_第6张图片提取变量的低四位的值:与低四位为1其他位为0的掩码&
    提取变量的高四位的值:用高四位为1其他位为0的掩码与变量&后,右移4位
    (3)移位

uchar_var = 0x43;
//左移4位
uchar_var >> = 4;
//右移4位
uchar_var << = 4;

(4)清0
嵌入式开发基础掌握_第7张图片

你可能感兴趣的:(嵌入式)