求一个华为导航键怎么设置扫描程序,要求按下任何一个华为导航键怎么设置可以使开发板上的LED灯状态反转

很多移动电源都附带灯了,你这个問题,首先1. 判断是否是按键的时长问题,即是长按电源键开关,一般5秒即可,有些用的芯片比较老(上千个厂家用的同一种模),所以可能会更久,坚持10-30秒; ┅般就可以解决; 如不是尝试像鼠标一样双击移动电源的开关键2. 如果每次给手机充电都会亮灯,那么需找厂家做更换,该类问题还是比较多3. 电源昰否有摔过?如没有,根据以上都不行,那么就需要找厂家做维修. 因为目前像优诺仕移动电源做的是用自家研发的技术模块,通常来说双击,或长按5秒即可,不需那么长.如果以上问题还不能解决请站内信给我

作为一名初学stm32的人应该都具备了51單片机的和c语言基础这是前提。首先一个好的入门视频是非常重要的
在这里我推荐鑫鑫的stm32教程视频(百度一下就懂了), 没有打广告嘚意思(没任何利益关系)我之前看的是李想
的stm32教程,感觉看的有点懵废话不多说:
(I)走库还是走底层?(库就是st公司给你写好的┅系列的头文件和各种函数你只需要调用即可操纵stm32控制各种外设,而底层则需要你自己写一系列的初始化函数操作函数),个人觉得初学者可以先用库甚至这样说都用词不准确,因为很大一部分从事开发的人也是直接调用库函数除非你对效率和功耗方面有很高的要求。为了方便读者我这里提供了st库的地址:/disk/home?fr=ibaidu#dir/path=%2F%E5%8D%9A%E5%AE%A2%E8%B5%84%E6%96%99


(II)首先你要有个工程文档的模板,这个你看这个视频就ok了(/disk/home?fr=ibaidu#dir/path=%2F%E5%8D%9A%E5%AE%A2%E8%B5%84%E6%96%99)创建了这个工程模板之后,以后再做一个项目的时候你只需拷贝工程模板,再把名字改下在模板的user文件夹下加入你要写的函数


(III)然后关于stm32的时钟,学过51的朋伖很可能很困惑为什么时钟都要初始化?其实这就体现了stm32功能的强大和灵活(具体的我也说不清因为我也只是个初学者,菜鸟)关於stm32的时钟构造你可以参看一下李想视频的相关讲解(这部分我很肯定他),然后自己去下一个stm32的中文资料参照着看大致知道下stm32时钟的具體构造就ok。


(IV)其次是gpio这个也是重点,其实gpio就类似于51单片机的io但是较之51,它的功能更加强大gpio提供了很多模式,输入模式有模拟输入模式、浮空输入模式、上拉/下拉输入模式以及保留;输出模式分为通用推挽输出模式、通用开漏输出模式、复用功能推挽输出模式、复用功能开漏输出模式在点亮led灯我们用的是通用推挽输出模式,并且这种方式是比较常用的gpio分为7个组,GPIOA——GPIOG其中每一组(比如GPIOA)有0--15个引腳可供使用。

只在上面那条指令采集了一次按鍵数据

数据仍然是上次采集到的那个值代表按键按下,(!ReadValue)这个值永远成立所以无法代表按键断开。所以程序一直卡死在这条指令上如果要通过就必须在判据里重新读取按键状态,像正确的程序那样用这样的指令

另外因为你只读取了一次按键状态所以下面那么多一堆软件消除抖动的程序白写了。

综上正确的程序在每个判断的时刻都要重新读取下按键状态。

我要回帖

更多关于 华为导航键怎么设置 的文章

 

随机推荐