4264|16

3

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

汇编小问题 [复制链接]

求助,汇编小问题

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

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

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


不能用软件延时,因为在启动后延时期间停止键是无效的,起不到急停的作用,本人试过。
中断定时方法还没钻进去,求高手解答。
新手多多光照,学单片机半个月了。
此帖出自51单片机论坛

最新回复

位操作  详情 回复 发表于 2011-10-22 09:59
点赞 关注
 

回复
举报

56

帖子

0

TA的资源

一粒金砂(高级)

沙发
 

我不是高手

你把停止键接到外部中断INT0口不就行了?汇编表示蛋疼,没参考书写不出来,C语言的话就简单了
PS:你可以看看版主辛昕的对单片机介绍的文章,简单易懂
https://bbs.eeworld.com.cn/thread-306915-1-2.html
PS中的PS:版主我在给你打广告,你得发广告费哟~
此帖出自51单片机论坛
 
 
 

回复

315

帖子

0

TA的资源

五彩晶圆(初级)

板凳
 

表示不知道什么上限 下限 夹具的·····

要能紧急停止,停止键接P3.2(INT0)或P3.3(INT1),用外部中断的方法

此帖出自51单片机论坛
 
 
 

回复

4008

帖子

0

TA的资源

版主

4
 

回复 板凳 孤獨の快樂 的帖子

其实按键的实时性要求都不高还要消抖,没必要用中断控制。
此帖出自51单片机论坛
 
 
 

回复

535

帖子

0

TA的资源

五彩晶圆(初级)

5
 
汇编不会的路过啊!看来以后要好好学习啊!不然丢死了啊!
此帖出自51单片机论坛
 
 
 

回复

7815

帖子

56

TA的资源

裸片初长成(中级)

6
 

回复 沙发 abo6016 的帖子

不好意思,我也穷的刚好有饭吃而已.....
你找小小白拿去~~
此帖出自51单片机论坛
 
个人签名

强者为尊,弱者,死无葬身之地

 
 

回复

7815

帖子

56

TA的资源

裸片初长成(中级)

7
 

回复 楼主 wshrycm 的帖子

这个是液压的玩意吧。
延时必然不能用软件延时,否则急停不了,这个不用试都能知道。

启动 和 停止 是两个功能,停止 就是你急停以后要求执行的一系列动作对吧?

沙发说的对,我补充一下他没说完的。
把停止键连到外部中断,然后在 外部中断服务程序里 写你 停止以后那一系列的动作对应的代码就OK了。

至于说 中断不会玩,这就是编程问题了,好说好说,把代码贴上来,大家伙给你瞧瞧.....

不过,关于使用外部中断的方法,我觉得还需要更进一步讨论,外部中断这个玩意,好处是有的,在这里用也非常合适,但是考虑到 抖动误触发等问题——特别是你这个是机械按键——我就试过,刚开始的时候,拼命进入中断,本来一次按键进入了N次。
如果你这东西真的是液压机构,那就危险了。

因为 按键抖动是一回事,另外不好说在什么时候这个开关上会产生什么毛刺之类的东西,极可能误触发,急停倒是安全的,虽然说老停机很烦。
要是启动键那就麻烦了。

具体这些机床上是如何做的我不清楚,我提供一个思路是,
不要简单的一次外部中断就触发。
把外部中断设置成 电平触发,然后,适当延时——这里延时的方法可以是,让它多次进中断,进一次就计数加1,要加到一定数额才能确定是一个中断。

至于数额多大,两种方法:
1 实际调试
2 分析计算,每次进入中断至少花了多少时间,再来估计。

实际上,两种方法结合起来用,第二种粗侧,第一种细调,当然更快的方法是直接第一种,猜呗。
此帖出自51单片机论坛
 
个人签名

强者为尊,弱者,死无葬身之地

 
 

回复

7815

帖子

56

TA的资源

裸片初长成(中级)

8
 

回复 4楼 huo_hu 的帖子

嗯,这也是一种好的思路。
把按键用IO口模拟判断,然后把程序做在定时中断里或者主程序里不断查询。10ms一次的定时中断,在一定程度上可以简化消抖。

