我们来讲一个我最常用的定义方式,首先是定义这个结构体的内容,类似于定义一个类
定义结构体的内容
struct SPI{
u8 SPI_TX[20];
u8 SPI_RX[20];
u32 addr;
u16 length;
u8 task_1;
u8 task_2;
u8 task_3;
u16 size;
u8 SR1;
u8 SR2;
u8 SR3;
u16 ID;
u32 Page_Address;
};
实际去定义这个结构体
SPI就是这个类的名称SPI_1就是我定义的这个结构体,里面的内容根据需求去定义,这个struct 定义在,h文件里。
struct SPI SPI_1;
然后给这个类定义一个实体的结构体,也可以定义多个,根据使用需求决定。
if(SPI_1.task_1)
{
task1();
SPI_1.task_1=0;
}
然后直接使用就可以啦,包括在keil里的watch看这个结构体的内容也能收起来,非常方便
总结
总结一下
第一步,在.h定义你的结构体长什么样,例如,你的结构体是猪
第二步,在你的要用的.c里去定义你要几只猪,叫什么名字
第三步,如果有在其他.c里用的需求就再去.h里声明一下你这几头猪的名字
然后就可以直接使用啦