目录

首言

一、按键输入初始化:

二、按键main 应用:


首言

//     
// 作者:  小飞虫科技
// 淘宝:  首页-小虫飞科技-淘宝网 (taobao.com)
// 开发板: GD32F3X0系列
//

一、按键输入初始化:

void KEY_Init(void)
{/* enable the key clock */rcu_periph_clock_enable(RCU_GPIOA);/* configure key GPIO port */     gpio_mode_set(GPIOA, GPIO_MODE_INPUT, GPIO_PUPD_PULLUP, GPIO_PIN_1);}

二、按键main 应用:

/*SYS*/
#include "gd32f3x0.h"
#include "systick.h"/*USER*/
#include "LED.h"
#include "KEY.h"void led_flash(int times);
/*!\brief      main function\param[in]  none\param[out] none\retval     none
*/
int main(void)
{systick_config();/*led init*/LED_Init();KEY_Init();led_flash(1);while(1){if(RESET == gpio_input_bit_get(GPIOA, GPIO_PIN_1)){/* delay 50ms for software removing jitter */delay_1ms(50);if(RESET == gpio_input_bit_get(GPIOA, GPIO_PIN_1)){gpio_bit_toggle(GPIOB, GPIO_PIN_4);while(RESET == gpio_input_bit_get(GPIOA, GPIO_PIN_1));}}}
}
/*!\brief      flash the LEDs for test\param[in]  times: times to flash the LEDs\param[out] none\retval     none
*/
void led_flash(int times)
{int i;for(i = 0;i < times;i++){/* turn on LED */gpio_bit_set(GPIOB, GPIO_PIN_4);/* insert 200 ms delay */delay_1ms(200);/* turn off LEDs */ gpio_bit_reset(GPIOB, GPIO_PIN_4);/* insert 200 ms delay */delay_1ms(200);       }
}

GD32F310 (二) 按键轮询输入相关推荐

  1. 4412开发板学习之Linux驱动开发(八):GPIO读操作与按键轮询实现

    GPIO读操作与按键轮询实现 GPIO读操作 硬件 查找对应IO口 寄存器配置 软件 需要的函数 注册设备 代码及分析 实验效果 按键轮询实现 原理分析 硬件 软件 用到的函数 先前准备工作 代码及分 ...

  2. Exynos_4412——轮询与中断

    目录 一.CPU与硬件的交互方式 1.1轮询 1.2中断 1.3DMA 二.轮询方式的按键实验 三.GPIO中断相关寄存器 四.GPIO中断编程 五.小作业 一.CPU与硬件的交互方式 1.1轮询 C ...

  3. 网卡收包基础: 中断-轮询-ring buffer-DMA-NAPI

    参考链接: NAPL模式 NAPL简介 硬中断和软中断 中断与轮询的区别一 ring buffer 一. 中断 从本质上来讲,中断是一种电信号,当设备有某种事件发生时,它就会产生中断,通过总线把电信号 ...

  4. 【计算机网络】数据链路层 : 轮询访问 介质访问控制 ( 轮询协议 | 令牌传递协议 )

    文章目录 一. 介质访问控制 ( Multiple Access Control ) 二. 轮询协议 三.令牌传递协议 四.令牌传递协议 示例 一. 介质访问控制 ( Multiple Access ...

  5. java 异步事件_Java编程入门——异步事件:轮询与中断

    CPU几乎把所有的时间都花费在从内存获取指令并运行它们的过程中.然而,CPU和主存仅仅只是计算机硬件系统中众多组件的其中两个.一个完整的系统还包含其他的设备,比如: 硬盘或者固态硬盘,用来存储程序和数 ...

  6. Nginx负载均衡实现之用户手动选择与DNS轮询

    负载均衡常用的处理方式 方式一:用户手动选择 这种方式比较原始,只要实现的方式就是在网站主页上面提供不同线路.不同服务器链接方式,让用户来选择自己访问的具体服务器,来实现负载均衡. 方式二:DNS轮询 ...

  7. java 硬件中断_Java异步事件:轮询与中断

    CPU几乎把所有的时间都花费在从内存获取指令并运行它们的过程中.然而,CPU和主存仅仅只是计算机硬件系统中众多组件的其中两个. 一个完整的系统还包含其他的设备,比如: 硬盘或者固态硬盘,用来存储程序和 ...

  8. websocket和ajax轮询的区别

    1.ajax轮询 ajax,每一个前端开发都用过,都知道它一般是异步的,也能同步使用. 聊天是需要长连接的,在一些场景下我们不想使用比较耗费资源的长连接,又想实现数据监听,这时候我们就会使用ajax的 ...

  9. Tiny4412裸机程序,按键检测(轮询方式)

    由于前几天出差,博客没有更新,今天看了看Tiny4412的原理图,把按键扫描程序写了一下,用的是轮询方式,后面会有中断方式的实现,闲话少说,进入正题,程序由前一个实验Tiny4412之C语言实现流水灯 ...

最新文章

  1. web开发的一些心得
  2. Android 利用an框架快速实现网络请求(含下载上传文件)
  3. pack unpakc
  4. ibm z系列服务器 cpu,低调发布:看IBM System Z系列大型机CPU
  5. matlab mex 矩阵,如何从mex函数访问matlab结构字段中的矩阵?
  6. Spring5(3)---Spring5概述
  7. android 平台 列表布局,Android 设计指南 - 风格
  8. 我是技术男,也曾创过业,也曾拿过风投...
  9. sae php api,api.php · silenceper/saeApi - Gitee.com
  10. 如何在HTMl网页中插入百度地图
  11. SQL Server 2012软件安装教程
  12. 自阿里P8爆出1031道java面试题后,我在boss直聘狂拿千份Offer
  13. 360权重是什么,360权重怎么查询
  14. Allegro的布线
  15. 我的世界1.12.2java下载_我的世界java版整合包
  16. 平凡前端之路_05.CSS与CSS3
  17. 用python发送put请求
  18. (冒泡排序) Problem: 并列排名
  19. JavaScript 实时监听input 中值变化
  20. 低版本Java中appletviewer在64位系统中的问题解决

热门文章

  1. 【Java开发环境搭建】
  2. Realme GT Neo5 SE ROOT 解锁BL教程
  3. 苹果产品信息查询_苹果维修召回计划 + iPhone辨别真伪
  4. 《集体智慧编程》读书笔记10
  5. vue中 div高度随另一个div的高度变化
  6. python识图自动化_Python自动化测试-验证识别
  7. 中外数学教学名著与数学思想
  8. HttpClient访问https,设置忽略SSL证书验证
  9. Java 统计接口消耗时间
  10. 中国保险中介行业市场规模调研及投资可行性研究报告2022-2027年