回调函数的使用示例
2017-07-18 17:58
204 查看
/** * 开发环境:Microsoft Visual Studio 2016 专业版 * 开发作者:Jack Ming * 联系方式:1097****4388 * 文档说明:回调函数使用例子 */ #include "windows.h" #include "stdio.h" /** * 模块消息传递 */ struct message { void * pbuff; int size; }; /** * 定义回调函数 */ typedef void(*led_blink)(struct message * p_message); /** * LED模块 */ void LED_Blink(struct message * p_message) { int key_info[3]; /* 获取key1按键信息 */ key_info[0] = ((int *)p_message)[0]; if (key_info[0] == 1) { printf("我亮了...\r\n"); } } /** * key模块 */ void key_scan(led_blink LED_Blink) { struct message message; int key_info[3] = {0}; int key1 = 0, key2 = 0, key3 = 0; /* 键值 */ int down = 1, up = 0; /* 键状态 */ //key1 = GPIO_ReadBit(GPIOA,Pin1); /* key1按下,led1闪烁 */ if (key1 == down) { key_info[0] = 1; /* key1被按下 */ message.pbuff = key_info; message.size = 3; LED_Blink(&message); /* 通知led */ } /* key2按下,电机转动 */ } int main(void) { while (1) { key_scan(LED_Blink); } system("pause"); }
相关文章推荐
- jquery序列化表单以及回调函数的使用示例
- linux使用定时器回调函数示例
- jquery序列化表单以及回调函数的使用示例
- XtraGrid使用教程整理+示例
- 使用 cat、ed 和 sed 的快速编辑示例
- Java 集合系列05之 LinkedList详细介绍(源码解析)和使用示例
- 使用Digester解析XML文档示例
- PHP使用正则表达式实现过滤非法字符串功能示例
- [AirFlow]AirFlow使用指南三 第一个DAG示例
- [Android]自定义组件示例:使用attrs.xml文件定制RadioButton
- C/C++混合编程之extern “C”的使用示例
- google protobuf 使用示例
- Python二维码生成库qrcode安装和使用示例
- SQL Server中通配符的使用示例
- sed命令使用示例
- 使用python画个小猪佩奇的示例代码
- linux下编译安装libcurl(附使用示例)
- (9) ExtJS4.2 Window的用法示例 ExtJS中Window组件最小化 使用iframe填充ExtJS Window组件
- jquery采用oop模式class类的使用示例
- 分布式消息队列RabbitMQ之三:四种典型使用场景和代码示例