本文介绍: 本例中我们使用推挽输出的模式,因此定义为结构体名.结构体成员=参数/设置因此上述定义的意思是,GPIO_InitStructure这个结构体的成员GPIO_Mode(GPIO的输出模式)为GPIO_Mode_Out_PP(PP: PUSH-PULL OUTPUT推拉/推挽),综上,我们选择GPIO端口的工作模式为推挽。意思是 GPIO_InitStructure这个结构体的成员GPIO_Pin(引脚)为0号引脚。
学习了江协科技的前4课,除了打开套件的第一秒是开心的,后面的时间都是在骂娘。因为51的基础已经几乎忘干净,c语言已经还给谭浩强,模电数电还有点底子,硬着头皮上吧。
1.工程文件的建立
首先是在keil中建立一个新的工程项目,一个完整的工程项目除了基础部分还包含“Library“、”Start“、“User“这三个部分,这三个文件夹是需要自己新建的。其中,Library是STM32的标准库文件的存放路径,初始的例子中,所有的官方库文件都会一股脑的复制进来(因为这会儿水平还太低,不知道如何精准地挑选手头项目需要的库文件,因此力大砖飞),在这个文件中有.c文件也有.h文件,前者是C源代码文件,具体用来实现程序的各种功能;后者是头文件,通常含有与.c文件相对应的函数声明、宏定义、类型定义、外部变量声明等。它的功能是高速编译器某个功能是存在的,但不提供具体细节。
例子: 假如你有一个用于管理LED灯的.c
文件,比如led_control.c
,它实现了点亮和熄灭LED灯的函数。你同时会有一个对应的led_control.h
头文件,它声明了那些可以被其他.c
文件调用的函数,比如turn_on_led()
和turn_off_led()
。这样,其他需要控制LED灯的.c
文件只需包含led_control.h
头文件,就可以调用这些函数,而无需知道它们的具体实现。
因此,.h文件要在段首声明,以便随时调用.c文件中编写的具体功能。
2.主函数的编写与理解
2.1RCC_APB2PeriphClockCmd函数
2.2 GPIO_InitTypeDef GPIO_InitStructure
2.2.1GPIO输出模式定义
2.2.2GPIO引脚定义
2.2.3GPIO输出速率定义
2.3初始化
2.4循环
3.利用GPIO点亮流水灯
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。