EMC parallel port map(s)
this is info I snipped from all over the place for my notebook
I used a lot of <TABs> so it may not look right in email but they should
pop back into place if pasted into a normal editor
maps are
first port = step/dir+limit/home switches
second port = E-Stop + misc I/O
option phase stepping on first port
----------------------------------------------------------
The original IBM-PC's Parallel Printer Port had a total of 12 digital outputs
and 5 digital inputs accessed via 3 consecutive 8-bit ports in the
processor's
I/O space.
8 output pins accessed via the DATA Port
5 input pins (one inverted, indicated by line over number) accessed via the
STATUS Port
4 output pins (three inverted, indicated by line over number) accessed via
the
CONTROL Port
The remaining 8 pins are grounded
--------------------------------------------------------------------------------------
EMC first para port map
lpt lpt
pin EMC bit default default
num name name use polarity
1 /c0
2 d0 x dir HOMING_POLARITY = 1
3 d1 x step
4 d2 y dir HOMING_POLARITY = 1
5 d3 y step
6 d4 z dir HOMING_POLARITY = 1
7 d5 z step
8 d6
9 d7
10 s6
11 /s7
12 s5 x,y,z home HOME_SWITCH_POLARITY = 1
13 s4 x,y,z limit- MIN_LIMIT_SWITCH_POLARITY = 1
14 c1
15 s3 x,y,z limit+ MAX_LIMIT_SWITCH_POLARITY = 1
16 c2
17 /c3
18-25 gnd
------------------------------------------------------------------------------------
EMC second para port map
lpt lpt
pin EMC bit default default
num name name use polarity
inputs
15 index 0 s3
14 index 1 s4 ESTOP_SENSE_INDEX ESTOP_SENSE_POLARITY = 1
12 index 2 s5 LUBE_SENSE_INDEX LUBE_SENSE_POLARITY = 1
10 index 3 s6
11 index 4 /s7
outputs
2 index 0 d0 SPINDLE_REVERSE_INDEX SPINDLE_REVERSE_POLARITY = 0
3 index 1 d1 SPINDLE_FORWARD_INDEX SPINDLE_FORWARD_POLARITY = 0
4 index 2 d2
5 index 3 d3
6 index 4 d4
7 index 5 d5
8 index 6 d6 MIST_COOLANT_INDEX MIST_COOLANT_POLARITY = 0
9 index 7 d7 FLOOD_COOLANT_INDEX FLOOD_COOLANT_POLARITY = 0
1 index 8 /c0 SPINDLE_DECREASE_INDEX SPINDLE_DECREASE_POLARITY = 1
14 index 9 /c1 SPINDLE_INCREASE_INDEX SPINDLE_INCREASE_POLARITY = 1
16 index 10 c2 ESTOP_WRITE_INDEX ESTOP_WRITE_POLARITY = 1
17 index 11 /c3 SPINDLE_BRAKE_INDEX SPINDLE_BRAKE_POLARITY = 0
------------------------------------------------------------------------------------
new for phase stepping from Fred Proctor's post
To specify this, just put this in your .ini file:
[EMCMOT]
EMCMOT = freqmod.o
STEPPING_TYPE = 1
It only works for freqmod.o (steppermod.o will come once this is
debugged). If you say 0, or leave it out, it uses step-and-direction.
The wiring looks like this, from a comment in emcmot.c:
Phases are labeled p13 and p19, from Bridgeport stepper motor driver
pins 13 and 19. The values are converted from step/direction using the
following table:
dir p13 p19
| ^ 0 0
| | 1 0
+ - 1 1
| | 0 1
v | 0 0
The new value of p13 is the logical result of (p19 != dir), and
the new value of p19 is the logical result of (p13 == dir), where
+ dir is 1 and - dir is 0.
The bits are "wired" onto the parallel port like this:
MSB low byte LSB
-----------------------------------------------------------------
| p13-3 | p19-3 | p13-2 | p19-2 | p13-1 | p19-1 | p13-0 | p19-0 |
-----------------------------------------------------------------
MSB hi byte LSB
-----------------------------------------------------------------
| x | x | x | x | p13-5 | p19-5 | p13-4 | p19-4 |
-----------------------------------------------------------------
where p19-0 is pin 19 of axis 0, p13-5 is pin 13 of axis 5, etc.
translates to this pinout/port map (outputs only)
lpt lpt
pin bit EMC signal
num name name function
2 D0 P19-0 motor-0 phase-A
3 D1 P13-0 motor-0 phase-B
4 D2 P19-1 motor-1 phase-A
5 D3 P13-1 motor-1 phase-B
6 D4 P19-2 motor-2 phase-A
7 D5 P13-2 motor-2 phase-B
8 D6 P19-3 motor-3 phase-A
9 D7 P13-3 motor-3 phase-B
1 /C0 P19-4 motor-4 phase-A
14 /C1 P13-4 motor-4 phase-B
16 C2 P19-5 motor-5 phase-A
17 /C3 P13-5 motor-5 phase-B
-----------------------------------------------------------------------------
Brian
Date Index |
Thread Index |
Back to archive index |
Back to Mailing List Page
Problems or questions? Contact