GPIO_InitTypeDef GPIO_InitStructure;这句话什么意思
声明一个结构体,名字是GPIO_InitStructure,结构体原型由GPIO_InitTypeDef 确定, stm32里面初始化GPIO用的。设置完了GPIO_InitStructure里面的内容后 在GPIO_Init (GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_InitStruct)里面调用, 比如初始化pa口,就是 GPIO_Init (GPIOA, &GPIO_InitStructure),括号里后面那个就是你问题里面声明的那个结构体
表示入口参数 assert_param(IS_GPIO_ALL_PERIPH(GPIOx)); assert_param(IS_GET_GPIO_PIN(GPIO_Pin));?
C语言中strcpy用法 https://blog.csdn.net/mao_hui_fei/article/details/84642447
C语言中的结构体(struct)详解 https://blog.csdn.net/edward_zcl/article/details/112106703
STM32GPIO寄存器CRL、CRH、IDR、ODR、BSRR、BRR? 讲的很不错 https://blog.csdn.net/TP987150/article/details/113005394?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.essearch_pc_relevant&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-
printf,sprintf,fprintf的区别
https://blog.csdn.net/qq_37059136/article/details/80278742
printf重定义
#include <stdio.h> ?// 为编译printf,包含一个标准的c库
int fputc(int ch,FILE *f) ? ? { ? ? while((USART1->ISR&0x40) == 0); ? ?? ? ? USART1 ->TDR = (uint8_t)ch; ? ? return ch; ? } ? fputc是标准的c库接口,我们在用mdk的时候,他用的是v库, 要看mdk调用c的v库,它的printf内部实现是什么 https://blog.csdn.net/tiandiren111/article/details/107035428
最后用一个例子说明一下到底说明是回调函数:
你到一个商店买东西,刚好你要的东西没有货,于是你在店员那里留下了你的电话,过了几天店里有货了,店员就打了你的电话,然后你接到电话后就到店里去取了货。
在这个例子里,你的电话号码就叫回调函数,你把电话留给店员就叫登记回调函数,店里后来有货了叫做 触发回调事件,店员给你打电话叫做 调用回调函数,你到店里去取货叫做 响应回调事件。
原文链接:https://blog.csdn.net/yilovexing/article/details/93192484
?
|