主题:新人本科毕业设计求助,每复必花 -- 每周虎
一,接口
ME-1400 的Port A 为输出,Port B 和Port C 为输入。 25针接口对照,并简单阅读了原单片机C语言程序后,我的理解是:我只要从ME-1400的 Port A 中任选出7个针口,从 Port B 和 Port C 中任选出12个针口,然后和25针接口的输入输出针口对应连接即可。至于每个针口输出什么信号,是在程序中设定的。
不知道这个理解是否正确?
二,新画的波形图
希望这次是对的(如果又错了,麻烦指点一下该怎么改)。
三,面包板
周二就做了,回来想想“无PP无真相”,周三又跑去用手机补了几张照片。周四周五导师不在,拿不到信号发生器……
面包板上部为异或门74LS86,下部为D触发器74LS74
两个信号发生器和一个示波器
下面两张图中,第一张图的黄线为D,蓝线为Input 2;第二张图的黄线为CLK,蓝线为Q 。 这两张图在示波器上取值区间不同,不能直接对应着看。(您要看Input 2 和 CLK 同时显示的图?万分惭愧,我当时忘了……)
这第二张图和理想的波形图差别也太大了,谁能给解释下?是不是我有啥做错的地方?
一.接口
理解正确。你可以把输入输出连接的对应关系放在程序的开头或者你自己的头文件中,这样比较清晰,便于日后维护。
二.新画的波形图
完全正确。现在你可以把图中D、Input 2以及Q的波形同你起始帖的图1-2比较一下,理解异或门的作用。
三.面包板
你最后一张图的波形不好,会不会是你把示波器的输入打到交流档上了?看着像方波经过一个电容后的样子,幅值也不对。
Q反馈到异或门是干嘛用的?
Q=1的时候对CLK取反,下降沿触发;Q=0的时候不变,上升沿触发。
不过,为什么这么处理?我觉得应该是双边沿触发。
我下周二再去趟实验室,仔仔细细再测一遍。
惊喜:所有加你为好友的,在本帖先送花者得【通宝】一枚
鲜花已经成功送出。
此次送花为【有效送花赞扬,涨乐善、声望】
究竟设计的要求是什么,需要每周虎来澄清。
双边沿触发的电路要略微复杂一点。而且,实现双边沿触发一般要用微分电路,抗干扰能力也差些。
这D和Input2怎么连到ME-1400上去啊……
我周一去找导师仔仔细细问清楚……
弱弱地问一下,啥叫双沿触发?我google了一下,找不到名词解释……
都是TTL电平。
双边沿触发是指在Input 2的上升沿下降沿都给触发器信号,允许其翻转。而普通D触发器只有在CLK的上升沿才能动作。所以这么做的话也要在Input 2和CLK之间加电路。
本来想着圣诞节好好努力的,结果一玩起来啥都忘了。惭愧惭愧……
先说要紧的,过节前和导师谈了一下,把触发器的两个输入给确定了下来。
SUB D Port hex Verwendung
1 A 0 OUT 0x01 Steuerung aktiv (LED) (Input D)
14 A 1 OUT 0x02 Steuerrichtung Tr. 1
2 A 2 OUT 0x04 Steuerrichtung Tr. 2
15 A 3 OUT 0x08 Steuerrichtung Tr. 3
3 A 4 OUT 0x10 Steuertakt Trafo 1
16 A 5 OUT 0x20 Steuertakt Trafo 2
4 A 6 OUT 0x40 Steuertakt Trafo 3
17 A 7 OUT 0x80 nicht belegt (Input 2)
就是说,Input D由1号针脚输入,Input 2由17号针脚输入。
现在就要回过头来考虑能够能立即停止电机的运动的“紧急停止键”了。
Chaos大侠的建议是
沉宝大侠的建议是
沉宝大侠能不能详细解释下?
诸位大人还有其他的想法和建议吗?
再说次要的,汇报下去年过节前的实验结果。
上次实验失败,根本原因是74系列芯片需要5V的驱动电压。于是这次补上了
黄线输入D触发器的D端,蓝线是输入异或门的Input2, Input2 和 Q异或后输入触发器的CLK。
上图是用信号线将信号发生器和示波器直连的结果,用电线一连,就成了这德行……
这是Input2 和CLK同时显示的情况,怎么看都差了90度相位角嘛……
这是最后结果,黄线是Q,蓝线是CLK
和我想象的结果还是有很大差距,能不能帮我分析分析,说说实验改进方法?
很遗憾ccthere的图片挂了,不过你自己应该有备份,所以不妨碍讨论。
现在我们还是针对你的始发帖的图1-2开始讨论。上次我跟[ 四方城 ] 的的分歧在于你所希望的输出是什么时候变低?是A)输入1变低后,输入2的第一个下降沿;还是B)输入1变低后,输入2的第一个跳变沿(上升沿或者下降沿,任一即可)。之所以有这个争论,是因为你的原图中输入1的下降沿正对着输入2的上升沿,无法判断谁前谁后。而你现在说
关于“紧急停止键”。根据引脚功能说明,我推测A0是所有驱动电路盒的总始能(Enable)。就是说当A0变低时,不管其它引脚上还有什么信号,步进电机都得不到了,也就全都停了下来。这一点你可以通过实验验证。还是用原来的单片机控制步进电机运行,但把电缆中接A0的那一条线断开(这实验有点破坏性,所以你最好有备用电缆)。在断开处接入一个开关,开关的一个方向是A0像原来那样接通来自单片机输出,开关的另一个方向是A0接地。把开关打到单片机方向,步进电机应该正常运行。在步进电机运行中把开关打到接地方向,看三台步进电机是不是同时停止运转?如果是,我的推测正确,“紧急停止键”就可以按这个思路做。如果不是,再另想办法。
示波器波形不好,是不是接线的问题?从照片上看,你示波器探头的信号端是接了,地端可还悬在空中哪。
在德国用中文示波器
导师要求的图在此
是要求输入1下降后,输入2的上升沿跳变,您的指导是正确的。
我所说的“触发器的两个输入给确定了下来”,是指输入1由引脚1输入,输入2由引脚17输入。如下红字所示:
SUB D Port hex Verwendung
1 A 0 OUT 0x01 Steuerung aktiv (LED) (Input D)
14 A 1 OUT 0x02 Steuerrichtung Tr. 1
2 A 2 OUT 0x04 Steuerrichtung Tr. 2
15 A 3 OUT 0x08 Steuerrichtung Tr. 3
3 A 4 OUT 0x10 Steuertakt Trafo 1
16 A 5 OUT 0x20 Steuertakt Trafo 2
4 A 6 OUT 0x40 Steuertakt Trafo 3
17 A 7 OUT 0x80 nicht belegt (Input 2)
您所建议的实验,我明天去和导师讨论一下。我觉得这个思路是正确的。
另,那个示波器可以显示英法德简繁日六种文字……
我想你要说的是:是要求输入1下降后,输出在输入2的下降沿跳变。这样才与原图吻合。
反而加深误会了……
您再看
西西河图库恢复后,我一定要把每张图认真检查一遍……
那就更简单了。Input2直接接D触发器的CLK即可,异或门可以不要了。
貌似这个简单东西搞得复杂了?
我的理解,
1。你得PC上有一块6x16bit的并行TTL I/O卡,
2。你的步进电机其实是有数字信号驱动的?这个我不确定,看到你贴了一个接口的说明。。
如果我没理解错,你中间用1块或几块8255把控制线信号锁存下来,一边接PC I/O卡,一边接步进电机控制,不就好了?哪些什么极限位置的信号,也可以锁存进8255然后用PC I/O卡读进PC。