Microprocess kodning MC11 (ETERM)

Permalänk
Medlem

Microprocess kodning MC11 (ETERM)

Hej!
Det är så att jag ska programmera en drill "borr" som ska flytta ett steg;gå ner;borra;gå upp;flytta. Jag har lyckats att göra så att plattan flyttar åt sidan.. Men vet inte redigt hur jag ska få den att gå ner och borra och sen upp igen.

Så här ser borren ut.

Min början på kod:

*Här så ska plattan flytta ett steg i taget
RESTART ORG $10
LDAA #1
STAA $1400
DECA
STAA $1400
BRA RESTART

*Här ska borren gå ner och borra.
*När den har borrat klart ska den gå upp igen.

LDAA #14

I/O:

Inport (Status), BASE+1

Three bits are used

BIT 0:

1: Drill plate is in reference position , bit is 0 otherwise.

BIT 1:

1: Drill is in upper position, bit is 0 otherwise.

BIT 2:

1: Drill has reached lower position (is thru the plate), bit is 0 otherwise.

Outport (Control), BASE
Bits 0 to 4 are used.

BIT 0: Turns drill plate one step on positive edge.

BIT 1: Direction

1: Clockwise

0: Counter clockwise

BIT 2: Motor

1: On

0: Off

BIT 3: Solenoid

1: Drill to lower position

0: Drill to upper position

BIT 4: Alarm

1: On

0: Off

Visa signatur

Chill is not a crime.

Permalänk
Medlem

Jag tolkar det som så att borren går neråt då bit3 är ettställd, respektive uppåt då den är nollställd.
Bit1 anger vilken riktning borren skall snurras och bit0 utför själva rotationen av plattan. Vad bit4 gör är jag inte med på,
när jag gjorde detta med MC12 användes inte något alarm såvitt jag kan minnas.

Fortsättning efter STAA $1400:

Det du vill utföra är (om du inte redan gjort) att starta motorn,
läsa signalerna från outport och sedan kolla så dessa utgör önskade signaler.

ex. för MC12, principen bör framgå.
*Starta motorn, ettställa bit 3
LDAA #$04
STAA $1400
*Kolla inport igen, för att börja rotation utav borr
LDAA $Inport
*Kolla så att önskat bit är ettställd
TSTA
CMPA $02
BNE $FB (Upp till LDAA $Inport igen om CMPA $02 sätter Z=0)
*Börjar sänka borren efter STAA $1400 exekverats
STAA $1400 (Börjar sänka borren)

Fortsättningen kan du jobba på själv. Nästa steg är att hålla koll på Bit2 på Inporten(?), för då borren är i botten skall du skicka upp den igen samt stoppar motorn.
Kanske vill du ha en subrutin som skapar en liten delay så borren är nere och faktiskt 'borrar' i en 0.5-1sekund eller så.

Med reservation för tafatta missar på grund av trötthet, dåligt minne kombinerat med mycket annat att tänka på..

Permalänk

Det låter najs