tag 标签: 按键

相关帖子
相关博文
  • 热度 4
    2023-10-1 07:19
    939 次阅读|
    0 个评论
    请教一个问题,按键,单片机屏显示,在一个while 内最好不要超过多少时间合适,可以看出屏显没迟疑? 单片机屏幕显示的最佳刷新频率取决于具体的单片机型号和屏幕类型。一般来说,单片机的刷新率应该在几十到几百赫兹之间,这样才能保证屏幕显示的流畅性和稳定性。 在一个while循环中,最好不要超过屏幕刷新周期的时间,否则可能会导致屏幕显示出现迟疑或闪烁现象。具体的屏幕刷新周期时间可以参考屏幕的技术规格书或者咨询屏幕制造商获取。 如果你不确定屏幕刷新周期的时间,可以通过实验来观察屏幕显示的流畅性和稳定性,然后调整刷新频率直到找到最佳的效果。同时,你也可以考虑使用定时器来控制刷新时间,以保证刷新频率的稳定。
  • 热度 6
    2023-4-14 17:06
    610 次阅读|
    0 个评论
    在平板电脑大评比系列文中,我们已分别介绍过平板电脑的电池寿命、充电效能、无线网络效能、显示屏幕与相机镜头的好坏,这回百佳泰将介绍使用者体验的比较。 用户购买平板电脑后,首先是开箱确认配件以及使用说明书,再来就是设定网络、用户账号数据与设定应用程序,紧接着实际使用,本篇会为您介绍平板中的感应器、触碰屏幕、外盒包装与接头或按键的使用,这些影响使用体验的重要因素。 一般平板电脑中有的传感器为加速度计、磁力计、陀螺仪与环境光传感器,百佳泰将使用测试软件来看其功能是否正常;触碰屏幕也会用画线、单点碰触、多点碰触、滑动、缩放与拉放等方式,来做功能性的确认,看使用上会不会有不顺畅或是卡卡的问题。 本次进行评比的5台平板电脑与测试项目的结果列出如下表,测试项目在功能使用与用户使用下没发生问题会以PASS显示,有问题或是操作不太顺则以FAIL显示,N/A就表示不支持该功能: 因为我们要比较用户在使用这些功能的感受,因此再把这些项目转成分数,才能表现出高低结果,完全没问题的就5分、其中测试项目有发生问题的会根据情况给2~4分,不支持的项目给1分,最后得到分数表如下: 以结果来看这5台的使用感受满接近的,除了Walmart不支持Ambient Light Sensor以外,其他使用者感受都是一样的分数。 接着看开箱过程中,配件是否齐全与标签和说明书是否详细与清楚,其他项目还有平板上的按键是否功能正常,以及用户是否能照着操作手册完成整个设定,结果呈现方式会跟前面一样,未发生问题便以PASS显示。 图: 5台平板的外箱与包装 把这些项目转成用户体验分数,最后到分数表如下: 透过以上测试结果总结如下: 1.所有的平板电脑在感测、触控的功能使用上都是没问题的。 2.所有设备的基本功能,包括:外接按键、USB接口、耳机接口、麦克风、扬声器、摄像头等能都能正常工作。 3.所有设备的设置过程都易于理解和学习。设置过程中没有误导性解释,使用者皆可以顺利完成设置并开始使用平板电脑。 本次提供的测试数据是可让大家挑选平板电脑的参考,实际上还是要搭配自己真实使用的感觉,才能找到最适合的产品。下一回百佳泰将会分享 各平板计算机跑应用程序的效能,主要会利用各种Benchmark的软件(如3D Mark、AnTuTu或PC Mark等等)跑出分数来判断各种效能的好坏 ,敬请期待!
  • 热度 1
    2022-7-20 06:09
    2592 次阅读|
    8 个评论
    1.简介 按键为何消抖,原因是当按键按下和松开时,由于弹片回弹抖动,而导致按键对应管脚误判为多次按下和松开。 从以下动图对比可以看出: 2.原理 如图,我们认为的按键波形是理想的,然而其实正真的实际波形是每次按下和弹起都是由回弹的,如图实际波形其实也是理想化的,为了方便理解。 既然有回弹,那么怎么避免呢?一般采用方式为延时法。C语言最直接直接一个delay就完事了,简单粗暴。在FPGA里,使用延时+判断的方式,既延时完后再次判断是否已经稳定。 3.源代码 3.1状态机转移图 3.2实现 3.2.1延时模块 //计数延迟5ms always @( posedge clk or negedge rst_n ) begin if ( rst_n == 1'b0 ) delay_cnt <= 20'd0 ; else if ( cnt_start == 1'b1 ) delay_cnt <= delay_cnt + 20'd1 ; else delay_cnt <= 20'd0 ; end always @( posedge clk or negedge rst_n ) begin if ( rst_n == 1'b0 ) cnt_finish <= 1'b0 ; else if ( delay_cnt == 20'd499999 ) cnt_finish <= 1'b1 ; else cnt_finish <= 1'b0 ; end //FSM for the key always @( posedge clk or negedge rst_n ) begin if ( rst_n == 1'b0 ) begin state <= IDLE ; cnt_start <= 1'b0 ; key_o_r <= 1'b1 ; end else case ( state ) IDLE : begin if ( key_neg == 1'b1 ) begin cnt_start <= 1'b1 ; state <= FILTER0 ; end else state <= IDLE ; end FILTER0 : begin if ( cnt_finish == 1'b1 ) begin cnt_start <= 1'b0 ; key_o_r <= 1'b0 ; state <= DOWN ; end else if ( key_pos == 1'b1 ) begin state <= IDLE ; cnt_start <= 1'b0 ; end else begin state <= FILTER0 ; end end DOWN : begin if ( key_pos == 1'b1 ) begin state <= FILTER1 ; cnt_start <= 1'b1 ; end else begin state <= DOWN ; end end FILTER1 : begin if ( cnt_finish == 1'b1 ) begin cnt_start <= 1'b0 ; state <= IDLE ; key_o_r <= 1'b1 ; end else if ( key_neg == 1'b1 ) begin state <= DOWN ; cnt_start <= 1'b0 ; end else begin state <= FILTER1 ; end end default : begin state <= IDLE ; key_o_r <= 1'b1 ; cnt_start <= 1'b0 ; end endcase end
  • 热度 13
    2022-4-20 18:17
    1085 次阅读|
    1 个评论
    ​ 转载-- 嵌入式Linux 2021-07-29 07:30 以下文章来源于芯片之家,作者gadgetronicx ​ 1、按键消抖, 在机械按键断开与闭合时,按键的触电是有一点弹性的, 按下去的时候不会马上就很稳定的导通,断开也不会马上彻底断开, 它是有一个过程的,中间是有抖动的,所以当我们检测到按键状态发生变化时,不应该马上响应,而是等待一小段时间再去重复检测一次, 确保状态真的变化了 ,再进行处理,这个时间一般10-20ms就可以了,下图真实的展示了按下去时候输出的波形 ​ ​ 之前分享的一个不错的按键架构: 完全由C编写,高度可移植,超级牛逼的按键驱动机制! (点击阅读) 2、 齐纳二极管, 又称稳压二极管,齐纳二极管允许电流正向流动,在这种情况下,齐纳二极管的行为就像普通二极管一样。每个齐纳二极管都有 反向击穿电压, 对于不同的齐纳二极管,反向击穿电压的值也不同。当施加小于击穿电压的反向电压时,齐纳二极管像普通二极管一样阻止电流,但是当反向电压大于击穿电压时,齐纳二极管开始反向传导。 当齐纳二极管反向导通时,两端的电压降几乎等于反向击穿电压。 ​ 3、 ADC, 将模拟量转换为数字量的过程称为模数( A / D )转换,是指将连续变化的模拟信号转换为离散的数字信号的器件。现实世界中的各种信号,例如温度、压力、声音或者图像等都是模拟的,无法直接存储, 需 要转换成更容易储存、处理和发射的数字形式。 模/数转换器可以实现这个功能,在各种不同的产品中都可以找到它的身影, 只要采样精度足够高,就能无限接近并还原原始的模拟型号。 ​ 4、数字&模拟传感器, 有一些传感器输出的信号是数字的,通过指定的协议读取写入数据,还有一些是模拟的,输出是一个连续变化的电压信号,给到外围电路或者芯片读取检测。 ​ 5、浪涌电流, 电流其实跟水流蛮像的,浪涌电流是电源或电气设备在接通时消耗的瞬时高输入电流,在开闸的瞬间冲击非常大,大家想象一下水流就明白了,实际上电流的速度超级无敌快,如果没有限制,那么大电流除了会在电源线上产生电压骤降之外,还会损坏设备,并导致由同一电源供电的其他设备发生故障, 我们平时设计的电源部分,有些场景也是需要做缓启动的,避免启动瞬间很大的电流冲击。 ​ 6、 电感VS电容 , 两个肌肉猛男PK?电容通电之后全身满满的电荷,电感通电之后全身满满的磁场,谁更厉害? ​ 7、温度传感器, NTC是负温度系数的热敏电阻,电阻随温度的上升而减少,PTC是正温度系数的热敏电阻,电阻随温度的上升而增加,不过这里有一点不对的地方,PTC超过一定的温度(居里温度)后,电阻值才随着温度的升高呈阶跃性的增高。 NTC一般串接在主电源回路中,电子电路在开机瞬间会产生很大的浪涌电流, 开机瞬间电流较大,NTC原件阻值增大,抑制浪涌电流后,阻值逐渐下降到最小, 不会对电路产生影响,从而保护电路免受冲击。 PTC通常用于具有自恢复功能的保险丝或者加热器的应用。 ​ 8、加密与解密, 原始数据通过一定的协议编码进行加密,发给第三方,加密后的数据与之前的不同,第三方拿到之后不可直接使用,之后传给接收者,通过约定的协议进行加密,恢复原始数据。 ​ 9、电源转换, DCAC一般用于逆变器,直流电压转换为交流电压,ACDC一般用于适配器,将交流电转换为直流电。 ​ 10、保险丝, 我能顶得住1A的电流,2A的电流,我就断了! ​ ---end--- ​
相关资源