当前位置: 首页 > news >正文

c语言学习16按键控制流水灯

按键控制流水灯

        按键1:开启流水灯

        按键2:关闭流水灯

        按键3:加速

        按键4:减速

int main(void)

{

        u8 speed = 5;  // 4 3 2 1  0 255 

        u8 key;

        u8 flag=0;

//掉电不保存,w25q64可以

led_init();

key_init();

while(1)

        {

                key=key_scan();

                if(key==1)

                {

                        //printf("key:%d\r\n",key);

/*验证是否一直进入,观察有灯亮但很短,串口打印只有一个数字。按一次只返回一次1松开后返回0x255,所以不能直接用按键来控制,按键松开后值就变了,但用一个按键控制一个标志变量,标志变量来控制一个流水灯*/

                        //led_flash(speed);//流水灯函数

                        flag=1;

                  }

                else if(key==2)

                {

                        led_all_off();

                        flag=0;

                  }

                  else if(key==3&&flag==1)

                {

                       speed--;

                        if(speed<=1)

                                {

                                        speed=1;

                                }

                  }

                  else if(key==4&&flag==1)

                {

                       speed++;

                                  if(speed>=10)

                                {

                                        speed=10;

                                }

                  }

        if(flag==1)

        {

                led_flash(speed);//流水灯函数

        }

        }

}


http://www.mrgr.cn/news/75153.html

相关文章:

  • Midjourney 图生图,真人二次元保持一致性,场景多元可选择
  • 通信行业研究系列报告
  • 网络安全之国际主流网络安全架构模型
  • 详解八大排序(一)------(插入排序,选择排序,冒泡排序,希尔排序)
  • React学习05 - redux
  • problem forward和solution backward有什么区别
  • 闯关leetcode——3178. Find the Child Who Has the Ball After K Seconds
  • docker安装到D盘
  • 游戏引擎学习第11天
  • 易考八股文之代理模式在AOP中如何应用?
  • Gartner发布XDR扩展检测和响应市场指南:XDR需要具备的19项功能
  • 逆向攻防世界CTF系列31-elrond32
  • 代码随想录算法训练营第46天 | 647. 回文子串、516.最长回文子序列
  • curl 安装最新版
  • 如何在手机上完整下载B站视频并保存到相册?
  • 制造业数字化转型路线图,终于有人捋清楚了
  • 用哈希表封装myunordered_map/_set--C++
  • 《Python网络安全项目实战》项目5 编写网站扫描程序
  • 20241113下载安装虚拟桌面工具VYSOR并连接中科创达的高通CM6125开发板
  • 深入理解ECDSA:椭圆曲线数字签名算法的原理与应用
  • 算法基础 -- 红黑树原理与插入伪代码
  • SpringCloud框架学习(第三部分:Resilience4j 与 Micrometer)
  • 关于我重生到21世纪学C语言这件事——指针详解(1)
  • 【计算机网络】Socket编程接口
  • 【MinIO】Python 运用 MinIO 实现简易文件系统
  • WLAN消失或者已连接但是访问不了互联网