首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我怎么能指望皮克斯?

我怎么能指望皮克斯?
EN

Stack Overflow用户
提问于 2013-11-29 19:29:38
回答 1查看 2.2K关注 0票数 0

我正试着数一下在Picaxe14M2上输入引脚按下一个按钮的次数。然后,我想有一个‘模式’设置b.4高,持续5秒,然后低。这种“模式”需要重复按下按钮的次数。

如果这有意义的话,我该怎么做?

这是我到目前为止..。

代码语言:javascript
复制
init: 
    let b0 = 0 
main: 
    low B.1
    low B.2
    low B.3
    low B.4
    low B.5
    if pinC.4 = 1
    let b0 = b0 +1
    goto mode
    Endif
    goto main 
mode: 
    high B.4
    wait 5
    low B.4
    goto main
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-14 16:47:35

如果我理解你的问题,你想先数几下按钮,然后输出那5秒的脉冲。但是,您的程序将如何决定您已经完成了您的一系列按钮按下,并希望它继续和产生的脉冲序列?

这里有一个可能的解决方案,但您必须决定它是否合适,如果不是,您必须对其进行调整:

代码语言:javascript
复制
b0 = 0                                  ' initialise counting variable
w1 = 0                                  ' initialise timing variable (a 2-byte word)

countpresses:
    pause 10                            ' wait for 10 ms
    w1 = w1 + 1                         ' increment the timing variable
    if pinC.4 = 0 then countpresses     ' loop until button pressed 
wait_release:
    pause 10
    w1 = w1 + 1                         ' increment the timing variable
    if pinC.4 = 1 then wait_release     ' loop until button released
    b0 = b0 + 1                         ' increment the counter

if w1 < 200 then countpresses           ' keep counting until 4 seconds have elapsed

if b0 > 0 then
    for b1 = 1 to b0
         high B.4
         pause 5000                     ' take B.4 high for 5 seconds
         low B.4
         pause 1000                     ' and low for 1 second between pulses
    next b1
endif

这将计算你在4秒内按下按钮的次数(200 x 20毫秒),然后输出这个脉冲数。暂停语句确保不计算按钮按下或释放后几毫秒内可能发生的开关联系人的“反弹”,第二个循环确保每次按下按钮时只计算一次,而不是按下按钮后PICAXE的增长速度!你没有说在5秒的高脉冲之间,B.4应该低多久--在上面的代码中,我已经做了1秒。

如果这不是您想要的,那么应该不难找到如何修改它,例如,在您上一次释放按钮后等待几秒钟。

我在计时计数器上使用了一个单词变量,这样等待的最长时间就不限于255个计数--如果您愿意,可以将代码中的200更改为任意值,最多可达65535 (但您应该考虑如果接近该值可能会发生什么)。如果您是PICAXE初学者,那么请阅读手册中关于字节和单词变量如何相互关联的部分,这可能并不明显。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20292299

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档