历史上的今天
返回首页

历史上的今天

今天是:2024年09月20日(星期五)

正在发生

2019年09月20日 | 51单片机学习笔记(二)

2019-09-20 来源:eefocus

按照教材,昨天学到了检测按键的程序,也很明确昨天学那个程序难登大雅之堂,因为它没有实现按键在闭合和开关时的电压信号抖动。


如图示,键按下试产生多个抖动的波形,也就是产生了多个101010,而我们实际中只是两个状态只是1,或只是0。所以收集了干扰信号。于是就有今天我学的“去抖动程序”

去抖原理:收到第一个低电平信号(按下的信号)后,开始延迟再次收集信号,再确认是否低电平(一直被按下)这时收集的信息就来自抖动波形图的中间部分,所以只要这个时间段是低电平,按键就肯定被按下了,不会再有抖动。这时就跳到指令检测这个按键引脚什么时候变为高电平(表示释放按键),不断循环检测,直至按键被释放。检测到释放信号后,就有cpl指令修改相应led灯的开关状态。所以这个程序通过  延时和 检测到按键被释放后才控制led灯的亮灭  而实现了去抖的功能。准确地实现按一下就真正等于单片机收集到一个信号而不是多个抖动的信号。


需要提一下的是如果没有   检测到按键被释放后才控制led灯的亮灭  的指令的话(27--33行指令),而只有延时,经实验证明,是无法实现去抖的。因为这样在波形中间时段就已经不断控制led的亮灭,而那么长的波段,led不断闪烁,当按键释放的时候,led是亮还是灭,就听天由命了。。。


无检测到按键被释放后才控制led灯的亮灭  指令程序如下:

    ORG 0000H

SJMP START

ORG 0030H


START:

MOV SP,#060H

MOV P0,#0FFH

MOV P2,#0FFH



MAIN:

JNB P0.0,QUEREN

JNB P0.7,QUEREN2

SJMP MAIN



QUEREN:

CALL DELAY

JNB P0.0,SHIFANG

SJMP MAIN


QUEREN2:

CALL DELAY

JNB P0.7,SHIFANG2

SJMP MAIN


SHIFANG:

WAIT: JB P0.0,LED0

SJMP WAIT


SHIFANG2:

WAIT2: JB P0.7,LED7

SJMP WAIT2


LED0:

CPL P2.0

SJMP MAIN


LED7:

CPL P2.7

SJMP MAIN


DELAY:

MOV R0,#25


D1: MOV R1,#100

D2: DJNZ R1,D2

DJNZ R0,D1

RET


END

这个程序虽然有缺陷,但很值得分析 。。


推荐阅读

史海拾趣

CDIL[Continental Device India Pvt. Ltd.]公司的发展小趣事

CDIL采用无晶圆厂模式生产分立半导体器件,专注于功率半导体和高可靠性组件的研发与生产。这一模式使CDIL能够更加灵活地应对市场变化,降低生产成本,提高产品竞争力。同时,公司还采用自己的封装技术,确保产品能够满足太空应用等严苛环境的严格标准。

FWBELL公司的发展小趣事
在保证安全的前提下,尽量设定较高的温度阈值以提高充电效率。
Flamar公司的发展小趣事

Flamar公司自成立以来,始终将技术创新视为企业发展的核心驱动力。在电子元件领域,公司研发团队成功开发出一种新型高性能磁耦合传送臂,这一创新产品凭借其高效、稳定的传输性能,在半导体设备制造中迅速获得市场认可。通过不断的技术迭代和优化,Flamar公司的磁耦合传送臂逐渐成为行业内的标杆产品,帮助公司在激烈的市场竞争中脱颖而出。

CTS [CTS Corporation]公司的发展小趣事

CTS Corporation的创始人在1896年创立了这家公司,当时的主要业务是设计并生产高品质的电话产品。随着电话技术的普及和通信行业的快速发展,CTS凭借其出色的产品质量和创新的设计理念,逐渐在电话市场中占据了一席之地。公司的创始人凭借其敏锐的商业洞察力和不懈的努力,为CTS奠定了坚实的基础。

Belden Wire and Cable公司的发展小趣事

在第二次世界大战期间,Belden公司积极响应国家号召,将生产重心转向战争材料。其产品被广泛应用于坦克、飞机、移动无线电、潜艇、船舶、吉普车等各种军事机械中,为战争的胜利做出了重要贡献。这一时期的生产转型不仅展现了公司的社会责任感,也进一步提升了其在行业内的地位和影响力。

Appointech Inc公司的发展小趣事

Appointech Inc公司,自创立之初就致力于提供创新的电子解决方案。在公司成立的早期阶段,团队凭借对电子技术的深刻理解和对市场需求的敏锐洞察,开发出了一系列具有竞争力的产品。这些产品不仅满足了客户的实际需求,也为公司赢得了初步的声誉和市场份额。

问答坊 | AI 解惑

新人(自我介绍)

大家好啊,很高兴担任嵌入式系统的斑竹之一,我的qq号是43842855,以后有问题大家一起讨论吧,我也会积极努力把自己对嵌入式的理解与大家分享.人人为人,我为人人,以后有什么不足的地方大家多多指出,我的目标就是努力把这个版块建成一个新人学习 ...…

查看全部问答>

华为硬件工程师手册目前最全版本

说明:目前网上包括本论坛的华为硬件工程师手册通常是不全版本(73页),希望大家下载是千万要注意。也希望大家如果没有更全的版本就不要在重复上传了…

查看全部问答>

逆变

求电鱼机的高压输出要求怎么样才能…

查看全部问答>

dsp2812学习体会

哈哈,抽时间写了一个博客,说说自己学习dsp2812的体会,欢迎大家共同探讨哦~~~ https://home.eeworld.com.cn/my/space.php?uid=117818&do=blog&id=22384&cid=1945…

查看全部问答>

USB 接口器件PDIUSBD12 的接口应用设计

USB作为一种新型的接口技术以其简单易用速度快等特点而备受青睐本文简单介绍USB 接口的特点和PHILIPS 公司的USB 接口芯片PDIUSBD12 并详细说明USB 软硬件开发过程中 应注意的问题…

查看全部问答>

尚为科技-机房环境监控专家

尚为科技-机房环境监控专家,机房环境监控产品专业厂商,产品具有稳定、易用、低功耗的特点,产品经过了权威部门的测试,已形成较完整的产品系列和行业解决方案,获得良好的用户口碑。 欢迎来电垂询,电话:0592-5204071 6300605 6300607   ...…

查看全部问答>

scsi miniport driver问题

谁能介绍一下scsi miniport driver的基本结构…

查看全部问答>

pc机跟wince同步问题

我用台式机跟研华6552的工控板 wince系统 通过双机互联线连接 台式机ip是192.168.0.12 工控机是192.168.0.192 从台式机上ping 工控机没有问题 但是ActiveSync一直连接不上 ActiveSync图标一直是灰色的 …

查看全部问答>

有关TCC7901_bsp2.2中的串口问题

现在在调TELECHIPS中的TCC7901芯片板子,TCC7901有6个PORT,但只有4个通道,我老板要我把2。2的BSP中的4个通道都用上,但2。2的BSP默认是把CH0和CH2分别用在了调试和IRda中,所以只有两个串口可用,我的任务就是改CH0和CH2为可用,请问一下有没有调 ...…

查看全部问答>

关于STM32F102/103的USB模块和USB库函数

今天有空,开贴讲讲,怎样配合ST提供的库函数理解STM32F102/103的USB模块,以及怎么调用这些库函数来实现基本的USB通信。 题目很大,先只讲讲最简单的应用。…

查看全部问答>