|
很简单的ASM language的问题 (卷门控制 -Garage Door)
[复制链接]
|
|
楼主 |
发表于 10-4-2011 01:23 AM
|
显示全部楼层
回复 shaddow
ALOOP:
MOV A, P2 ; P2.7
ACALL DELAY
CJNE A, #7DH, ALOOP
MOV P1, #7FH ; ...
fritlizt 发表于 10-4-2011 12:50 AM
fritlizt很感激你这么夜了还帮我看完我的program。感动。
我也有用wkloh大大的方法:
ORG 00H
START:
JNB P2.2, FORWARD
STEP0:
JNB P2.0, STOP_MOTOR1
STEP1:
JNB P2.3, REVERSE
STEP2:
JNB P2.7, STOP_MOTOR2
STEP3:
JMP START
FORWARD: MOV C, P2.2
MOV P1.2, C
JMP STEP0
STOP_MOTOR1: SETB P1.2
JMP STEP1
REVERSE: MOV C, P2.3
MOV P1.3, C
JMP STEP2
STOP_MOTOR2: SETB P1.3
JMP STEP3
ok吗? 因为听人家说,如果不放delay, relay 会容易坏。 |
|
|
|
|
|
|
|
楼主 |
发表于 10-4-2011 01:29 AM
|
显示全部楼层
回复 shaddow
没错, 我讲的就是这个。
他们怎样做?其他人做给他们的module?
怎样做wire ...
fritlizt 发表于 10-4-2011 12:51 AM
他们怎样做我不知道,曾经问过人,可是他们都不是很想教。那时听到说什么买一个不懂什么东西,然后挑frequency就可以了。
他们用什么language我就真不懂。
如果没有错,有一个东西在P0,代替wire.
haizz.. 不懂不懂。 |
|
|
|
|
|
|
|
发表于 10-4-2011 02:04 AM
|
显示全部楼层
本帖最后由 fritlizt 于 10-4-2011 02:05 AM 编辑
回复 22# shaddow
大概猜到那是什么东西。有没有照片看?
miwi + ps2 controller?
我做过ps2 , 和miwi,要integrate不难。 不过你的 assignment要用到这个咩 。
老师问到不会回答就jialat鸟。 |
|
|
|
|
|
|
|
发表于 10-4-2011 09:41 AM
|
显示全部楼层
回复 21# shaddow
ORG 00H
START:
JNB P2.2, FORWARD
STEP0:
JNB P2.0, STOP_MOTOR1
STEP1:
JNB P2.3, REVERSE
STEP2:
JNB P2.7, STOP_MOTOR2
STEP3:
JMP START
FORWARD: MOV C, P2.2
MOV P1.2, C
JMP STEP0
STOP_MOTOR1: SETB P1.2
JMP STEP1
REVERSE: MOV C, P2.3
MOV P1.3, C
JMP STEP2
STOP_MOTOR2: SETB P1.3
JMP STEP3
问题来了!
1.你的主程式(main function)主要检知按键和limit switch。所以跳去副程式(sub function)执行完毕,直接跳回主程式(START)就可以了。不跳回前先执行一行检查按键有无释放
举例:FORWARD
- JNB P2.2, $;按键无释放,重新检查这行程式
- JMP START
复制代码
2.STOP motor代码你会写,干嘛START那个要写成这样子?
- FORWARD:
- MOV C, P2.2
- MOV P1.2, C
- JMP STEP0
复制代码
解答:
- FORWARD: : CLR P1.2
- JMP STEP1
复制代码
这些全部都是程式逻辑而已,你的电路设计可能还有问题的。。。 |
|
|
|
|
|
|
|
楼主 |
发表于 10-4-2011 11:21 AM
|
显示全部楼层
回复 shaddow
问题来了!
1.你的主程式(main function)主要检知按键和limit switch。所 ...
wkloh 发表于 10-4-2011 09:41 AM
谢谢wkloh大大,又教了我东西。基本上都明白,但有一个问题:1)我试过用 JNB P2.2, $
我把我部分写出来,和明白写出来:
START: JNB P2.2, FORWARD ;如果我按键,回传讯号 actvie low, 就跳到FORWARD
FORWARD: JNB P2.2, $ ; 如果我还按着键不放,回传讯号 actvie low, 就一直跳到这个程式。
CLR P1.2 ;直到我放了键, 回传讯号 actvie high,就 CLR P1.2
JMP START ; 跳回start.
但是我的simulator没有出现这个效果。 |
|
|
|
|
|
|
|
楼主 |
发表于 10-4-2011 11:27 AM
|
显示全部楼层
回复 shaddow
大概猜到那是什么东西。有没有照片看?
miwi + ps2 controller?
我做过ps ...
fritlizt 发表于 10-4-2011 02:04 AM
没有照片看。什么是 miwi?assignment不必用到,不过我很想用。
买这些东西会贵吗?
可以教吗?
不好意识,太over了。 |
|
|
|
|
|
|
|
发表于 10-4-2011 12:30 PM
|
显示全部楼层
本帖最后由 wkloh 于 10-4-2011 12:32 PM 编辑
回复 25# shaddow
- START: JNB P2.2, FORWARD ;如果我按键,回传讯号 actvie low, 就跳到FORWARD
- FORWARD: [code]JNB P2.2, $
- CLR P1.2 ;
复制代码 直到我放了键, 回传讯号 actvie high,就 CLR P1.2
JMP START ; 跳回start.[/code]
你可以把这两行对调位置,然后把断点放在 “CLR P1.2”,再看你的 P2.2 IO status, 是在low就跳同行。
simulator 只是辅助性质,实况还是要靠你的硬体搭配。 |
|
|
|
|
|
|
|
发表于 10-4-2011 12:52 PM
|
显示全部楼层
|
|
|
|
|
|
|
发表于 10-4-2011 12:54 PM
|
显示全部楼层
回复 25# shaddow
你的simulator出现什么效果? 这个是很重要的。 请说明。谢谢。 |
|
|
|
|
|
|
|
发表于 10-4-2011 05:52 PM
|
显示全部楼层
回复 23# fritlizt
市面上已经可以找到很多 wireless ps2 controller 了,不用自己做
|
|
|
|
|
|
|
|
楼主 |
发表于 10-4-2011 06:18 PM
|
显示全部楼层
回复 shaddow
直到我放了键, 回传讯号 actvie high,就 CLR P1.2
JMP START ...
wkloh 发表于 10-4-2011 12:30 PM
好,谢谢。 让我研究一下。 |
|
|
|
|
|
|
|
楼主 |
发表于 10-4-2011 06:19 PM
|
显示全部楼层
回复 shaddow
对你来说 有点over鸟。
对我来说用asm来做这个也是有点over 鸟。 我也未必做 ...
fritlizt 发表于 10-4-2011 12:52 PM
好, 等你分享。呵呵 |
|
|
|
|
|
|
|
楼主 |
发表于 10-4-2011 06:20 PM
|
显示全部楼层
回复 fritlizt
市面上已经可以找到很多 wireless ps2 controller 了,不用自己做
...
waiweng83 发表于 10-4-2011 05:52 PM
哇,会贵吗? |
|
|
|
|
|
|
|
楼主 |
发表于 14-5-2011 12:57 PM
|
显示全部楼层
不好意识,最近有一大堆的assignment + 这个project + final exam. 所以没来这里看看和update. 刚考完试,就快点来报到了。
这个project也很幸运的完成了,也要谢谢大家的帮忙。
虽然这个project 很简单,但是也分享一下,不要笑我。
http://www.facebook.com/video/video.php?v=10150186124198481
这个project最头痛的就是那个relay board,烧掉我几个transistor,有时又不能走。最后放弃lecturer给的schematic, 自己参考以前的relay board,重新做过才成功。
对不起,有一点小兴奋,希望大家不要介意。由于对microcontroller有兴趣,想读读PIC了,不知大大门有什么 PIC 的 note 和 e-book可以分享吗?
在一次谢谢大家的帮忙!! |
评分
-
查看全部评分
|
|
|
|
|
|
|
发表于 15-5-2011 12:03 AM
|
显示全部楼层
请问大大谁有asm的nota或者是e book??
可以分享?? |
|
|
|
|
|
|
|
发表于 15-5-2011 08:23 AM
|
显示全部楼层
回复 34# shaddow
你要想做什么? 你的应用是什么? 我要控制我的dc motor
ii. 你想要拿到什么效果
按“走”一次,motor要自动“走”,直到碰到limit switch就停。按下“回”一次,motor要自动“回”,直到碰到limit switch就停,重复。
你的应用是什么?
应用就是Garage Door , 卷门
你说是要控制DC Motor, 其实说了等于没有说~
如果你一开始就说是卷门, 大家的脑海里就有一个概念, 还可以有很多建议。
比如你的卷门是要碰到Limit Switch 才停止。。
强化设计, 可以检测motor 的电流, 遇到突然增加的阻力时, 电流突然大幅度, 而马上停止motor, 还自动往上升。
而到达底端是, limit switch 检测到+ 大电流, 我们知道到底了, 停止。
当然, 我知道楼主是要做简单的, 没有要求你做上面这种, 但是论坛就是交流的平台, 你会得到别人的idea, 做不做是另一回事, 写在report 里面都很爽。。。
其实是有客户有要求设计应用在汽车的电动窗 Power Window, 不会夹到人。。
电动窗向上时, 如果你用“轻轻"手去压, 电动窗会自动向下降, 一个安全的考量。
尤其是小孩喜欢玩电动窗, 在台湾,就曾经夹死过小孩~
如果没有错的话, 高级房车的电动窗已经配有这种功能。 |
|
|
|
|
|
|
|
楼主 |
发表于 15-5-2011 09:14 AM
|
显示全部楼层
回复 shaddow
你要想做什么? 你的应用是什么? 我要控制我的dc motor
ii. 你想要拿到什么效果
按“ ...
pic 发表于 15-5-2011 08:23 AM
哦,原来是这样来判段,那么用什么来测试voltage,让MCU知道voltage在增加? |
|
|
|
|
|
|
|
发表于 15-5-2011 11:16 AM
|
显示全部楼层
|
|
|
|
|
|
|
楼主 |
发表于 15-5-2011 09:51 PM
|
显示全部楼层
是测量电流,不是电压。。
原理如下, 用已知电阻值的电阻R, 测量电压降
利用欧姆定律,
比如1o ...
pic 发表于 15-5-2011 11:16 AM
谢谢PIC大大,又有东西学了,第一个勉强看的明白。现在最重要是我要重新读过PIC 的MCU。
对了,可以问下你们都用什么c compiler来做PIC的programming? 我下载了MPLAB idle,不会用!haizz还有PIC的programmer大概多少钱? |
|
|
|
|
|
|
|
发表于 16-5-2011 08:55 AM
|
显示全部楼层
|
|
|
|
|
|
| |
本周最热论坛帖子
|