不过,建议还是中断完成,只是定时中断而不是 外部中断,用主程序,势必要不断查询,这样程序写起来别扭,也不流畅。

具体方法是,有些动作是没办法一次过完成的,有时还要加适当延时,比如说,消抖。
但是,这个延时未必,或者说大都数时候绝对不允许用 所谓的 软件延时完成,除非这个延时很短,否则程序流程会被卡住。

一种方法,我现在常用,在一个定时中断中,设立若干个静态计数器,每进一次就计一次数,然后再设立若干个不同阶段动作的标志,到什么时间就植什么标志,这样,每次,程序只是在定时中断到来之际查询,但他的效果却跟延时一样。
此帖出自51单片机论坛
 
个人签名

强者为尊,弱者,死无葬身之地

 
 

回复

7815

帖子

56

TA的资源

裸片初长成(中级)

9
 

回复 5楼 小小白 的帖子

好好学习去~~
汇编其实比C还简单,直接么——当然是在程序简单的时候.......
此帖出自51单片机论坛
 
个人签名

强者为尊,弱者,死无葬身之地

 
 

回复

7815

帖子

56

TA的资源

裸片初长成(中级)

10
 

回复 板凳 孤獨の快樂 的帖子

这些都是机床上的名词,确切的说是液压机械。
上限下限是说 某个杆或者活动部件能活动的范围。

夹具么,夹具就是夹东西的,在机床上加工东西,就需要一些夹具来夹紧工件。
此帖出自51单片机论坛
 
个人签名

强者为尊,弱者,死无葬身之地

 
 

回复

535

帖子

0

TA的资源

五彩晶圆(初级)

11
 

回复 6楼 辛昕 的帖子

你你你。。。。。 不给撒!!
此帖出自51单片机论坛
 
 
 

回复

535

帖子

0

TA的资源

五彩晶圆(初级)

12
 

回复 10楼 辛昕 的帖子

这个是机电一体化的活生生的例子啊!学过机械的在做电子就是不一样啊!感觉很多时候就是一个综合技能的比拼啊!特别是参加一些比赛的时候啊!平时要多做一些知识的积累啊!
此帖出自51单片机论坛
 
 
 

回复

56

帖子

0

TA的资源

一粒金砂(高级)

13
 
原帖由 辛昕 于 2011-10-19 10:40 发表
嗯,这也是一种好的思路。
把按键用IO口模拟判断,然后把程序做在定时中断里或者主程序里不断查询。10ms一次的定时中断,在一定程度上可以简化消抖。

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


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

回复

56

帖子

0

TA的资源

一粒金砂(高级)

14
 

回复 11楼 小小白 的帖子

哇。。。。为啥不给
此帖出自51单片机论坛
 
 
 

回复

7815

帖子

56

TA的资源

裸片初长成(中级)

15
 

回复 13楼 abo6016 的帖子

这个,查表呗......
此帖出自51单片机论坛
 
个人签名

强者为尊,弱者,死无葬身之地

 
 

回复

3

帖子

0

TA的资源

一粒金砂(中级)

16
 

谢谢大家对我的支持!!中断问题我已经解决,现在碰到一个逻辑问题解决不了,用PLC很好搞定,用51,头大了!

 

 

具体流程这样的:p3.0=0输出p1.1,p3.0=1输出p1.2,p3.1=0关闭p1.1,输出p1.2,p3.3=0关p1.2

 

 

 

点动程序,启动按钮按下输出正转,启动按钮放掉马上关闭正转而输出反转,如果一直不放启动按钮,则碰到下限位后关闭正转而输出反转,反转到上限位停止反转。

 

 

 

 c语言啊c语言,它认识我我不认识它啊。

[ 本帖最后由 wshrycm 于 2011-10-21 19:05 编辑 ]
此帖出自51单片机论坛
 
 
 

回复

7815

帖子

56

TA的资源

裸片初长成(中级)

17
 

送你三个字

位操作
此帖出自51单片机论坛
 
个人签名

强者为尊,弱者,死无葬身之地

 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表