汇编小问题

2019-03-24 19:42发布

求助,汇编小问题

p3.0=启动
p3.1=停止
p3.2=上限
p3.3=下限

p1.0=夹具
p1.1=进退
p1.2=电机
启动--输出夹具--延时0。5s--输出电机,进退--下限--延时1s--关进退--上限--关夹具,电机

停止-- 马上停止--夹具电机保持停止前原状--上限位--关电机,关夹具
             启动无效          并马上停止进退


不能用软件延时,因为在启动后延时期间停止键是无效的,起不到急停的作用,本人试过。
中断定时方法还没钻进去,求高手解答。
新手多多光照,学单片机半个月了。 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
16条回答
abo6016
2019-03-26 14:26
原帖由 辛昕 于 2011-10-19 10:40 发表
嗯,这也是一种好的思路。
把按键用IO口模拟判断,然后把程序做在定时中断里或者主程序里不断查询。10ms一次的定时中断,在一定程度上可以简化消抖。

不过,建议还是中断完成,只是定时中断而不是 外部中断,用主 ...


恩,版主的静态计时也是一种方法,不过因为有键盘,那不如用键盘状态来代替不是更好?在中断中加个键盘扫描程序,根据键值来驱动或者选择程序的运行,我现在就是用这种方法。一般键盘扫描20HZ就够用了,而且也没有消抖的问题。在main()中的死循环里加个switch程序,根据键值选择开始,停止,或者其他动作,简单方便。
顺便问下汇编里switch()应该怎么编?

一周热门 更多>