STM32程序问题 求具体含义和详细解释!!!!!追加很多分!!!!!!!!

2025-04-05 07:57:21
推荐回答(4个)
回答1:

1、volatile 就是个关键字,代表该关键字具体数值会预想不到的被改变,避免编译器优化掉。更具体的理解可以在论坛上搜索。(解释很多字,这里不好打出来)
2、typedef也是一个关键字,其实就是给另外的变量换一个名字而已。
例如:typedef unsigned char uint8_t;
后面你要定义一个unsigned char 型变量:
unsigned char a;等同于uint8_t a;有没有觉得后面的定义比前面更易读?
其实标准的命名是这样:uint8_t u8_a;这样后面你用这个变量,时刻都清除这个变量是无符号占8个字节,这样就会大大避免数据溢出这个错误。

回答2:

typedef看英文大概意思是 类型定义,就是给已有的类型或名字取另外一个新的名字
你以后在其他地方用到unsigned int就可以用uint32_t来代替

uint16_t代替unsigned short int

vu32大题__IO uint32_t

比如uint16_t i,j; ==>等同于unsigned short int i,j;

回答3:

__IO 就是volatile

#define __IO volatile

回答4:

建议你百度一下define和typedef
或者去看书,一般书上都会讲得比较详细。