![]() |
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1;//針對某組的一個引腳進行初始化 //GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1;//針對某組的兩個引腳進行初始化 //GPIO_InitStructure.GPIO_Pin = GPIO_Pin_All;//針對某組的16個引腳進行初始化 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; 請教,后面兩個是對全部16個引腳進行設置,還是只對選擇的引腳進行設置?看.h文件一頭零水,沒有看明白。 |
可以,很詳細的說明 |
suinile 發表于 2020-4-2 16:49 是的。相當于對參數進行了兩次賦值,當然,最后一次保留,然后通過初始化函數把參數設置傳遞到端口寄存器去。我也是初學者,不一定對。彼此學習 |
優秀,學習一下 |
優秀,學習一下 |
本帖最后由 suinile 于 2020-4-7 15:18 編輯 同一個端口的不同引腳配置成不同的輸出模式,比如:端口A的1腳輸出配置成頻率2M 推挽輸出、2腳輸出配置設置成頻率10M 開漏輸出。 GPIO_InitTypeDef GPIO_INIT_GPIOA; //端口參數配置 GPIO_INIT_GPIOA.GPIO_Pin = GPIO_Pin_1; GPIO_INIT_GPIOA.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_INIT_GPIOA.GPIO_Speed = GPIO_Speed_2MHz; GPIO_INIT_GPIOA.GPIO_Pin = GPIO_Pin_2; GPIO_INIT_GPIOA.GPIO_Mode = GPIO_Mode_Out_OD; GPIO_INIT_GPIOA.GPIO_Speed = GPIO_Speed_10MHz; GPIO_Init(GPIOA,&GPIO_INIT_GPIOA);//端口配置初始化 這種寫法的話,是不是1腳的輸出配置被2腳的輸出配置覆蓋掉了?? |
可以,很詳細的說明 |
![]() |
可以,夠詳細 |
優秀。。。。! |
復用,映射 |
優秀![]() |