嵌入式c:进制、位、结构体、变量

掌握:1)2进制、8进制、16进制的相互转换 2)位运算(或、与运算、异或,取反,左移,右移) 3)结构体的使用及参数传递 了解:静态变量(static)、extern变量,关键字const

 进制转换:
二进制0B  十六进制0X   例如:十进制15   0B1111    0X0F

一位十六进制数等于4位二进制数,通过8421码来计算,不够位数添加零

 

例如:001011011110 所对应的842184218421,得出0X2DE

另一种方法使用电脑计算器,程序员

结构体:
枚举是在一个数据类型中只选择一部分需要的数据,结构体是把多个不同类型的数据集合在一个类型之中,数组是相同类型数据的集合

 定义结构体的关键字struct +name(结构体的名字){

int a;        结构体的成员

char b;

float c;

}x;   定义的变量

流程:
先定义结构体,再写入数据,数据调用

 

 例子:


typedef struct  //定义结构体
{
 uint16_t GPIO_Pin;
 GPIOSpeed TypeDef GPIO_Speed;
 GPIOMode_TypeDef GPIO_Mode;
}GPIO_InitTypeDef;



void LED_Init(void){   
GPIO_InitTypeDef GPIO_InitStrecture;   //相当于X Y
....
}

 位运算符(与,或,异或,取反,左移,右移)

 异或:公式a = a ^ b

左移:整数n乘以2的N次方,“<<”右边的数是N,左边的数为n

右移:整数n除以2的N次方,“>>”右边的数是N,左边的数是n

取反:~a = -(a + 1)    遇到0结果为1,遇到1结果为0

static变量   用来修饰变量和函数

1.全局变量属于静态存储方式,但并不是静态变量。全局变量的作用域是整个源程序,当一个源程序由多个源文件组成时,全局变量在各个源文件中都是有效的。

当全局变量仅限于在本源文件中使用,在其他源文件中不能引用,可以通过在全局变量之前加上关键字 static 来实现,使全局变量被定义成为一个静态全局变量。

2.当函数中局部变量的值在函数调用结束之后不会消失,而仍然保留其原值,将该局部变量用关键字 static 声明为“静态局部变量”。

extern——关键字   用在变量名前或函数名前,作用是用来说明“此变量/函数是在别处定义的,要在此处引用”

const关键字    定义只读变量的关键字,或者说 const 是定义常变量的关键字,它定义的是只读变量。这也就意味着必须在定义的时候就给它赋初值。

const定义的是变量,而define定义的是常量。

指针常量指向的地址不能改变,但是地址中保存的数值是可以改变的,可以通过其他指向改地址的指针来修改。  int *const n;
【洋桃电子】洋桃补习班(为0基础的初学者补足基础知识)STM32入门100步系列视频_哔哩哔哩_bilibili

 extern的使用详解(多文件编程)——C语言 - 蓝海人 - 博客园 (cnblogs.com)

(39条消息) C语言中const关键字的用法_xingjiarong的专栏-CSDN博客_c const

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值