escuela politÉcnica nacional facultad de ingenierÍa electrxca

64
PÍ2- - Kl ESCUELA POLITÉCNICA NACIONAL FACULTAD DE INGENIERÍA ELECTRXCA MEDIDOR DIGITAL DE FACTOR DE POTENCIA PARA VOLTAJES Y CORRIENTES NO SINUSOIDALES ANEXO PROGRAMA ENSAMBLADOR Programas en QBASIC para, FILTRO DIGITAL GRAFXCACION Y GENERACIÓN DE ARCHIVOS DE DATOS Diego X. 2ambra.no Mora Marzof 1998

Upload: others

Post on 26-Jan-2022

13 views

Category:

Documents


0 download

TRANSCRIPT

ZPÍ2-

- Kl

ESCUELA POLITÉCNICA NACIONAL

FACULTAD DE INGENIERÍA ELECTRXCA

MEDIDOR DIGITAL DE FACTOR DE POTENCIA PARA

VOLTAJES Y CORRIENTES NO SINUSOIDALES

ANEXO

PROGRAMA ENSAMBLADOR

Programas en QBASIC para,

FILTRO DIGITAL

GRAFXCACION Y GENERACIÓNDE ARCHIVOS DE DATOS

Diego X. 2ambra.no Mora

Marzof 1998

Thfl Cybernetia Micro Systems 8051 Family Aaoembler, Varsion 3.02

1800 «1Q01 -1802 =1803 -

XAQO -1COO =

OOBA =«

OOFE =

OOFD =

OOFB •=

OOEF -

OOFF =

009G =0071 =0076 «

0020 =•0040 =

Thn Cybnrnebia

0080 =

OBFA =OBPB »OBFC »OI3FD «OBFE »OBFF =

3FBO "•3F60 H

3 ES A -3F-1E »3F3C -3FOG «3EF4 -

djczm

* •*•*"• LIOTADO DE COHflT ANTES * " *

DIRECCIONES INICIALES DE LOCALIDADES DE MKMURIA PAlíA ACCEDERAL DISPLAY, TECLADO, MEI-tDRXA DEL DISPLAY, CO1TVERSQRES ANALQGICO-DIGZTALES, Y DIGITAL-ANALÓGICO, ESTOS SE ACCEDEN A TRAVÉS DELPPI 8255 0 COMD LOCALIDADES DE MEMORIA EXTERNA.

DRPA EQU 1000H display LCD: puerto A -> 0255 outDRJ?D EQU 1001U «dc:IN (V,I)¡ pu^rbo B -> B255 inDRPC EOU 1B02I1 beolado-aont: píi^rbo a -> 8255 in-oubDRCH EQU 1803H aontrol world par» el 8255

DA1 EQU 1AOOH direaoión del aanvnrnojc- DA Wl H<1-GDA2 EQU 1COOH dirección del conversar DA #2 H4-7

ETIQUETA DEL CONTROL WORD (CW) DEL PPI-8255

DTIN EQU 08AH ;MODO DE TRABAJO: 8255 PPI

ASIGNACIÓN DE ETIQUF.TAS DE .LOS . . . .BITS DE CONTROL PARA, LOS CQNVERSORES J . , , , ...

DTHR EQU OFEH RESET BIT CO : -TÍR,Inicio dn la aonuersion AD •

DTRDV EQU OFDH RESET BIT Cl : -RDV,leer el valor d« VOLTAJE °n ADC1

DTRDI EQU OFBH RESET BIT C2 ! -RDT, TO READleer el valor d« CORRIENTE nn ADC2

DTINT EQU OEFH RESET BIT C4 : -IÍITR, Iner la señal dainbnrrupoion ' INTR' desde el ADC

CLEAR EQU OFFH sebear todos los BITS

; ETIQUETAS PARA EL NUMERO DE DATOS

LDT EQU 096H ; * de daboa de V e I : 150dndab EQU 071H ; número d» dat:oa: 113dNDT EQU 07GH ; número dat. (puntero) : 113d+5=118d

ETIQUETAS PARA CONTROL DEL TECLADO

mode EQU 0020H ; (1D02IJ) AND 0020H ~> MODEup EQU 00-4 OH ; (1D02H) AND 0040H -> UP

Miaro fíyntom» 8051 Family As a «roblar, Veraion 3.02 P^ge 202-20-98

dvm EQU 0080H ; (1802H) AND OOBOH ~> DOWN

ASIGNACIÓN DE DIRECCIONES A MEMORXA RAMPARA EL MANEJO DEL TECLADO

AUXLCD EQU OBFAHCONTLCD EQU OBFBHCURSOR EQU OBFCHDDRAM EQU OBFDHCARÁCTER EQU OBFEHDÍGITO EQU OBFFH

DIRECCIONES DE INICIO: MENSAJES Y RESULTADOS

ddrl EQU 3FBOH ; panb*lla de monaajei» Jnicinleaddr2 EQU 3F60H ; panball* d« resultados

DIRECCIONES EN RDM .PARA LAS ESCALAS A UTILIZARSE

evR EQU 3F5AJI . diaplay: neanla do voltaje'nevR EQU 3F4EH número: eno^l-l do voltaje«ioj.Il EOU 3F3CH display: ásenla, tfe oorrient*» 1nsalR EOU 3F06H níim<9n»: esoala de aorriint« 1ac2R EQU 3EF4H- ; display: escala de corriente 2

I

3SDO -3F-CB =3ECC =3EBO •=3EAA =

. •/

007C «OJIO 2 ~O B B O »OBBE «

OB77 =0870 =

nsa2R EQUphR EQUnphR EQUanR EQUnanR EQU

DIRECCIONES EN

ov EQU«el EQU*o2 EQUspo EQU

ph EQUan EQU

3 £00 ti3ECEH3ECCH3EBOH3EAAH

RAM .PARA

OB7CHODH21IOBUGHOBOEH

OB77HOB78H

; nfttniKoi osea la de cor ríante 2; display: número de fan*ís; níunero: númaro d« Can^s; di.nplay: calida analogía?»; número: oalida analógica

LAS ESCALAS A UTILIZARSE . •

i/gcala d« voltajenjioala d« oorr^'-nbe 1nnaala de aorriente 2.escala de potencia

numero de fasestipo de salida analógica

DIRECCIONES INICIALES PARA ALMACENAMIENTO DE DATOS EN RAM

OD94 =OB95 -

The Cybornetic Micro

0096 »ony7 fOÍJ9Í) -OB99 »

OCOO -ODOO =

OBEK =

OB7A «OB7B =

01)00 -OBDG =OBDC =

OI3EO =QI1EF. =OBF4 =

;

OEPO =OEDG =OEDC -OEE2 "OEEO =OEEE =>OKF4 •=UEFA =OEFE taOFOO «OF06 -

;

;

OBBE =

OBC-I =

ODOA -OBAO -OBA6 »OBAC =<OBB2 «OBBO «

anv EQUani EQU

OB94HOB95H

;voUa1, ->«Md- analógica/corriente —> salida analógica

Systiínis 8051 Family Assejnbler, Versión 3.02 P*g« 3

anp EQU«na EQUnnCp EQUanfd EQU

adov EQUadoi EQU

rauml EQU

angv EQUangi EQU

XDO EQUKD 1. EQUXD2 EQU

YDO EQUYD1 EQUYD2 EQU

. DIRECCIONES EN

vnna EÜUII.TIIS EQU•vi EQU11 EQUpo EQUfl EQU£p EQU£¡xi EÜU£p« EQUfchv EOUülii EüU

DIRECCIONES EN

direcciones da

K,lfC EQU

' K2K EQU

AO EOUA1, EQUA2 EQUBl EQUB2 EQUKK EQU

ÜÜPfiHOQ97HOUPOHOB99H

OCOO»ODOOH

OBE2H

OÜ7AHOB78H

OÜD01IOJ1D6HOBDCH

OtíESHOBEF.HOBF4 H

RAM PARA

OEDOHOED6UOEDCHOEE2UDEEQJI 'OEEEU1

OEF4 II 'OEFAJI "OEFEHOFOOHOF06H

RAM PARA

02-20-90

/ P -> salid;, analóyJoaíS -> Balido analogía*,-FP -> »«]l..ifjn anfllóyia«;FPD ~> salida analógica

; primor da,to vi( «n RAM 2; primer dato 11, en RAM 2

aouiiiiilador a unía 1

nncrulo en •*! qu= existe Vpiooángulo en el que existe Ipico

fjnLrada; dato oon retardo 0nntrada: cinto con retardo 1,entrada.: dato aon retardo 2

oalida ¡ dato oon r«? tárelo 0oalicla: dato aon retardo 1salida; dato con retardo 2

RESULTAD S

voltaje RMSoorri,e.nt.e RMSarmónico 1 u"e volLaj« (RMS)armón i no 1 dr> uorrietite (RMS)pótündia real (KK)potencia : ' "Tatítor do poü«*naia ' 'faabor de desplazamienton.igno fpctifl torsión ai-món.ica d« volta'j»distorsión armónica de corriente

CONSTANTES

NPF: cttes Usadas en los cálculos

OBBEH

OBCdH

OB9AHOBAOIIOBA6HOBACHOBB2HOBBBH

aireación de la conshante=16A4» 65536 d - .65536 e85

ate => FFIIA2 / 4 : 163<lBd

aoo.fiaip¡nte aü d«J. CiltroaotrCiaionto ni d-?l CilLroaoe.(Tiaieni;e «2 del .filtro : esaalam.cso-CIai«nte bl del filtroco»finiente b2 del filtro

; constante del filtro

Tho Cybornetia Miara Systonua Ü051 Family Asnomblor, Veraion 3,02

DlPi'CCTGNES EN ROM PARA, CONSTANTES

direcciones de NPF: cttes usadas en loa cálculos

3E8C

3EG83E6E3E743E7A3E803E86

002CD U Í J O00810083 '0084O O B 2

K1R

AORMRA2IÍB1.KH2RI<KR

EQU

EQU

EQUEOUEQUEOUEOUEQU

3E92H

3EGBH3EÍVEII3EV4H3E7AH3F.HOU3E86H

dir-cclon d* 1» can* tAnk*>*>16I*'4- 65536 d - .65536 eU5 NPF

direaaion de la. oonstanke=FFHA2/4= 16256 d = .16256 «B5 NPF

aaw.Ciuiont" a,0 d«jl filtroao*j£iai«ntn al il"l filtrooo*>floient9 a2 dol filtrooo--r.LaJ.onb'» bl dol Ciltrono«n.nf «nt*- h2 d«l Ciltroconstante del filtra « 10000

ETIQUETAS UTILIZADAS EH IA SUBRUTlHA : MOSTRAR

expOEOUEOUEQUEOUEQUEQU

2CIIti O l íBill8311Q 1 HB2I1

SUI3RUTIÍÍA DE MANEJO DEL TECI^DO

esta subrutina permite , luego del proceso de inicializacionnacojer las diforentos encalas y otras opciones tniepresenta, el oepij.po (Cunoionna do entradi d*» datos):1.- Escoger la escala do voltaje: 220 o 440 V2.- Escogrir la asoala de corriente:

primera: 1,2,3,4 , S, 12,15 ,"20 , 25 Asegunda: 1,5,10,50,100,250 A

3.— Escocjfjr el tipo de sistema •

4,- Eacog'jir ni tipo de calida analógica;0->5 Vdc, proporcional a: V-I, p-S, fp-fpd,

para efoctuar nstan aaciones se uUiliza una pantalla LCD,en la que an despliegan los inotlnaJHíi, ijuv deben nerna optado" utilizando *•! L«olado tuooi.-pavat.lo, «-t» t«ai»dotiano dos teclas d«> navegación (UP) , (DOHN) , y Una tocia de MODOlos da toa de «ifloalas, nuinoi.-o de Tañes, y sállela analógica,so almacenan en espacios de memoria RAM, por lo que el valor«acogida debe ser transferido desde 1* memoria ROM.

The Cybiscnetic Micro Syatemn 8051 Family Aanombl^r, Versión 3.02

los menoajos oti ln pantalla LCD, 00 trans.fioren desde ROM,a partir de la localidad: flddrl

00000000011111111231567890123456POWER-METER,/nz90

V.SGAL.E? f f f f í f VI.SCALE?##Xff*# Af . PB. 7 # '!'0-5VDC? CL???-???

DE AruwMQur. uní. M.TCROCC/KTHÍÍIJVDOR

ARRANQUE i. ..

onfca subrtíUina «gta toirwd^ dol manual MCS-BAÍJIC52, y permi-to el arr^nqTíQ del sistonw a trauéíi de un REíIET externo. Enni arranq\ie, se borran la," loaalidades de m«morj.a intima(25S) , y al menos las primeras 512 localidades de mr*niorj.aexterna. Se inioializan además loa punteros, lají pilas deargumonton y control, el valor del cristal, la loralizacióndel programa usuario BASIC, y la velocidad de tramamisión

ORG 2001H

; dio* al BASIC qu«; RESET • * oxkwrno

;

20392039 022090

ORGLJMP

ORGLJMP

2003HEXTO

2039H2090H

OKG 209ÜHlocalidad x la cpi« -1 BA31CI. lama para «f<jatuar «1 RESETSCON^SAH, TMOD^IOH, TCON=54H,T2CQN=54H.

2090 78FF

*- INICIALIDACIÓN DE LA MEMORIA INTERNA *•***

MOV RO,*OFFH ," cargo RO can el valar tope d«

Thn Cybornntia Miara Synfcnmn 8051 Family Aíjiornbltr, V^roion 3.02 Pj»gi fi02-20-96

209a FG209-1 DDFD

2096 75(1 UD2099 753E4D

RESETl: MOV HHO,ADJÍJZ RO.IÍESET1

; m»tnori.a ¿ntocna; aciifnulador =» O

; lazo para borrar toda la memoria; interna

IHICIAJ,I?,AR EL SP, Y SU REGISTROÍITI utilizan loe C'ultimoei hito dnl fítnak: 4DII -> 52Hcomo capnoioM do memoria durante la« oubrutinas d«manejo del display LCD

MOV SP.fl'IDH ; -5011= valor inicial; registro del SP

punt*ro

INICIALIZACION DE LA MEMORIA EXTERNA

209C VJ307209E 79FF20AO OOFFFF20A3 A320A-Í F..J20A5 FO20AG EJ320A7 B5B3F920AA E!)20AB BSB2FS

MOVMOVMOV

RESET2: INCCLRMOVXMOVCJHEMOVCJNE

R 3 , N Ü 7 HJU.JTOFFHDPTR,frOFFFFHDPTRAP DPTR, AA, R3A, DPH, RESET2A, RlA, DPL, RESET2

20AK 900.10A20111 71OF20B3 FO20B1 A320H5 7rtFF20B7 FO

20B0 900.10420ÜI3 7'IOF7.0UI) FO20Í3Í: A320BIT 7/IFF20C1 FO

?OC2 9001.0020C5 7-10220C7 FU20CB A320C9 7/10620CB FO

20CC 90010620CF 740F20D1 FU

dir^naión £in«l d« memoriw. RAMR3.RJ. « 07FFHinoroniinto el DPTR en £orrna

INICIAL 12 ACIÓN DE PUNTEROS

htovMOVí-tovxTMCMOVMOVX

MOVMOVMOVXINC

DPTR,ÍÍ10AHA,»OFH6 DPTR, ADPTRA,#OFFH8 DPTR, A

DPTK,#104HA,«OFH8 DPTR, ADPTK

MOVX

MOVMOVMOVXINC

MOVX

MOVMOVMOVX

6DPTR,A

DPTR,K108HA.ÍÍ02H

DPTR

@DPTR,A

DP'm,ÍfjL06HA,ffOFH6 DPTR, A

at iniaializa MJTOP,«in la memoriaoxt"srn» con «1 valor OFFFH

para VARTOP :no fl« consideran vaciablen doltipo STRIHG => MTOP=VARTOP

puntero para matricun DTMUSF.:sin programas en RAM, DIMUSE=518(206H)

puntero de variables VARUSE:se inioializa corno VARUSE=VARTOP(OFFFH), sa consideran 30 variables

Th» Cybernetia Micro Syst«m* 8051 Fajnily Assnmbler, Veroion 3.02

20DD V-1FF2DDS FO

BASIC, para proyraxnaa do prueba ycjrn Clu«ol6n fixí-nenn .

6DPTR.A

PREPARACIÓN DE PILAS DE ARGUMENTOS Y CONTROL

20DC 7509FE2009 7511FE

20DC 90020020DF 740120E1 FO

20E2 U006

20E4 [182 OES 0020EG 0020E7 9220EO 0520E9 11

20EA 9020E420KD E50920EF C320FO 940620 F2 F50920F4 FO20F5 75A00120FQ 7 POS20FA K420FB 9320FC F2'¿uní A320 FE 1.820FF D9F9

2101 7-33A2103 120030

2JOC 7513022109 751400

210C 75O1FF210F 75CAD8

The Cyberne tic

2112 9U18032115 T1BA2117 FO

2110 BlAU

211A 90180221 ID r-;o211E 54CO

MOV 9H,*fOFEH ' • ' • ; iniaializa. la pila dn arqumentoaMOV HH,ffOFEH ; iniaializa la pila de control

+-"••*• + LOCALI2ACIOH DEL PROGRAMA USUARIO *tAi

MOV DPTR, S512 ; si no hay programa» BASIC, neMOV A, #011! ; localixa -1 cAi-«nt«r EOF (finMOVX 8DP5'R,A / de archivo « #OlH) , en 1512

*•*•** CÁLCULOS CON EL VALOR DEL CRISTAL *4"*

SJMP RESET3

XTL: DB 88HDB OOHDB OOH ; dofine al valor del cristal:DB 92HDB 05 HDB 11H ; 11.0592 MHr. = +0.110592 £+08

RESET3: MOV DPTR, ttXTL ; cargo la dirocciotí en ROM, 1» direcciónMOV A, 9 ; en ÁRG STACK, para un nútncro nnCI.R C ; punto flotante.SUBE A..H6MOV 9, AMOV RO , AMOV P2,*lMOV Rl,#6

RESElM ; CLFt A ; transferir ««1 valor del. ori.ntxlMOVC A.PAt'DPTK ; a la piJ.a de argumentos (ARG STACK)MOVX 8RO,A ; del BASICINC DPTR •DEC RODJWZ R1,RESET4

MOV A,ÍI58 ; cargar el. OPBTTF, para loa cálculosLCALL 30H ; con el valor del crintal

**** DIRECCIÓN DE INICIO DEL PROGRAMA USUARIO BASIC illtt

MOV 13M,fl02H • direcaión inioiaj. del BASICMOV 14H,#OOH ; en EPROM (200H - 512d)

**it INICIALI2ACIOÍI DEL PÓRTICO SERIAL iiii

MOV RCAP2JI,dOFFH ; valorea de retía reja paraMOV RCAl'2L,ífOD8H ; 12 MHz, y 9600 baudios (6549Gd)

Micro SystemEi 0051 Family Assotnbler, Versión 3.02 Pagp B07.-20-90

***•* MODO DE TRABAJO; CONSOLA O MICRO i-ti*

SQ naDoj» mediante el boclado el modo d« trabajo,para consola, no dabn prnsionar las teclas UP,DOtfNal mismo tiempo, para el MICRO, solo la tecla MODE

INICIALIZAR LCD -Y ENVIAR MENSAJES

primero inicializo «1 interf>2 PPI:

MOV DPTR, «DRCW ; CONTROL WORD: direcciónMOV A,ffDTIHMOVX 8 DPTR, A

; inicialiao el LCD

ACAI LCDON

MODO DE TRABAJO: CONSOIA O MICRO

; ohocjuenr «1 hoolado :

KEY1:MOV DPTR,TORPCMOVX A, I' DPTRANL A, ¡ÍOCOH ; teclas UP-DOWN aplastadas

2120 B40015 CJIÍE A, í fOOH,KEY2

. ****. ENVIAR MENSAJE A CONSOLA . *í"4-*-

2123 7B3E CSL: MOV R3, ÍÍ3EH ; localidad on 1» qu<s =o encue

C7>

Iit

M

,Cu

O

G «

.- c>

e 9

c a>

Qc

t-

c t

t1-

"T3

TI

T3 1

) ID

T

J -0

-C

"O

-tí

T3

C¿

H D

O

O

O O

O

^O

OO

OO

OH

-s

Jq

qq

qq

Qs

qp

qq

QQ

v H p

c\

H.^

•¿

DQ

EQ

— -.

n j

o

3t-

]o^

- S

* ffi t

í<

o <

U O

O

CDr^

Cl I O

0 O)

n CN

Jcu

o

o n c D •H O U M Oí -1 i..- 5'

> «í ÍJ tu H 10 D ra n e 03 D M o

u H ra i ^ lo o m <

oD

i 0

OC

10 O

O

M

1

< —

OQ

5

r ,4

N T J

g .s

3Q

i-t

*•*

H U H 03 H D O 9 u Q <| Z H § d w

-u

ne

.

O-P

• S H

- U

C k

tt

>

í>-

>

u-

C t

t- O

- O

T3

K

•-

0

U~

n t

H-

B3

V >

D

i-

O —

( C

Di

- -c

rt

o in

.-c o m

-c

e

tN

o —

c n

H-

c ra

o

.

4J r-i

»' r-i

• C

T3

D

--

c re

.•

H-

'—t

¿i

n

c-

C C

0

(4-

E

O J

J.lí

- >

a t- a

. o

u 13

- U

U

f-

a c

. e; u

-

0

D rl

- .u

o -u

e-

rt

-U -rl 4)

•a u

-q c

•a

-Hn

xO

rt

H

r-I

"U & «

(t -

D

É

TJ

r>0

-3

V~

"Cí

(i F

-Í.H

CE

K

«i -^

lí 4

JU

-n

*•

-fc

p E

r f

uD

-H

«'U

Q ~

T-l

a |

%*

K O

tj

-r!

-iJ ü

U

CnB5

M

O -r!

W

Cn

ü-d

ar-

nr~

i

W M

(V C

^ (

fl U

u o

nrin

^

CB H O D n v Oí

10 01

H O H tt U 10 N

H

H U

N

CJ

H0 O

U D

Q'j N

« N

N•?

TJ

T

CM W

r~ n

r- H

H

H o

n m

co

tn 1

3 \o o

u>

« C

V M

M N

Ur-

t- ID

r- v

*r&

w r

-r-

w "

r< u

H f

-l tS

! tV O

n ti

r-

í H

(D

p

D C

u O

í 10

10 o

10 r-

- r-

o; «

N CM

cv

N

W M

M M

W Í

OH

H H

S* H

i-1 i-

"M

en t

e FI

W P

JO

05 >

ca

~: w

to

IO W

M

M M

CO

í(O

M (

O

NI

hs N

o o

o

on

nN

M

M

M M

ÍO

(O

H H

H

I-1

H 1

-* I

-"

8n

n n

n n

nÍQ

at

c\ u

a

Si 3

U í

-1 C

Pl ta

J.-O

W

NJ

MM

Jv

JM

M

(OfO

rOfO

i[-»

j-l.¡-i¡-llJ

l_

lt-l|-

l 1

_ÍW

41

-"

Í-'

•>

>

>>

totc

io-o

«

oto

ioc

:1—

LJ

«-1 C

tB

O a

es

WL

JM

fr:

H

f~ 'r- H

Htu

"z

a oes

CE

O a

<c

a ci

w^

Jfr

j J

rjj -

J \

C -

=» O

i> O

.-TI

3

ni H

fr]

pi

TJ e

n

•» >

Ca

~ TI

T) *

T

•ti CT

3i U

na H

-0

-0

aiEF. tHJOCOO MOV DI'TR,Hadov ; »nvio «1 tU lio do volbaj- a.1 ospauio dw m«moria.21F1 0882 MOV DPL,RO ; RAM asignado21F3 EÜ MOV A,R321F4 FO MOVX BD1>TR,A

21F5 900DOO MOV DP'CR,#*dci ; -nvio ••}. dato de corriente »1 <eap*cio de memoria21FH BB82 MOV DPL,RO ; RAM asignado21FA EC MOV A , R d21FB FO MOVX GDPTR.A

21FC U8 l'WC KO ; reborna. al l^zo (conbeo de dabofi)21FD B8P6B7 CJNE RO , CIJ3T , SITO

2200 22 RET

F.TH DB JA ÜUBRUTIIÍA DK ADQUJSTCIOH DE DATOS

SUBRIJTIHA : ESCALAS •* *•**n- t-i t-

flocribir -?n el LCT "POVn3R-METER/Da98 ; ... "so eiitii.-j.be todo el 'mensaje «n la« 80 loG3lj.dndRS dnRAM del t^D d.ivididnn en doa mit:adna de "í O, paca secluego maotradao en 5 pantAllan d« .1.6 cnra.otr'rnT, B poroadí> mibsd, nóando psr» «íllo la funáion d« dnsplazami^n(SHIFT) en el display

fciransmiLo *il rtt«nBaj«» do ROM a RAM

The Cybecnebic Miaro Sy3^811113 8051 Paniily Asaemblec, Veneion 3.02 Paga 1<102-20-98

2201 y2201 D1EA

9.7.00 P01H022200 EO220A 5420

220C F1DB220E F1DB2210 F1DB2212 B420F1

MOV DPTR,HddrlACALL PROMLCD

MOVMOVX A,SDPTRANL A,flmod<í

ACALL RETARDOACAJ.L RETARDOACALL RETARDOCOWE A,(tmodB,MD3

; tecila mode sin presionar ?

2215 DI67

ESCOJER VARIABLES

chequear elDIñP2teclado:

ESCALA DE VOLTAJE

2217 9 01 B 02221A EO

22. ID F1D1Í22J.F F1DB22»! F1DB2223 B400F1

22 H G 9018022229 EO222A 5120

222C FiDB222E FIDB2230 F1DD2232 B-120F1

2235 F1D02237 7HOO2239 51DB

MOVMOVXAHLACALL'ACALLACALLCJÍÍE

MOVXAHL

ACALLACALLACALLCO1ÍE

ACALLMOVACALL

DPTR,ÜDRPCA, ODPTRA, flinodtsRETARDORETARDORETARDO

A, PDPTR

RETARDO'RETARDORETARDO

PGUP

vs'

MODE presionada ?

mode sin presionar ?

avanzó 1 páginaubica Ion valorno on la tabla.escribo el v*lor '220' en -1 diaplay

I

Q -

H4J

MC «

•§§

o o

oo

- or

e:D

X

G F

-C£

O

as &

C

.<

O

-Q

3

H *

=

~ c

». *

...

ÉU i

<< s

aa<

j «-3

W

Ü £

2u

en:

o o

o -

3= E

- C

Q Q

Q a

:-a

, 3

c c

e EX

o& 2 "

<, <

< D

or¿

f o

o o

* F

- tJ

Q O

'-a

. o

e::£

a £

<í-t

o.

as

r~t

S3

03 H

J (D

o Q

O

Q D

E H

i-* i-i D

r- o

u.

Ci.

03

* ffl

a &

. H

10 o

in

"~.

CV

(V

W

CM

04

a cq

oQ

O f

l-i-

, o

o o

n>

o o

»

c n

: ni p

oH

w

a o

D o

D O

•» i-i H

H -

?O

í tí

in

¡i»

Eif

tij

E2

tx rí

(v

ev N

PJ N

< Q

W£h

N W

CV

rv c

v (M

22BC 8042 SJMP W

I

; subrutina para transferir un n.p.£. desde ROM -> RAM

22BE AD0322CO ACU2?.2C2 790C22C4 EJIJ0322CC DAB222CÜ E-l22CÜ 9322CA UDQ322CC OC8 222CE FO22CF OA22WO OC22D1 QI3Q322D3 OAÍ1222D5 D9F122D7 22

ROMRAM:MOV R5,DPM

MOV lulffoc/•IOV 13PM,R3MOV DPL, R2

ROM2 : CLR AMOVC A,(fA+DPTRMOV DPH, RSMOV DPL, R<1MOVX 9DPTR,ATtJC Ií2INC R-1MOV DPM,R3MOV DPL, R2Di/NZ ' Rl, ROM2RET

; «Im^cono dirección RAM de; «ocal* d*

; contador parn el n.p.C.; primor valor "n ROM

; A <- (ROM)

; (RAM) <~ A

; aiguionto valor »n ROM

; nubrutina para, asacibir el valor de voltaje en el dioplay

22D8 900DFD22DB 74 4822DD FO22DE D183

22EO 903F5A22E3 7900

Thw Cybern«tic

'¿7-f.D E 022ES 7ÍÍFOD322K'Í A422KA (J 322E0 AA8222ED AJJÜ322KF 90DBFE22F2 FO22F3 FT2E22F5 8BÜ322F7 (JAD 222 1T 9 050222FH 0922FC D903E6

22FF 22

2300 F1882302 70002304 7163

2306 y01B022309 F.O230A 54-10

23DC F1DB230E F1DB2310 F1DB2312 B4001B

2315 9018022310 tíO2319 5-1-10

23 IB F1DB231D F1DB23 1F F1DB2321 8440F1

2324 0»2325 71632327 F1DB2329 F1DB

vs: MOV DPI-R, HDDRAMMOV A,#4BHMOVX I?DPTR,AACALL MOVDDRAM

MOV DPTR,#gvRMOV Rl,»0

;ubioa esaritura. un la posición 4BH

;do la RAM del display (DDRAM)

Micro Systems B051 Family Aasembler, Versión 3.02 P*g» 17

V31: 1-fOV A,KQMOV B,»3MUÍ, ABMOVC A, 0A-IHPTRMOV R2,DPLMOV R3, DPH(OV D PTR , CARÁCTERMOVX gDPTR,AACALL PJÍ.IHTCHARMOV DPH,R3MOV DPL, R2IHC DPbINC RlCJNE Rl,f(03H,VSl

RET

ESCALA DE CORRIENTE 1

ACALL PGUPK10: MOV R0,#0

ACALL 131

KL1:MOV DPTR, ífDRPCMOVX A, (ID PTRANL A, Hup

ACALL RETARDOACALL RETAJADOACALL RETARDOCJNE .. A, fOOH,K12

KZ11: MOV DPTR,#DRPCMOVX A,f!DPTRAML A, ffup

ACALL RETAIÍDOACALL RETARDOACALL RETARDOCJNE A,#up,KZll

INC ROACALL ISilACALL RETARDOACALL RETARDO

02-20-98

npmitu le tllcacojoii dnl vsJojc(display) do esosla de voltnjo

; hrnnsfiaro onda dígito «1 di.iplayA <- (ROM)gualdo el DPTR

(DDRAM) <~ AROM d« la <tsa*la. da voltajerecupero el DPTR

; avanzo 1 págin*; ubiua los VAlofoo en la tabla; ««ceibo «1 vnlar ' 1'

; tóala UP presionada. ?

-

; toal» up ain pcnoionoi; ?

," ascrájjo el valor 'xx'

I

232B BB09D8 RQ,#09H,K11 ; vuelvo al primer valor: 1

The Cybernebic Micro Sysbema 8051 Fwnily A«semblf»r, Versión 3.02 P*ge 1002-20-90

232E OOD2

23110 901B0223311 El)233-! ."i/I 202 330 Firm233» 1T1DB233A F1DB233C B1QOC7

233F 90180223-12 EO2343 5120

23-15 Fina2317 FIDO2349 F1DB234B B420F1

234E EO234F 7ÍÍFQQG2352 A1

2353 903F062356 2502235U FA2359 ES8323513 FB235C PQOIJ02235F 51BE2361 B02B

23G3 900BFD2366 715023 GB FO2369 D1D3

23GB 903F3C236E 7900

2370 Kfl2371 75F0022374. A-J2375 932376 AAÜ2237 B ABU3237A 900BFE23VD FO237E F12E23BO ÍJBU32302 8AH22384 0582

The Cybernetic

2386 092387 B902E6

238A 22

230B 71)00238D 71EC

238F 901B022392 EO2393 54102395 TÍOS2397 F1DB

K12 i MOVMOVXAWLTvCALLACAJjLACAX-LCJNE

K212: MOVMOVXANL

ACALLACALLACALLCJÍÍE

MOVMOVMUL

MOVADDMOVhtovMOVMOVACALLSJMP

; Subrutina

ISl: MOVMOVMOVXACALL

MOVMOV

ISl i : MOVMOVMULMOVCMOVMOVMOVMOVXACALLMOVMOVJNC

DPTR, /ÍI3RPCA, 1? DPTRA, finodqRETARDORETAPDORETARDOA,#OOH,K11

DP'm./fDRPCA, eDPTRA, Cmode

RETARDORETARDORETARDOA, #mod«,KZ12

A, noB,#6AB

DPTR,í(noGlRA,Dl>LR2, AA, DPHR3, ADPTR.líoalROÍ-tRAMK20

par* escribir el

DPTR, KDDRAMA, «SOH8 DPTR, AMOVDDRAM

DPTR, íoalRRl,*0

A,ROB,ff2.ABA,HA-IDPTRR2 , DPLR3, DPHDPTR, «CARÁCTER8 DPTR, APR.TNTCHARDPH , R3DPL, R2DPL

; t^ala MODE presionada ?

; bacía modo sin presionar ?

-; Apunto 3a diraccion de] valor; nvmieiriao de "íscal». do aorrient*»!

; ubico en R3:R2r la dirección; ROM de IA ooonla d>a aorricntfll

; brans fiero el valor ROM -> RAM

valor de aorríentol *tn oí display

;ubico escritura en la posición 50H

;de la RAM del display (DDRAM)

brnnn£i»ira CJ«d* digit-.o «1 di.^plwy

A <- (ROM)guardo el DPTR

(DDRAM) <- AROM do la «incalA d« voltajerecupero oí DPTR

Miaco Sysbema 8051 Family Ass«wnbler, Versión 3.02 Pag« 19

IHCCOME

RET

ESCALA

K20: MOVACALL

K21:MOVMOVXANLACALLACALL

RlRl,fl02H,ISll

DE CORRIENTE 2

RO,ftOZS2

DPTR,«DRJ?CA, P DPTRA, IkipRETARDORETARDO

02-20-9B

'

; ««airibo «1 valor ' 1'

; tecla UP presionada ?

239 y irlos239B B4001B

239E 901B0223A.1 EO23A2 5440

23A4 F1DB23A6 F1DB23 Ai) F1DD23 AA B440F1

23AD 01323AE 71EC23BO FILDB23B2 F3DD,23B-I B0060223B7 80D2

23B9 90130223BC Eü23BD 5-120238F F1DB23C1 F1DQ23C3 F1DB23C5 I3400C7

23CO 90180223GÜ EO23CC 5420

The Cybernetio

23CE F1DB23DO F1D323D2 F1DB23D4 B420F1

23D7 E02308 75FOOS23DB A4

23DC 903EDO23DF 2SB223E1 FA23E2 E5B323E4 FB23E5 ííoonaa23EB 51BE23EA 8027

23EC 90QBFD23EF 74 5323FI FG23F2 DI 83

23F4 903EF423F7 7900

23 F 9 EO23FA 75F0032 3 FU A423FE 9323FF AA022001 AB832403 900BFE2406 FO2<107 F12E240« BB8324 OD OA82240D. A324 OE 09240F B903E7

2112 22

2413 F1Q 82415 7BOO

AGAJ.1. RETARl^OCJHE A,#OOH,K22

KZ21 : MOV DPTR, ffDRPCMOVX A,? DPTRAÍÍL A, #up .

ACALL RETAR13OACALL RETARDOACTÚA, RETARDOCJ1ÍE A,flup,KS21

XWC ROACALL IS27\CAI.L RETARDOACALL RETARDOCJHE RO,#06H,K22SJMP K20

K22:MOV DPTR, ffDRPCMOVX A, 0 DPTRANIi A, HmodeACALL RETARDOACALL RETARDOACALL RETARDOCJNE A, #0011, K21

KZ22: MOV DPTR, frDRPCMOVX A, !í DPTRANL A,#mode

; t«cla up sin presionar- ?

; escribo el valor * xxx'

; beala MODE presionada 7

; teala MODE sin presionar ?

Mioro System» 8051 Family Aseeinbl»r , Versión 3,02 Page 20

ACALL RETARDOACALL RETARDOACALL RETARDOCJHE A,íhnodQ,KZ22

MOV A,ROMOV B,#SMUL AB

MOV DPTR,ffnao2RADD A, DPLMOV R2, AMOV A, DPHMOV R3, AMOV DPTR, W»a2ACAJÚ, ROMRAMSJMP XX

; aubrutina para eaaribir el

IS2: MOV DPTR,HDDRAMMOV A,ff53HMOVX 0 DPTR, AACALL MOVDDRAM

MOV DPTR,»»a2RMOV Rl,ífO

1321: MOV A,ROMOV D,#3MUL ABMOVC A,SA-I-DPTRMOV R2/DPLí-fOV R3, DPHMOV DPTR., «CARÁCTERMOVX e DPTR, AACALL PRINTCHAR

„ MOV DPH,R3MOV DPL, R2IHC DPTRINC IUCJHE Rl^OSH/ISZl

RET

HUMERO DE FASES

XX:ACALL PGUPMOV RO , 1 0

02-20-98

; apunto la direaoion d«sl valor; numerioo da "sácala, de oorriento2

; ubico en R3:R2, 1* direoaion; ROM cío la. anCIAla. do aocrionbal

; transfiero *1 v»lor ROM -> RAM

valor de aorriente 2 en fil diaplay

,'ubiao asoritura en la poniaión 53H

;de la RAM del dieplay (DDRAM)

; tir»n»fi»ra aad» diaito

; A <- (ROM); guardo el DPTR

'; (DDRAM) <- A; ROM de la nacala de voltaje; recupero el DPTR

; avanzo 1 página

The Cybernebic Mioro Systems 8051 Family Asaembler, Versión 3.02 P*ge 2102-20-98

2417 9192 saribo

2^19 yoJ.0022-11C EO2HD 514024 1F FlDB2-121 F10B2123 FlDB242S B40019

2428 9018022-1 2B EO2-12C 5410

242E F1DS2130 F1DB2-132 F1.11B2434 B440F1

2137 70012-139 9192

243B FlDB2430 FlDB243F 80DB

2441 90180224-14 EO2445 SIDO2417 FlDB2 14 y F1D824 4B F1DB21 4D B40019

2450 901B022453 EO2154 5480

2156 FlDE24 SO FlDB245A FlDB245C B4BOF1

245F 7FIOO2161 9192

21(53 FlDB2465 F:IDB2167 BOBO

2469 901802

The Cybernetic

24 6C EO246D 5120

21 CF FlDB2171 FlDB2473 FlDB2475 B400A1

2470 901B02217U F.O247C 5420

24 7E F1DQ2480 F1D132402 FlDB24Ü4 B420F1

2487 E82488 903ECC24ÍJB 9324 8C 900B7724 8F FO2490 8014

MOV DPTR, JfDRPCMOVX A,HDfTRAHÍ, A,HnpACALL RETARDOACALL RETARDOAC T.L RETARDOCJHE A,»OOH/F2

FZ1: MOV DPTR,Í!DRPCMOVX A,HDJ?TR.ANL A,ttup

ACALL RETARDOACALL RETARDOACALL RETARDO •CONE A,Hup,FSl

MOV R0,*lACALL PUS

ACALL RETARDOACALL RETARDOSJMP Fl

F2:MOV DPTR.ffDRPCMOVX A,RDPTRANJJ A, fídwnACALL RETARDOACALL RETARDOACALL RETARDOOttfE A,#OOH,F3

FZ2: MOV DPTR,»DRPCMOVX A,ÍIDPTRANL A,«dvn

ACALL RETARDOACA1.L RETARDOACALL RETARDOCJHE A,(fd«n,FZ2

MOV RO , íf 0ACALL 1?HS

ACALL RETARDOACALL RETARDOSJME Fl

F3:MOV D£>TR,ffDRPC

; teola UP presionada ?

; tecla up sin presionar 7

; dir^aaiono al numero.; osaribo «1 valor '3'

; teola DOWN presionada ?

; teala DOWH sin presionar ?

; diroaciono al numero.; «saribo «1 valor '!'

Miaro Systema 8051 Family Assembler, Versión 3.02 P^ge 22OZ-20-9B

MOVX A,CDPTRAUL A.ttmod^

ACALL RETARDOACALL RETARDOACALL RETARDOCJHE A^OOH,^!

FZ3 : MOV DPTR, ÍIDRPCMOVX A, H DPTRANL A, Wmode

ACALL RETARDOACALL RETARDOACALL RETARDO *CJNE A, tmocl<s,FS3

MOV A, ROMOV DPTR, KnphRMOVC A , B A+DPTRMOV DPTR,ítphMOV¡< 0nPTR,ASJMP YY

; oubzrufcina paca escribir el

; teola MODE pKooionwdm ?

; tecla MODE sin presionar ?

íipnnto 1? dirección tlel valoROM del numero de fasesA. <- [ROM)d.ij:iQaion en RAM: ÍÍCaatis(RAM) <- A

# de fases an el display

2492 900BFD DPTR,#DDRAM

2495249724 9 B

2 4 9 A24 9B

?.49K249F24A224A3-

24A5

24A62-IAfJ24AA

24AC24AF24BO24B2

745CFOD183

EB903ECE

93900BFEfDF12E

22

;

YY:FIGO7noo AOA:91 FF

Al A:901802EO5440FIDB

MOVMOVXACALL

MOVMOV

MOVCMOVMOVXACALL

RET

TIPO DE

ACALLMOVACALL

MOVMOVXAHLACALL

A, 15CH"UPTP, AMOVDDRAM

A,RODPTR, flphR

A.8A+DPTRDPTR, «CARÁCTERSDPTR.A

ubico escritura en la

de la RAM del diapiay

posición 5

(DDRAM)

apunto la dirección elol valor(display) del ff dn £x.nnstransfiero «1 dígitoA <- (ROM)

(DDRAM) <- APR1NTCHAR

SALIDA ANALÓGICA

PGUP ; avanzo a la siguienteRO.HOAHA ; escribo «1 TEXTO ' 1

DPTR, HDRPCA , P D PTRA, tfup ; tecla UP presionada ?RETARDO

al diapiay

pagina

The Cybornotic Micro Syntems 0051 Family Asaronbler, Versión 3.02 Pago 2302-20-98

24B4 FIDB24 B 6 FIDB24BG B4001B

24BB 90180224BE EO24BF 5440

2-1CÍ FIDB2-1C3 FIDB24C5 FIDB2-1C7 B440F1

24CA 0021CB OlFir21 CU FIDB2-lCF FIDB24D1 BD03D824D4 80D2

24DfÍ 90100224D9 EO24DA 542024DC FIDB2 4 DE F1DI324EO FIDB24E2 B400C7

24E5 90180224EÜ EO24E9 5-120

24 EU F1DU24ED FIDB24EF FIDB24F1 B420F1

24F1 EB24F5 OD3EAA21FO 932-1F9 900B7824FC FO24FD H028

ACALL RETARDOACALL RETARDOCJNE A,ifOOH,A2A

AZI: MOV DPTR, HDRPCMOVX A, 0 DPTRANL A.ffup ; tecla up sin presionar 7

ACALL RETARDOACALL RETARDOACALL RETARDOCJHE A,iíup,A21

INC ROACALL AMA ; aoaribo oí valor ' XXX.-KXX'ACALL RETARDOACALL RETARDOCJHE RO,Í03H,A1A ; vuelvo al primer valor: 1SJMP AOA

A2A;MOV DPTR, ÍÍDRPCMOVX A,UDPTRAííL A,í(ifiod» ; tecla MODE presionada ?ACALL RETARDOACALL RETARDOACAI..L RETARDOCJNE A, »OOH,A1A

A22: MOV DPTR,ÍIDRPCMOVX A, P DPTRANL A, ümode ; becla MODE sin presionar ?

ACALL RETARDOACALL RETARDOACALL RETARDOCJHE At HTnode , AZ2

MOV A,RO ; apunto la dirección del valorMOV DPTR.ÍnanR. ; ROM : .ia.J ida analógiaaMOVC A.SA+DPTR ; A <- (ROM)..MOV DPTR, flan ; dirección en RAM: oalida analógicaMOVX BDPTR,A ; (RAM) <- A

. SJMP TRF

; Bubrutina para enoribir «1 tipo dn onlida annlógioa on *il dioplay

20 FF 900BFD ANA: MOV DPTR, ffDDRAM2502 7461 MOV A,*61H ;ubioo oaaritura on la posición 61H2504 FO MOVX [!DPTR,A

The CTi'bern«bia Miaro Systema 9051 Family Aasembler, Versión 3.02 Pago 2-í02-20-90

2SD5 D183 MOVDDRAM ;de la RAM del display (DDRAM)

2507 y(250A 7900

250C EIJ250D 75F0072510 A42511 932512 AAIJ22514 A11032516 '¡OOBFE2519 FO

251A F12E251C 01)8325.1 E ÜAB22520 05022522 092523 B907E6

252B 22

MOVMOV

HA1 : MOVMOVMULMOVCMOVMOVMOVMOVX

ACALLMOVMOVINCiwc:CJNE

RET

DPTR, ff anRRl,ffO

A , KOB,t7ABA.8A+DPTRR2,DPLR3, DPHDPTR, «CARÁCTER9 DPTR, A

PRTNTCHAR

transfiero cada

A <- (ROM); guardo el DPTR

; (DDRAM) <- A

ROM de la «scala

digibo al diaplay

de volta.j eDPH,R3 ; recupero «*1 DPTRDPL,R2•DPL •Rl-Rl,fK)7H,ANAl

-. ,.•

TRANSFERIR LAS CONSTANTES DE ROM A RAM

transfiero la primera conístante: 1GA4

2S27 903E8C

252A E5B2252C FA252D E583252F FB2530 900BBE2533 51BE

2535 903E92

253(1 F.S82253A FA25313 E583253D FB253E 900BC42541 51BE

MOV

MOVMOVMOVMOVMOVACALL ROMRAM

A, DPLR2,AA, DPHR3, ADPTR,*K1K

; ubico en R3:R2, la dirección; ROM de la constante!:£ K1R/almacenar valor en R3:R2

; transfiero el valor ROM -> RAM

transfiero la segunda constante: 16384

MOV

MOVMOVMOVMOVMOVACALL

DPTR,#K2R

A,DPLR2,AA, DPHR3, ADPTR,ffK2KROMRAM

; ubico en R3:R2, la dirección; ROM de la constantfll: K2R/almacenar valor -sn R3:R2

; transfiero «1 valor ROM -> RAM

TRASFERIR LAS CONSTANTES DEL FILTRO DE ROM A RAM

The Cybornetio Micro System» 8051 Family Assembler, Versión 3.0202-20-98

2543 903E68

254G E582254ü FA2549 JS5032S-1B FB254C 9DOB9A254F 51BE

2551 903E6E

2554 E5822550 FA2557 E5832559 FB255A 90ÜIJAO255D SISE

255F 903E74

2562 K5BZ2564 J-'A25G5 F.5B32567 FB25(58 900I3A6256B 51BE

256D 903E7A

2570 E5822572 FA

MOV

MOVMOVMOVMOVMOVACALL

MOV

MOV

MOVMOVMOVMOVMOVACALL

MOV

MOVMOV

DVTR,XAOR

A, DPLR2,AA> DPHR3, ADPTR,HAOROtdRAM

DPTH,#A1R

R2,AA, DPHK3, ADPTR., f AlROMRAM

DPTR,#A2R

A, DPL

A, DPHR3, ADPTR,#A2ROMRAM

DPTR, #B1R

A, DPLR2,A

ubi.oo en R3:R2, la direcciónROM de aO: AORalmacenar valor on R3:R2

ubico la. dirocoion RAM de AOtransfiero el valor ROM -> RAM

Ubico en R3:R2, la direcciónROM de al: AXRalmacenar valor en R3:R2

ubico la diroccion RAM de Altransfiero *>.l valor ROM -> RAM

Ubico en R3:R2, la direcciónROM de a2: A2Ralmacenar valor en R3:R2

ubico la dirección RAM de A2transfiero el valor ROM -> RAM

ubico en R3:R2, la direcciónROM de bl: B1Ralmacenar valor en R3:R2

2573 E5B3257P FU'¿576 "JOUUAC2579 SUBE

257B 9Q3EBO

25VE E5B27.5 U O FA2501 E5Q325OH FU2DU-1 yomma2567 5.1ÜE

2509 903EB6

25HC ES8225(IB FA25OF E5B32591 FD2592 90011BB2595 51BE

MOVI.KJVMOVACALL

MOV

MOVMOVMOVMOVMOVACALL

MOV

MOVMOVMOVMOVMOVACALL

A, DPHl i l , ADVTR, JfBlROMRAM

DPTR,fB2R

A,DPLR2,AA, DPHR3, ADPTR, »62ROMRAM

DPTR,KKKR

A,DPLR2,AA, DPHR3, ADPTR,NKKROMRAM

ijjlau la dirnaaion RAM d» Bltransfiero el valoc ROM -> RAM

ubieo «n R3:R2, 1» diroccianROM d- b2: U2Rlmacanar- valor un R3:R2

líbico la dir«acion RAM d<s BZbrans£iero el valor ROM -> RAM

ubico en R3:R2, la direcciónROÍ-1 de kk: KKRlniaoon^r valotr «n R3:R2

líbico la dirpcaion RAM dn KKtransfiero el valor ROM -> RAM

The Cybernetic Miaro Systems 8051 Family Aasembler, Versión 3.02 P*g?. 2602-20-98

2597 122fi2F2.rj9A DO^Ffin259D 122GEA

25A3 F1DU25A5 F1DB

TRANSFERIR LA PAWTALLA DE RESULTADOS A DDRAM

s<? escribe todo °.l mona aje RII las DO localidades deRAM del -LCll dividid^.-» »>n don mitadn» de "10, pa.rs s»rluf'go mosüradaa en 5 pantallas de 16 caracteres, O porcada mit^d, usando para ello la función de dflapla^airiien(SHIET) «n «1 diflplay

transmito el mensaje de ROM a RAM

LCALL CLEAKLCDMOV in>TR,#ddr2LCAJjL PROMLCDLCAI.L DTSP1.ACALL RETARDOACALL RETARDO

25A7 22

DE rjv aui3FíU'rrtíA ESCALAS

SUBRUTINAS PARA MANEJO DEL DISLMAY LCD.ASM[>. 7.^nibrano M.1995/03

T,3f subrutiiiAo p«ir^ si m»n«jo del dioplay LCl"), SP basan -n •;!envío de diferentes códigos a través del puerto A, del ínterfazparalelo J?PI 8255.

•* SUBRUTIMA DE IKICIALIZACIÓN DEL DISPLAY LCD*. POWER OM KF.SET ( CALL 2100H )

CDON:

DRPA : DIRECCIÓN DEL PUERTO A DEL 8255 PPI, Eíí DOfíDE E.STA

The Cybernetic Miaro Systems 8051 Family Assembler, Versión 3,02 P.nge 2702-20-98

; C01-IECTADO EL DIÜPLAY LCD; 03,03,03, INITIAL IHSTRUCTIOHS

25AU 901800 MOV DPTR,#DRPA25AB 7403 MOV A,N3

25AD FU2ÜAE 74132BDD FU25m F1DB25B.1 74032ÍÍBÍÍ FO25D6 7-1132SÜD FO2509 F1DD25BB 740325DD FO25BE 711325CO FO25C1 F1DB25C3 7-10325CS FO

25C6 740225CG FO25C9 74 1225 CU FO2Í3CC F1DB255CF. 74022sno FO25D] 741225D3 FO250-1 F1DB25DÍÍ 740225D0 FO

2.IÍI)9 7-50023DB FOZSDC 741825DE FO2SDF FJDB25E1 74 0825E3 FO

25E4 7-10025EG FO25E7 741025E9 FO2 5 KA F3D132f)EC 7400

. 25EE FO25EF 74 OF

The Cybennetic

2ñFL FO25F?. 741F25F4 FO25F5 FJ.DBaSF'/ 7-IOF25F9 FO

25FA 740025FC FO?5FD 7*11025FF FO2600 F1DB2R02 74002(504 FO2G05 74062607 FO260B 7416260 A FO2COB F1DB2GOD 74062GOF FO

2<Í10 74002612 FO2613 74102 6 15 FO2filG F1DÍ32618 74002 61 A FO20 IB 74012fUD FO26:1*; 74112620 FO2621 F1DB

MOVX IjDI'TR.AMCP/" A , l ( I . n Hiov;< HDFI 'R,A

AC'ALL MTARDOMOV A , H 3MOVX eDI.'7R,A^KW A/Í13HMCP/X eDÍ»TR,A.ACALL RETARDOMOV A, «UMOWÍ PDPTR,AMOV A,»13HMOVX 6Dl>TR,AACALL RETARDOMOV A, #3MOVX: 8DPTR,A

,-FUNCTIO» SET: 02 ,02 ,08 ,MOV A, ¿(2MOVX IÍDPTR,AMOV A.K12HMOV/ HDI?TR,AACALL RETARDOMOV A , ff 2MOVX eDPTR,AMOV A, Í12HMOVX PDPTR,AACALL RETARDONfOV A, #2MOVX 6DPTR,A

MOV A , Í UMOVX BDPTH,AMOV A , H 1 Ü HMOVX (JDPTR,AACALL RETARDOMOV A, IfSMOVX BDPTR,A

;DISPLAY ON/OFF: OH,OFH

MOV A , fl 0MOVX eRPTR.AMOV A,#1QHMOVX 6DPTH.AACALL RE TARDOMOV A, í 0MOVX PDPTR.AMOV A,#OFH

Mi oro Systems B051 Family Asseitibler, Veraion 3.02

MOVX PDPTU.AÍ40V A, l f lFHMOVX BDPTR,AAC/U.L RETARDOMCC/ A,Í»OFHMOVX gDPTR.,A

; ENTRY MODE SET : OH , 0 6H

MOV A , f OMOVX PDt>TR.,AMOV A,S10HMOVX fiDPTR,AACALL JíETARDOMOV A , "0MOVX eDPTR,AMOV A, #6MOVX. 8DPTH.AMOV A, l f l6HMOVX @DPTR,AACALL RETARDOMOV A, «6MOVX ' @DPTR,A

;CLJl DJSPLAY: OH,1H

MOV A, f f O •MOVX 9DPTR,AMOV A, f f l O HMOVX 8DPTR,AACALL RETARDOMOV A,ÍÍOMOVX gDPTR,AMOV A,# lMOVX 9DPTR,AMOV A,*11HMOVX 6DPTR,AACALL RETARDO

Page 2802-20-98

2023 74012025 Fu252G FJLDB202ÍJ F I D D2 62 A F1DD2fi2C F1DB262E 22

MOVMOVXACALLACALLACALLACALLRET

A,«Iu DPTR, ARETARDORF.TARDORETARDORETARDO

;FIW INICIALIZACION DEL DISPLAY

DE BORRADO DEL DISPLAY LCD*LINEA DE COMANDO » ÜOH,01H(CALL: 2200H }

CLEARLCD:

Syatotua 0051 Fnmily Asaombler, Versión 3.02 Png'? 2902-20-9B

; CLEAR:

263226342(535263V2C3IÍ2S3A253C2G3D

20-132 G I S2 61 72 01 B264A

901.8007400FO7110FOF1.DBV400FO7401FOVIHFOF1DB7401FOF1DD22

F1.DB22

MOVMOVMOVXMOVt'IOVXACALLMOV^tCFVXMOVMCP/XMOVMOVXACALLMOVMOVXACALLRET

; ^ *'

;

DISPl:

MOVMOVMOVXÍ-ÍOVMOVXACALL •MOVMOVXMOVMOVXMOVMOVXACALLMOVMOVXACALLRET

DPTR, tíDRPAA, H O9 DPTR, AA , < K O HflDPTR,A]ÍE TARDOA, N O ,(J DPTR, AA, ttl? DPTR /AA, uní(í DPTR, ARE TARDOA ( * l(!DPTR,ARETARDO

LINEA DE COMANDO - 0 0 H . O O H(CALL :2?.50H )

DPTR, ífDRPAA,«08HH DPTR, AA,#18HBDPTR.ARETARDOA , H U D UeüPTK,AA.t tOOHPDPTR,AA,nOH@ D P T R f ARETARDOA,#í)B DPTR, ARETARDO

SUBRUTIHA DISP2 PARA EfíCRJLülR EN LA 2a MITAD LCDLINEA DE COMANDO = O A H , Q H H

(CAljL : 2300H )

DISP2:

2667 901800 MOV - DPTR,#DRPA

The Cybernehic Micro Systems 8051 Family Assembler, Versión 3.02 Page 30'02-20-90

2G6A2G6C2 6 fill26GF2G702G722GV42 «75

267H

74 OAFO741AFOF1DB7 4 O AFO7.4 08FO7419

MOVMOVXMOVt-iovxACALLMOVMOVXMOVMOVXMOV

A,i¥OAHB DPTR, AA,#1AHg DPTR, ARETARDOA,#OAH0DPTR.A

9DPTR,AA,fflHH

267A KO MOVX2G7B F1IÍB ACALL217D V 4 0 8 MOV267P FO MOVX?.ÍJOO F1DB ACALL2682 22 RET

8DPTR.ARETARDOA, - Y O6 DPTR, ARETARDO

LINEA DE COMANDOPARA DTRECCIONAR- tflddd.dclcIdB

DDRAM PUEDE TOMAR VALORES DESDE 0

LA DDRAM4**

HASTA 79DO O O O O O O O B -> 01001111B

(CALL 235QII )

MOVDDRAMí

2GÜ3 900BFD260 G EO2607 90100026ÜA -1/100268C 54 FO26UE C126BF FO2690 CÜEO2<i<f2 21102694 tfO26<>5 FI.DO2697 DOGO2699 FO

2G9A yüOBFD269D EO269E 9010002GA:I 4*10026A3 540F2GA5 FO26AG CQEO2GAO 24102fiAA FO2CA3 F1DB26AI3 DOEO26AF FO26ÜO F1DB

MOVMOVXMOVORLANt,SWAPMOVXPUSHADDMOVXACALLPOPMOVX

h*3VMOVXMOVORLANLMOVXPUSHADDMOVXACALLPOPMOVXACALL

DPTR, Í»DDRAMA,!IDPTRDPTR, HDRPAA,#100t)OOÜOBA, Í11110000BAfl DPTR, AACCA, U OHI?DPTR,ARETARDOACC(j DPTR, A

DPTR, ff DDRAMA, H DPTRDJ?TK,flDRPAA, ífJOOOOOOOBA, Í00001111BfiDPTR,AACCA,fílOHllllf!DPTR,ARETARDOACC6 DPTR, ARETARDO

;LEO EL VALOR DE DDRAM;COMANDO LCD

;envio el bifce mas significaLivo

;guardo el contenido de ACC

; recupero el valor del ACC

•ínvio el bite monos aignifioativo

The Cybernatic Micro 8051 Family Aaflemblec, Versión 3.02 P^g-? 3102-20-98

MOVCURSOR:

*SUBRUTINA DE POSTCIOHAM [ENTO DEL CURSORLT1ÍEA DE COMAHDO - 1DDD,DDDD1JV RAM (CURSOR) TOMA VAL-ORES DE O A 15MAY QUE TRADUCIR A DIRECCIONES LCD(CALI. : 2400H )

26U3 901UOO2CÜ6 ESFC2GUQ 3400

MOVí-tovANL

DPTR, ífDRPAA, ÜJRSOR.A,ííooooioooa /DETECTO VALORES >* O

cursor dlr cursor dir

01234567

OOH01 H021103FI0411osn06H07H

ü9

101112131415

4 OH41 H421143U4 4 H45H4 G H47H

-> NO SUMO

-> SUMO 38H

SESEHTAyCUA'ÍTÍO 64D = 40H = 0100 00008CINCUENTAVSEIS 56D - 38H = 0011 1000B

2GIIA D-10B0726UD ESFC2613F 243026C1 0226C6

2GC4 ESFC

26CC 448026CO F5FC26CA 54FO

MOVADDLOMP

NOSUMO:MOVSUMADO:ORLMOVAHL

A,#00001000B,NOSUMOA,CURSORA,H3BHSUMADO

A,CURSOR

A , * ] O O O O O O O BCURSOR,AA, #11110000B

I

26CC C426CD FO26CE COEO26DO 241026D2 FO26D3 FJDB26D5 DOEO26D7 FO

26DB E5FC2GDA 54 OF26DC FO

The Cybcírnafcia

2GDD COEO2GL1F 2-1102GK1 fu2 fig 2 F1DB2GE4 I50EO2 GE 6 FO2GE7 F1DB26E9 22

2GEA AB11226EC ACH3

26EE 78FF

26FO D14B

26F2 082GF3 E U26F4 B42802

26F7 DI 67

26F9 EU26FA B45001

26FD 22

2GFE EO2GFF 8B822701 OC832703 932704 F9

2705 C-1270 fi 54 OF2708 4440270A yOlBOO

Tho Cyb-.n-tia

27 OD FO270E COEO2710 24102712 FO2713 F1DB2715 DOEO2717 FO

271Ü E9271.9 5-10F271B 4-140271D 'Í018002720 FO

SWAP AMÍÍVX HD^TH/APUSH ACCADD A, ntíRMOVX flDPTR/AACALL RETARDOPOP ACCMOVX 8 DPTR, A

MOV A, CURSORANL A, tfOOOOllllBMOVX 8 DPTR., A

Miaro Syatenuí 8051 Family Assembl«»r, Vision 3.02 P*go 3202-20-90

PUSH ACCADD A, 410(1MOVX H DPTR, AACALL RETARDOPOP ACCMOVX P DPTR, AACALL RETARDORET

SUBRUTINA PARA COPIAR CONTENIDO DE EPROM AL DISPLAY LCDSE COPIA DESDE Lft. PAGINA BAÍJELCD.AUXLCD MEMORIA TEMPORALCONTLCD CONTADOR DE CARACTERES .(CAIJ-, : 2-1.10H )

PROMLCD:

IVW R3,DPL ; almaceno «X valor del DPTRMOV R4,DPH ; en R<1:R3

MOV RO,HOFFH ; INICIALIZO EL CONTADOR DE CARACTERES -1

ACALL DISP1

COPYLCD :INC ROMOV A , ROCJílE A,f(2BH,HALF ;LOS 40 PRIMEROS CARACTERES EH DDRAM

;CAMBIO A DISP2

ACALL DISP2

IIAJ.F:MOV A,ROC.JNE AíífSOHíOKCOPYLCD ; LOS 80 CARACTERES EN DDRAMF1NROMLCD :RET

ot«:oPYLCD :MOV A,ROMOV DPT..,R3MOV DPI1 , R4MOVC A.BA+DPTR ,-LEO LA ROM A COPIAR EN LCDMOV R1,A ; ALMACENO EN (AUXLCD)

SHAP AANL A,IOFUORL A,S01000000BMOV DPTR,#DtíPA

Miaeo Synbom* 8051 Family Aja-oinblar , Varaian 3.02 Pago 3302-20-98

MOVX ' 8DPTH.APUSH ACCADD A, ftlOHMOVX @DPTR,AACALL RETARDOPOP ACCMOVX e DPTR, A

. ——^—ACOMODO PARA ENVIAR AL DISPLAY LCD SEGUNDOS -I BITS— — —

MOV A,R1AHL A,#OFHORL A,#01000000BMüV DPTR, tfDRPAMOVX 9DPTR,A ' ' •

272] COKO2723 21102725 FO27? G F1DB7.720 DOEO272A FQ

PUSHAllí)MOVXACALL1>OP

ACCA , f f l O H«DPTK.ARF.TARDOACC(ÍDPTR.A

272B 0226F2 LJMJ?

FIN SUBRUTINA DE COPIADO DE ROM AL DISPLAY*

272K 90DBFE2731 EO .2732 OOinOO

2 7;! 5 C12736 540F273U 4110273A 90180027 3D FO273E COEO2740 211027-12 F(J2743 F1DB

Tho CybflrnoLia

2715 DOEO2717 FO

2710 ÍJOOBFE27 4B EO271C 901f)00271 F 51 OF2753 'U 40ÍT/53 FO2754 COEO275G 2110275B FO3V59 FIDO275B DOEO275D FO275E 22

275F 71 032761 14102763 yOlüOO2766 FO2767 COEO2769 2-11027 CB FU27GC F1DB276E DOEO2770 FO

2771 900BFF2774 EO

*•*•*******•*• SUBRUTINA PARA ESCRIBIR UM CARÁCTER EN 1-A POSICIÓNDO RAM

EL CARÁCTER A ESCRIBIR ESTA ALMACENADO EN LA LOC. RAM (CARÁCTER)(CALI, 2550H)

PRINTCHAR:

MOV DPTR, HCARACTERMQVX A, 0 DPTRMOV DPTR, KDRPA

SHAi> AANL A.ÍOFIIORL A.ÍIQ1000000BMOV DPTR, ÍMJRPAMOVX 6 DPTR, APUSH ACCADD A , f H O I JMOVX fl DPTR, AACALL RETARDO

Micro Systemfl Í10S1 Family Asaoniblor, Vorsíon 3.02 PSQO 3402-20-98

POP ACCMOVX 6DPTR,A

• _._. M— „„„ — — __ ACOMODO PARA ENVIAR AL DISPLAY LCD SEGUNDOS 4 BITS————

MOV DPTR, «CARÁCTERMOVX A, 8 DPTRMOV DPTR , «DRPAANL A,*OFHORL, A , í f 0 3 0 0 0 0 0 0 BMOVX QDPTR,APUSH ACCADD A,I10HMOVX P DPTR, AACALL RETARDOPOP ACCMOVX 8 DPTR, ARET

SUBRUT.TNA PARA ESCRIBIR UN NUMERO EN LA POSICIÓNDDRAMEL NUMERO A ESCRIBIR ES UN DÍGITO DECIMAL DE 0 A 9ALMACENADO EN LA LOC. DF. RAM (DÍGITO)

{ CALI. : 260011 )

RINTDIG:

MOV A , f f 0 3ORL A , f f 0 1 0 D O O O O BMOV DPTR, KDRPAMOVX 9 DPTR, APUSH ACCADD A,«10HMOVX U DPTR, AACALL RETARDOPOP ACCMOVX 8 DPTR, A

.__,_____ > — — — ACCM^ODO PARA ENVIAR AL DISPLAY LCD SEGUNDOS 4 BTTÍJ — — — —

MOV DPTR,ttDIGITOMOVX A,eopra

2775 54UF2777 4/IdO2779 901800277C FO277D COEO277F 243.02781 FO

ANLOHLMOVMOVXPUSHADDMOVX

A,*OFHA,ff01ÜOOOOOB

0DPTR,AACC

gDPTR,A

Miaco Syotomo 8051 Family A»n«mblor, Vapulan 3 .02 Pí>g« 3502-20-90

27 [M DOEO27OG FO2787 22

ACALL RETARDOPOP ACCMOVX 8DPTR,ARET

FIN RUTINA PRINTDIG :-

5UBRUTTHA PARA AVANZAR DE PAGINA DENTRODEL DISPI..AY, PARA ELLO SE RECORRE 8 VECESEL DISPLAY HACIA LA DERECHA (PGUP)LXHEA DE COt'lANDO : 01.H,Q8H

27nn 7FOD270A 901000

MOVMOV

R7.DOE1DPTR, ÍIDRPA

27 DD270F27902792279327952797279027 9A27 9B279D279E27AO27A227A32 7 AS27A727A927AB2VAD

7401FO7411FOF1DB7101FO7108FO.7418FOF1DB

7408

FOFLDBDFE6F1DBF1DDF1DI3F1DB

MOV^tovxí-tOVMOVXACALLMOVt'KJVXMOVMOVXMOVMOVXACALLÍ-50VMOVXACATXDJ1IZACALLACALLACALLACALL

A, flOlP DPTR, AA, ffltH0 DPTR, ARETARDOA . f l O lg DPTR, AA, «089 DPTR, AA,nim8 DPTR, ARETARDOA,f l089 DPTR, ARETARDOH7 , PGURBTARÍ)ORETARDORETARDORETARDO

27AF 22

SUTÍRUT.TNA PARA RETROCEDER DE PAGINA DENTRODEL DISPLAY, PARA ELLO iJE RECORRE 8 VECESEL D1SPLAT HACIA LA DERECHA (PGDN)J.THEA DE COMANDO : 01H.OFH

27DO 7FOÜ27B2 901ÜOO

MOVMOV DPTR,tfDRPA

Cybsrnefcia Micro Systems 8051 Family Aasemblsr, Versión 3.02

27B5 901 BOO27B8 7-1012 VEÍA FO27DB 'Mil2 7 CID FO27BE F1DB27CO 740127C2 FO27C3 74 OF27C5 Fu27C6 74 1F27CB FO27C9 FJDB27CB 74 OF

MOVMOVh)OVXMOVMOV:<ACALLMOVMOVXMOVMOVXMOVMOVXACALLMOV

DPTR, ífDRPAA,#l(í DPTR, AA,I11H"? DPTR, ARETARDOA, tflEÍDPTRfAA,«OFH(ÍDPTR,AA,N1FHRDPTR,ARETARDOA,#OFH

Q.

Q a 0

w-a

a

a <

0

ÍO í-1

II II

a B

u?!

*

M

<fl

Ü

O C

n o

o a»

U J-

*H t-

1 ai

XI

O.

H a

0- c

. 3ff

i O u

ffl

MT3

0

O O

*v.O

O

O

M

*- r

t- t

t tt f

t.B

tt

tt V

..

3

H-

H-«

-í.

n *

* *

LJ H

. 3

3

0 1

K

W H

U

Cl

4-U

9C

D

Q

a

a to *- 1-3

hi w

-a

H <

M a ii

u i

n

-s.

* O

H4>

W H

4-

*•

tó4

-— 3

O

Q H

W —

.-O

•~~, t-,-.

3

H

O 3

—.1

-14

.<í ¿

\ •

H 3

*-

.

' +

H•r

4- H

* <í

~ H

-l- N

M

+

«-t"

<+

H M

.

-i-

*-*

< M

•}•

- 3 ¿

j-3

• 3

?!

1•> f

N>

3

X*-

>

1 7\

¡D

P-H

0 ÍT3

S-H

a

o 0H

0o u

a o

hits v

un t

t0 n

3-

a u

n »-" i-1

a tt

a H

V

Cn

aV H

a "Ha

3 •

0 tt

tt 3

a rt

n s

•ti a

0 3 *

S0. u

3 3

rt a

S

CT

oí n o

rt r

ttt 0

3 »

U

3tn

o.

o o

H 3 o

5 3

O

Q3

C

.. o 3

o v

tn3

r-

>3

aC

3

o a

«tt

f.0

-D.O

P.O

tt

H-

ttn a

3V

1 ifl

"3 tt

n 3

c x

o0

M

_,<-

spí 3

í—

H 3

3O fí

tt

H

3 t

tS3

9 H

- £n

E p-

IJ0

h"

D 0

0

tTII

o-rt

-U

O

Jtó

0

3

O

00

.H

n t

t o

<

O O

0

3

H-

> •

33

10

í>

<•f

a í>

?;

< o

M

H•—

H

- Q

P.O

JJ

tt tt•d

oir

3

Ü 0 3

C 0.

3

^>-

H

Q 3

<Í > K

rr

a 3 o

-•a

3

U

Q. 3

3

J.

Jl

p,

3

00

Q

< H

-

HH

3a

Q o

3

tt

0U

C

Q 3-

a í

O

0

3tt

X o

rt

tt

U 0"

í*

3

Q 0

C

rt H

-3 i

3 3

a -

- S

3

H 3 H

3 H

rTU

Jtt O

D

o rt

K O

o a a tt tt a t! o 3 a a c 3 U O tt a

u tt o cr rt-

3 tt O 31 tt a C 1- ff V a o a 9 3 0 13 X tt Q O 3 O a V H tt O w X u a -í D 3

U

d•^

« n

ii •o

ti

>> u

_ •»

r|- r

r

¿ o

o r

- 3

3H

-tt

tt

O

Q

QN

tt

H

-J-

M-

H-

í»

3<n

3 3

a.

»< rt

- rr

30

C. u

11

T3

u rr

fl 3 3 O

D H

n c

t ,T

rt r

t «í

CL U

- V

- 3

H

- Jl

h 3

3 3

<

• a

a o

vO

O

H

>

ac.

» 3

o <:

o o

tt >-•

tt rt

-*

t_J.

3

'1rr 3

11 U

H<

II 1

<,

<

O

0tt

tt

!-*!

H)

p.p

.

0 0

ti H

0 0

Q.Q

.O

3 Ht-

OQ

H

tt V

H- 3

a 3 rr

1 !t

«

B

H

MD

.O-s

. 4

--^H

H3

CC i-

: —

j-

^

I-1 H

•í 3

_¿

H.

*• »

Hm

_

K1 H

<

4-

4-W

H-

<t-

H K

H-

M +

+

M (

04-

4-

• N

(0

s •

•3 •

•4- •

H-

3

-í-

-t-

3 3

I-

4-

3 3

— i

—i

an fó

rmu

H U B C ft t--

H-

U f ü.

V B C D 0 • Q.

P- m e M C 3 rt-

c 0 u e 0 D 0 3

tt o

> »a

8

hn 3

K

V

H-

>

ttt-

a ^

3'•

Jl

0' D

a-

v i

»*B

0.

tn* "

i-- O

ln ü

SQ

5»•»

rt-

P-

H

^3 3

>

'í0

>

-~

•d(U

> H

0

tt 0

rr j

UH

- < o

aH

rt

SC

OS

att

Ha

yo

V d

D"

Q rt

ft 3

»H

- H

3<

i-11

«í

Q

,-

0 O

S^

rr f Q-

8 LJ.

¡JH

í> O D

-H

>>

aX n

n H

-Hrr

0 í

*

°r¿. > H

.•a

a

o o

H-rt

0 G

3 tt f"

3 1

O-

n í-

-3

rt-

o

Cyb

ern

etic

M

J

Q tt O tn K IB rt a:

O i-1 u 3 M-

tt a o 1 OJ tt a tt H- a 3 LJ O [0

O

-ON

JJ

O I te U

co -;

W

*3

»

a D (t ffl § tt C rr 3 ¡u a 0 c rt H-

H H-

M 3 H 0 a «í H O tt a a 0 3 a 0 ct 3 3

t- ti

*• H

it- ~

* >

«-O to *-h

1- *~

-*-H

4-

T3

* ni

4- 4- 4- í >

ífe ía 4-1

]

:S » "í :§

M

íO N

)

ce

a

M C

-J

M c

a an "}

H j

-1 i-

J í-

1 K

j r-1

Oa a

c a

fi c

W W ñ

S ~

¿ S

G

_ . .

o o

o o

o >

* «n i.L cano de un «intima monofásico:eo toman IOB 113 (71H) dato» d* voltaj* y corri»nt«, aa un ciclo, ubicado» a partir de la posición de RAM :

The Cybernetic Miaro Syftoraa 8051 Family AB«*mbler, Versión 3.02 P*ge 3002-20-98

27EO 7DOS27E2 £427E3 C327E4 900BE227E7 FO27EB 050227EA FO27EB 058227ED FO

27EE 08

27EF POOCOO27F2 1)08227F1 SO27F5 122DE627FO 122D2A27FB 742C

OC05H -> par» Ion datos de voltaje ( OCOOII H- 5 JOD05H -> para. Ion dabas .da corriente ( ODOOH + 5 )

KT, hace referencia al tipo de sistema = 1

para, un « i." tirria trifásico:ne debe toner en cuenta que existe un retardo de 90 grados de 1»onda de corriente respecto a la de voltaje, que corresponde a 20' dn.bos d« dif Brencin., por lo tnnto las posiciones inicialwa dn RAMfeon:

OC05H -> para los datos de voltaje ( OCOOH + 5 )OD21H -> para loa datos de corriente ( ODOOH + 5 + 1C )

KT, haae roíornnaia »1 tipo di oistoma =. 3.73205 = SQT (3)( se asume un siatema tri£ásico balanceado )

«> «implomonto .«i« «urna al puntero do loa datos do aorri«nfc"» «1valor 1CH, escogido mediante el teclado, y almacenado en "ph".

CALCULO DEL VOLTAJE RMS

inicializo variables y espacio de memoria

MOVCLRCLRMOVMOVXINCMOVXTHCMOVX

ACDPTR, íouml@DPTR,ADPL

DPI,SDPTR,A

num». de los cuadrados del vol ajo

MOVMOVMOVXLCALLLCALLMOV

RO

DPTR, ffadov

A,6DPTRCHV2TOÍJR

inioializo ROonagro el acumuladorencero la bandera del sumadorubico el alm«aena.dor de la suma.anc«ro la» 3 potiiaianws aan"«autivaade mnmoria =i parhir de (sumí)[sumí + 1 ) =* b.Lbe man eigniCios.tivo(sumí -f 2 ) = 3er bitu dnl sumador

líbico *1 inioio de la tablaapunto al datocargo en Aoo el dato de voltaje

transm.tto al pórtico serialtransmito una coma

The Cybecnetic Mioro Byatnms B051 Fajnily Ass««mblnr, Vsrsion 3.02 Paye 3902-20-98

27FD 122D21 LCALL CHSR

2800 900COO2803 00922005 EO

2806 F5FO2808 A-12009 F92QOA AAFO200C 900BE22BOF EO2010 392011 FO2812 05822011 EO2315 DA2016 FO2017 05022D1P EO281A 3400

MOVMOVMOVX

MOV>n/LhtovMOVMOVMOVXADDCMOVXINCMOVXADDCí-fOVXINCMOVXADDC

DPTR, IfadcvDPL.ROA,8DPTR

B,AABR1,AR2,0DPTK, ffsumlA, 8 DPTRA,R1HDPTR,ADPLA,ÜDPTRA,R2BDPTK,ADPI.A,6DPTRA,KO

ubico el inxoio do la tablaapunto al datocargo en Acá el dato de voltaje

oarijo en B eX dato de voltajeobtengo el cuadrado dol voltaje: vn*vnalmaceno el resultado en Rl:b.mena*.s.

R2;b.mas.a.

sumo al resultado anteriorler bit«

2do bite

fO

o Q

n c

en

o r

w r

t a

o n

G m

— m

o

<o o

13

o o

o

fo G

W M

M M

íO M

Mce

ffl

CE

a c

: a a

cv s

i w

w m

ui m

U) «

n C

>•

c; ui

H

v-1

M H

c ^j

M &

M M

O <

a O

M M

M M

a:

oa

nc

a

w a

a u

i a

m o

o <

J

N

W f

O M

M

fO

ÍO

CO

NJ

M

ISJ

N3

WO

3C

£2

Qii

i<D

oo

;£3

OO

m

ee

LJ

UU

UlU

MfO

ÍO

fO

ÍO

M

)-> i

-*o

^-j

^H

rto

cju

iuo

en

Hte

f-'l

-'l

-iH

-1!-

1-!'-

1

C"

M O

M N

M ÍO

O

M *

0 »

M

«O

[O

OÍO

K3

W(O

ON

)!'J

-J

M

-Jo

w G

n n *

n >

ro *

3 3

n o

M

J-(

o

a

f-1 0

ji w

JJ

03

C

a 3

15

—n

H"*

aa

on

nH U V p. o n

H-

3 H- a H-

1- H-

M 0 < P r¡ H- g- t-- * m m 3 -D OJ

.0 H

-O C

.3 iO 3 o n

n a o o tn

o H W n .e n i .

• -

fv

H

t^

t^

fS

r'r

'Sr*

nz

>5

HZ

>2

H2

>Z

22

;2

:S

^S

3S

t^

Sr'r

'SS

Z

p|||°||°p

l^

án¡H

S°s

HS

<5

p g

gs

<

O-5

rtln

iB'-

i<5

^:^

*

1J

3e

f=

f'C

;0

-£t"'C

?3

'tlH

-

- >

"cfn

W

'«Íl2

= t

H'-

3S

á

O>

?:i-

HW

3c

Ji

^ *í

O O

H

uJ

G

t-í M

O /

O tB

O

- Jo

P

3C

/3

MC

-ÍO

trt-

r1

»

p.

Za

j^

W^

ÍO

^O

"

'O

53 -

o

*0

53

»H

-*

*

K

o-

>"

3 -

H

H 3

! íl t-1 *

3

H

="=

H-

X

rr

H>

5Q

>?

3>

:3

;d

»'

V

y)

-iiM

ío

e

ü.

Q.

3

?!

H

30

0

5

31

H

P-

H-

s

.

0ff

lii

o"

5i,

BO

p.ílo

n

i-1 J

* t*)

w

H

a

.K

OO

OH

=

r.-r

n

n)-

1

n-

es

uH

-o

iiia

HM

o

a

ac

H

c*

x >

i c*

nn

¡u

TI

cr3

IB

aíN

-ís

nu

Q

^

n

o

h3

3

n-

u h

e

*-•

v v

H

CH

-o

v 3

o i-«

3 "-

^ia

c S

o

ufl

iata

sG

3

3>

fl3

pM

Oifl

oo

P.^

-o

í-'p

.n

tr

er

tr

Q3

oo

n-

o

na

on

-o

V

0

O

O

fl

(t

Í3

H-

H-

H-i

ffllC

O

3

3

0$

3

^-

MM

ris

(T3

(T

rr

rrH

3

»

9

h-

p-

ffl

tíIB

0

t-

^u

'drti-

'E.O

Q

••

O

9

O

33

, 1»

^

(rrr3

í»

l-J

T]

«í

1!

Q

O

O

H

CD

í-

1

OO

Hli

s

aitc

ün

ti

a

s »

'r-'C

D>

'lj'

¡>

>*

•0

*-

'H

!-

1H

t-

'-

3i3

)J

iB

"J

^

a

H

np

.3

C

WO

0.

3^.

wC

>H

Hr

J3

C

Q

iS

OH

^-

3H

OH

H-

OH

M-

HO

SS

O

H

H

«C

H-

rt

n

V

rr íl

«N

W

fiH

-s

nx

a

cr

o

pi

i» o

H-

T

3i

Bo

>"

D.'fl

1

y-

H

W

U

JJ

tífl.Q

-i-'Q

Q

OH

s.

ox

o^

'X

c

e.

c n

s» o

^i

-j

c>

3C

'-

H

o

H>

irrE

.C

. s

rr

at

L3 (t

ai

M

3o

, rr

rr

c. o

n

o

wv

-u

§u

p.

a f

fl t

i o

(1

n

-v

wo

rt

- O

rr

aH

<

nn

V3

V

p.

' -

3

c,

ao

H

CO

Ho

oa

i o

<

o

rr

O"

íB

?j

nn

p.

5;

3 a

3

o a

na

H-

11

w 0

-T3

n T3

¿o

n

«H

-O

rr

aa

rr

w

Kflf-

ir

rn

s

H-

sn

ca

í u

11

K

o «

-T

ot

rv

-<

tr

oa

ilíid

a

n

33

5)

»-•• n

o

H

>I

OH

VV

C

Ü

N) 3

IV

H

H>

rr

,3 g

«-

BU

rr

fflQ

ta3

tfl!

-J

tT

O-

3r

"

Mn

a^

-i

» *

rr »

»-

"•>

,B

>

33

ff

l3

0

H H

z-z

nn

¡a U

C1 3

3

3

3

'

H- a

n ;

j-^-

'Q

ÍB

-S

D

O

H tr

31

ci 3

u 3

jaj

á r

S

3

C O

H 3

o c,

3 .

- «

•3

n ^

a-a

a a.

5 3

• o c

. o í

i- (-

u

>B 4

a

aH

P

-fl

f¿

00

A (a

d

H<C

a a

3

C-3

B

H-

3

'*

n > U b 3 Fl £ n o a » m z •3 n •E £ G

f •

*• t-

V r

* t- 2 f r

3 r

P

P £

P £

£ £

p

3O

E/:

>(r

tSG

an

>r;

•U.O

&C

O-O

T^-

2

§-3

-iM

££

a-j<

<a

:5P

O

>H

J=

Hf0

30

\ -

P.

H *

= Ji

<

X

(T2

to3

Xa

au

O'O

Mií

OO

.a

aH

• 3

«-

> 0" >

C

3

* V

- O

»»

,B

3r

?3

<n

¿3

na

!-C

3

O O

Ü.

— O

P

í i2

Os

rrff

l 3

C <

r-

31

í->

HS

lr

0 C

H

í-íl'C

rt-l-

P.

ti

r-

1 g

<

>

3

O

Q •-

'' íá

i-'H

í— »

-s

»ia

1--

H «

O > il

H H

3o

T *

n n

a .»

Q

«H

-W

?; a

í-- x

f¡ =

c. B

H o i

t"

m

ma

s

ya T

Í o

= x i

x

H 0

-3

>

3

C

•3

rr C

— W

3

Q3 u

a i

a t

u o

U3 f

i. p

, fflriV

SV

o a h

=*

o

<^

U —

H

I 3 «

3

H-

D,

"i c

.t! i

*3

D

íi

N)

•>

¡TI rr ri

M.

0

C.

II T

II

3

ü V

V

(T

O4

0 t

n 3

n 5

1?

MX §s - .-0

§?

H>

d i H

3>

u 3 S

(L 0

rt- 3

0

Ga

o•J

H n 'a C rt P- a a 3 U H

2ÜAO 900BE220AD LrO20AC 05fl220AE ¿"O20AF 05822UBI FO20B2 7Ü05

20B-1 «ÍOOB7720137 KO28B8 F9

28B9213 UA.2Í1BU2QBE2ÜC(]2BC128C3zacr,2QCOaucy20CA2ÜOT2UCD28DO20D12ÜD22UD32QD528DGZQD'l7. (ID! I2 ODA20DJ32 HDD2BDE

OBoy

0082EÜfSFOyoopoo0982EOA')FA-ABFO900BE2EO3AFO0582EO3BFO0502EO3-100FO887CDO

iicro Systems 8051 Family Assemblec, Versión 3.02 Page *11

MOVMOVXIHCMOVXIHCMOVXMOV

MOVMOVXMOV

; suma de los

PAC: IHCIHCVfOVMOVMOVXMOVMOVt-TQVMOVXMUÍ,MOVMQVMOVMOVXADDCMOVXIHCMOVXADDCMOVXIMCMOVXADDCMOVXCJHE

LCALLMOVLCAULLCALLMOVLCALLLCALL

MOVLCALL

02-20-98

DPTR, *suml líbico «1 almacunador do 1* suma6DPTR,A encaro las 3 posiciones cjoniinnutivaraDPL de mronorin *, partir de (sumí)8DPTR,A tsuml + 1 } = bit» mas aignificativoDPL (sumí + 2 ) = 3or bite .del sumadorí DPTR, AR0,#05 iniaializo RO (contador :daton de voltaje)

DPTR, tfph contiene el dallo de acuerdo alA, 8 DPTR tipo de sis tima.R1,A inicializo Rl (contador :da.tos de corriente)

productos : vn * in

RORlDPTR, tfadcvDPL,ROA, P DPTRB,AOPTR, H^daiDPL.R1Ar0DPTRAB.R2,AR3,BDPTR, C sumíA, (í DPTRA/R20 DPTR, ADPLA, 9 DPTRA,R3í! DPTR, ADPLA,I'DVTRA,«0(! DPTR, ARO,HtlDT,PAC

CNV6A, fl ndatOJV2DrvtDPTR,#K2KTOSTSUMA

DPTR, ffpaFROl-IST

ubico el inicio de la tabla dn voltajeapunbo al datocaryo en Acá el dato de voltajeaargo en B el dato de voltajeubico «1 iniciio do la tabla de corrienteapunto al datocargo en Acc el dato do corríanteobtengo el producto : vn * inalmaceno el resultado en R2 :b. monos.».

. - R3:b.mao .s.

numo al resultado anteriorler bite

2do bite

3er bite

almaceno el rebultado en sumí113 datos ?

resultado en 1-IEX. => npf => STACKcargo el valor a convertir en el acc.oonvioKfco oí HGX. »> np£ >*> STACKdivido para el numera d« da toncargo la direoion de K2K en el DPTRenvió al STACKsumo «1 valor -Krt2

almaceno el rebultadoun ni espacio de memoria.

20E1 122E072GE4 717L20JC6 122DGG2ÜE9 J22CDO2BKC 900BC'!20EF 122DDO20F2 122CC9

2HF5 900EEO2BF8 122DBA

The Cybernetia Micro Systems 8051 Family Aasembler, Versión 3.02 Page *5202-20-98

2BFD 900ED62UFB 122DDO2901 HOOEDO?POJ 122DDO2907 122CD3

290A 900EEF.290D 122DBA

2910

2 y 1.12'JIV291A291B291K292129242927292A

900B9-1E O122DEGOOOB95EO122DE6122CD3122CEC122DAD9O0897FO

MOVLCALLMOVLCALLLCALL

MOVLCALL

~ .

MOVMOVXLCALLMOV1-JOVXLCALLLCA1A,LCAT-LLCALLMOVMOVX

DPTR, tfirmsTOSTDPTR, Wv-rmoTOSTMULT

DPTR, HaFROMST

DPTR,#a n vA, 6 DPTRCHV2DPTR, H^niA,f lDPTRO1V2Í-1UIJTSQTTOHEX'DPTR/ í fans ,•8 DPTR, A

aargo I rms al a fca ck

aargo Vrmo al obaak

Irms * Vrms t

almaceno el irosultsdonn el «jQpnaio de memoriacorrespondiente (s)

recilpftro ni vulor I1EX.do voltaje y corriente

' • • •• "'convierto 'a' hexad^cirnal'guardo el dato HEX.

CALCULO DEL FACTOR DE POTENCIA

29211 yOOEES2¡»2E 122DDO2931 900EEE2934 122DDO

2937 122C-DÍI293A 900EF4293D 122DBA

7.9-1029-13

2 9 4 9291D29-1K295129542957

900EF417.2DDO122CE7V4FF122DEG122CD3122DADyOOB9BFO

295(1 VI 00295Á 122DE6

; aargo P a í s taak

; cargo 3 A! «l:nok

P/S <- PUEDE HAIÍER O/Oubioa el resulbadoen el »nps.cl.o de memo iris*aorr«(!pand.LentB (fp)

trJUinClRro el resultadoal otaok (Ip)

escalar el valor de fp

convi-rfco a h«x*decimalguardo el dato HEX.

; inioializo los valores do fpd, thi,thv

; convierto' O a un npf en el atacV;

MOVLCALLMOVLCALL

f-íOVLCALLLCALL

LCALLMOVLCALL

MOVLCALLLCALLMOVLCALLLCALLLCALLMOVMOVX

DPTR, UpoTOfJTD PTR , H BTOST

A , f f 0 1CNV2SUMA

DTVT.DPTR, *fpFROMST

DPTR,«fpTOSTABÍ50],A, Í25SCUV?.MULTTOHEXDPTR, f f an fp@DPTR,A

MOVLCALL

A,'* OCHV2

The Cyb«rnehic l-ltcro 3ystemo 8051 F«mily Asoenmbler, Veraian 3.02 . Psge 4302-20-913

2P5D29GO29C329G629G929fiC29GF29V229752970

900CFA122DI3AyOOEFA122HDO900FOO122DBA900FOO122DDODOOFOS122DBA

MOVLCALLMOVLCALLMOVLCALLMOVLCALLMOVLCALL

DPTR, ff£pdFROMSTDPTR, HEpdTOSTDPTR.Íf thvFROf-tSTDPTR,|íbhvTOSTDPTn,)f thÍFROMST

; \rbiao

; ubico

; ubico

; ubico

; ubico

el

el

el

el

el

0

0

0

0

0

^n FPD

en stack:

en THV

en sliack

on THI

FIH DE 1A SUBRUTINA: CALCULO

SUBRUTINA DE CALCULOFILTRO DIKITAI,

VI,II,FPD,THV,THI

En esta, sxibrutin*, se utilizan loe valoreo Mrrwaenaclofl «n RAMpara Isa esca.la.ft, y J.oi* datos obUenidon desde la. adquisiciónanalógica-digí tal, para obtener modianUo un CJl t t ro digital, loaprimeros armónicos d«s voltaje y cortrionte, y en base a estos rq-oiiltíido» y loo nnü-5rior*a, obtener otron pA.r«m*bro»: FPD ,1'iIV, THI

Las fórmulas utilizadas en los diferentes casos son:

vl(n) - E (v(n))il(n) - f (l[n))VI = Vp(Sbo)/ (1.4142)II = Ipt5l:o)/ (1.4142)fpd= aoa[(n(Vp)-n(Ip))/ndat *(2* 3.14151)]THV - SOT(V 2-V1 2)/ VI

. ..THI = SQT(1'S2-I1A2)/ II

. donde:vi = .valor d». voltaje correspondiente a la fundamentalil =• yálor de corriente correspondiente a la íundamnntalvp -Ip =vi =II =fpd

pi.oo del quinto oiola dul filtro para voltjij-,va,lor pico del quinto cíalo del filtro para corriente.Vrinsl = valor eficaz o RMS del voltaje [ler armónico)Irmsl ** valor eficaz o RMS de la corriente (ler armónico)factor de potencia. d«> desplazamiento

nda t — .numero d« datos pov aada uialon(Vp)M numero de dato en «1 que ocurre el pico de voltaje

The Cybernetic Micro Systems B051 Family Assembler, Versión 3.02 Page <n^-^n-02-20-98

Th« Cybernetia M

ti(Ip) = numera de dato en «1 quo ocmrre el pico de corrienteTHV = distorsión armónica total dq voltajoTHT = distorsión armón.! na total de corrienteV = Vrms = valor eficas; o KMS del voltajeI = Irma ~ valor eficaz a RMS de la corriente

el proceso para hallar loa diferentes parámetro» netransforma en:

VI = vptflto)/ SQTÍ2)II - Ip(5l;o)/ SQTU)JTpdr. aofl L (n (Vp) -n (Ip) ) /ridaL * (2*PI) ]THV = SOT(VA2-vi^2)/ VI * 100THI - SQT(Irt2-Ilrt2)/ II * 100

sv = «naala d© voltajesol — iHaala do corriente 1pc2 = escala do corriente 2apo = escala de potencia

donde:

Para el filtro digital, ne deben tomar 113 datos, correspondientesa un ciclo, y obtener los datos de salida, ruego d*í procensdoo 5ciclos, que eguivalen ^. un numero de ciclón que se requieren para,tenue una atñniiaaion en magnitud menor flj. 10%.

* en el caso de un íiistema mono-fTaaico:sa toman Ion 113 (71H) datos de voltaje y oorrient", correspondientesa un ciclo, ubicados a partir de la ponioion de RAM ¡

OC05H -> para los datos de voltaje ( OCOOII + 5 )OD05H -> pitra loo datoo de corriente ( OCB4H -4- 5 )

* para un sistema trifásico:OQ debe tener en cutmta que existe un retardo de 90 grados de !«.onda de aorrlont» u*»flp*ato a la d= voltaje, qu» corresponda * 2fldatos da diferonaia, por lo tanto lüs posiciones inicíai.BS da RAMson:

OCDñll -> para loo daV.oa de voltaje t OCOOH ^ 5 )OD21H -> para los datos de coririenbe ( ODOOH + 5 + 1C )

FILTRO DIGITAL

X(t) 1 II F(t) 1

Y(t)

conatantfa.i del £,i.ltro:

BO = 1: ~B1'= 1.9BS033: B2' « .9076991 --> B0=l

ero Systems 8051 Family Assambler, Versión 3.02 Pago *1502-20-98

AO = 1.332812: Al = 2.665624; A2 = 1.332B12KK=10DOO

ocuacionea p*rn obton«r in función dn branut

XD2 = XD1: XD1 « XDQYD2 = V131: YD1 = YDO

Yl » Bl' * YD1 - (B2) * YD2XI = AO ^ XDO 4- Al * XD1 + A2 * XD2YDO = -Yl + XI / KK

YDÍ5 KK + B1*YD1

FILTRO DIGITAL

CALC2:

297C V1F7 ACALL PHTR. ; IHICJALIZAR PUtlTEROS

29VK !)OOBF429MI. 122DDO2984 900EDC2967 122DBA

MOV DPTR, »YD2I.CALL TOÍÍTMOV DPTK, «viLCALL FROMST

; ubico «1 0 «n staak.

; ubiao «1 0 on vi -

CALCULO DEL PRIMER ARMÓNICO DE VOLTAJE

298A 7BDO

29HC 7Ü0529ÍIF, C3298F El

MOV R 3 , f f O Ovrri:

W7V R 0 , f f 0 5CLR CCLK A

; R3: contador n. ciclos : 5 inax.

; RC): aonl:«dur n. d»toíi :113di-S « 071H+5; ena<?ro la bandera, dol sumador; ítnceco «1 acumulador

; filtro para los datos de voltaje

2990 082991 900COO

Tlie Cybernetic

2!?94 C1B8Z?.$96 RO2997 122DE6

299A V480299C 122DE6299F 122CCE

29A2 913FZ9M 900BEQ2<!A7 I22DDO29AA 915E29AC 91712!>AK «JOOBEO29B1 122DBA

29134 0B05022WV 00092989 £87604

20EC 01329UD JJB06CC29CO BOS7

VFT: TWC RO.MOV DPTR/íTadav ; ubiao el inicio de la taüla

Hiato Syst«m3 H051 Fíunily- Asseniblar; Vnraion 3.02 P^g*» 4"ff -

MOV DPL,ROMOVX A, 6 DPTRLCALL CHV2

MOV A , K B O HLf^LL CHV2LCALL REfíT

ACALL SFT11-KJV DI.JTR,WYDOLCALL TOSTACALL SFT2ACALL FFT1MOV DPTR,#YDOLCALL FROMST

CJím R3,tt05H,VFT2s^n-ip VPK

VFT2: CJNE RO , ÍÍ1JDT,VFT

IHC fl3CJMR R3 , f 0 6H , VFT1SJ1-0? IFT4

OZ-20-9D

; apunto al dato; CTirgo -u Aoo T-! d»\t;D d- volbi j -; convierto el IÍEX. => npC => STACK

; cargo al valor 12B aao.; convierto el ÍÍEX. -> npf -> STACK; resto ni dato: 128

; desplazo los daboo do nntr^da

• desplazo los daUon de onlida; FILTRO para el dato -> Y

; 6 CICLOS ?

113 datos ?

7 CICLOS ?

; obtengo el voltaje pico y au ángulo (n dato) corrpspondiflnfc-

2!)C2 900EDC29C5 1220002E1CD J22CE729CB DOOI3ES29GT. 122DDO29D1 122CE7J»9D4 122COE?9D7 900HE229DA 322DBA29DD 900BE829EO C58229E2 1429F.3 1429E4 CS 822*)BG BO29E7 13400022 PEA QOOC

29EC ÜOOBE82»KF 122IJDO29F2 900EDC29FS 1 22 DBA

29FB 900UEE29FB C!JB22SFD 1-12'JFE 142PFF C5B22A01 EO

rho Cybocnatio

2A02 B400B-1

2A05 900BEB2A00 C5B2

VPK: MOV DPTK,#vlI.CAI.L TOSTLCALL ABSOLMOV DPTR,fVDOLCALL TOSTLCALL ABSOLLCALL RESTMOV DPTR, # sumíLCALL VROI-1STMOV DPTR, ÍVDOXCH A, DPLDEC ADEC AXCH A, DPLMCJVX A, P DPTRCJNE A, KOOH,VFT3SJI-IP AHG2

VFT3; MOV DPTK,Í(YDOLCALL TOSTMOV PPTR, fvl.LCALL FROMST

AHG2; ' MOV DPTK,.#YD1XCH A, DPLDEC ADEC AXCH A, DPLMOVX A,@DPTR

Mioto Syotemo 8051 Family Ao«*tnblo

CJ1ÍE A,#OOH,VFT2

MOV DPTR, JfYDOXCH A, DPL

cargo la dirocion de vi : VOLTAJE PICO-nvio ni STACKABS (vi)cargo la direaion de "¿DO l salida d«l filtro«nvio a] STACKABS (YDO)vi - YDO

»nvio «1 rebultado desdi «1 STACK -> (numl)obtengo el fligno d«l r»fiultadoubico el dato del SIGNO

si «u negativo; A= 1 , (vi) <- (YDO)

A = 0 ?

cargo la dirccion de YDO ; nuevo V PICO

cargo la dir«aion de vi : voltaje PICO(vi) <- (YDO) '

cairgo la dicocion dt? YD1 :ubiao el dato del SIGNO

fli -3H negativo: A= 1 , (REGRESO)

r, Varoion 3.02 Pago A'}02-20-90

A => 0 ?

cargo la diir«cion dn YDO :ubico oí dato dal SIGIIO

I2AOA 142AOB 1-12AOC C5827AOE EO2AOF B401A72 Al 2 f.B2A13 900B7A2A1G FO2A17 OOAO

2 Al 9 71F7?A1M OOOLUT-I2A1E 122DDO2A21 900EE22A24 122DBA

2A2V 7BOO

2A29 900B772A2C F.O2A2D F92A2E AB052A30 E42A31 C3

2A32 Olí2A33 092A34 900DOO2A37 09022A39 EO2A3A 122DE6

2A3H 74 U 02A3F J22DEfi2A42 122CCE

2A-55 IÍI3F2A47 900BE82A4A 122DDO2A4D 915E2A4F 91712A51 9UOBEU2AS4 122DBA

Thn Cybo.cn-ític

2A57 J3B05022A5A Ü009

ZA5C BQV5D3

2A5F OB2A60 BI30GC62A63 0057

DECDECxcaMOVXCONEMOVMOVMOVXSJMP

CALCULO

ÍFT4;ACALLMOVLCALLMOVLCALL

MOV

IFT1 : MOVMOVXMOVMOVCLRCLR

; filtro de co

IFT: 11 1CIMCMOVMOVMOVXLCALL

MOVLCALLLCALL

ACALLMOVLCALLACALLACALLMOVLCALL

AAA,DPLA, R DPTRA,»01H,VFT2A,RODPTR, #*ngveDp;m,AVFT2

; ai «B negativo: A= 1 , (CRUCE POR CERO)

; A = 1 ?

; cargo la. direcion del ángulo oocr*«pondiínt*; guardo el numero do dato correnp. al ángulo

DEL PRIMER ARMÓNICO DE CORRIENTE

ITITRDPTK,#YD2TOSTDPTR, (filFROt-tST

R3,fOO • •

DPTR,JíphA,gDPTRR1,AR0,05AC

criante

RORlDPTR,fladciDPL,R1A,PDPTRCNV2

A,flUOH 'CNV2REST

SFT1DPTR,» YDOTOSTSI-T2FFTiDPTR, HYDOFROMST

Micro Sy.^t^mfl 8051 Family Ajuiembl

C.JNESJMP

IFT2 : CJHE

INCCJJJESJMP

R3,#05H,IFT2IPK

RO,HNDT,IFT

R3H3, W06H,IFT1THD

; obtengo la corriente pico y su

2Afl5 ÍIOOEE22AÍJO 122DDO2A6U 122CE72AÍÍG fíOOBEflZA71. 122DDO2A7-1 122CE72A77 122CCE2A7A !)QOBE22A7D 122DBA2AÜO 900BEB2AÜ3 C5822AQ5 1-12AIIÍÍ 142AU7 C5U22A09 EO2AflA B<t00022AOD 800C2AOF OOÜBEO2A92 1.22DDQ2A95 900EE22A9B 122DBA

2A9B 900BEE2A9E CÍO 22AAO 1-12AA1 14

IPK: MOVLCALLL.CALLMOVLCALLLCALLLCALLMOVLCALLMOV-xcnDECDEC•xcnMOVXCJ1ÍESJMP

IFT3 : MOVLCALLMOVLCALL

AHG3 ¡ MOVXCHDECDEC

DPTR, tilTOSTAIJSOLDPTR,í(YDOTOSTABSOLRESTDPTR, KsumlFROMSTDPTR, /fYDOA,DPLAAA.DPLA, (l DPTRA, HOOH.IFT3AHG3DPTR,#YDOTOSTDPTIÍ,fíilFROMST

DPTR, KYD1A',DPLAA

; l.íUCTJO.-JtZ.AR HJ1-JTEROS; ubico el 0 «n stack

; ubico el 0 «n il

; R3: contador n. aialos : S max.

; oontione el dato do acuerdo al; tipo de sistema; inicialiso RO

; *>na«ro »1 acumulador; encoró la bandera del sumador

ubico e], inicio de la tablaapunto al datocargo -»n Aac •»! dato de voltaj»convierto el HEX. => npf => STACK

cja.ixjo «1 valor 128 *cc.fjunvj^rto ni IfEX. «=> npr => STACKrento al dato: 12B

desplazo los datos de entrada

desplazo IOB daton de salidaFILTRO para el dato -> Y

»r. Versión 3.02 Paa* 4802-20-98

• 6 CICLOS ?

113 datos ?

7 CICLOS ?

«ngulo (n dato) correspondiente

c*rgo 1* tlir-reiion de il : I PICOenvió al STACKABS (il)cargo la dii-finion de YDO : salida dol filtroenvió al STACKABS (YüO)il - YDO

envió ni resultado dnsdn el STACK -> (sumí)obtengo «J s'ígno del resultadoubico al da.to de), signosi es positivo: A= 0 , (i.1) <- il (TOS)si es negativo: A= 1 , (Jl) <- (YDO)asi obtengo el valor en KVA

A = 0 ?

cargo la direoion de YDO : nuevo I PICOenvió al STACKcargo la dírecion de vi : I PICO(il) <- (YDO)

cargo la direcion de YD1 :ubico el dato del SIGNO

ai e» negativo: A« 1 , (REGRESO)

2AA2 C5822AA4 EO2AAS B400B4

2AAO 900BEB2AAB C5B 22AAD 142AAE 142AAF C5B22AB1 EO2A02 B401A72AU5 E 82AB6 900B7B2AI.19 FO2ABA QOAO

The Cybisrnebía M

XCH A,UPLMQVX A,PI)PTP.CJNE A,#OOH,IFT2 A =• 0 ?

MOV npTR,dYDO cargo l.i dLreaion do YDO :XCH A,DPL uliiao el dabo del SIGl-'ODEC ADEC A si os negativo: A= 1 , (CRUCE POR CERO)XCH A.DL'LMOVX A, P DPTRC.WE A,i¥01H,IFT2 A = 1 ?MOV A,ROMOV DPTR,#angi uargo la. dirtuion d«] ángulo oorc»«poMOVX (ÍDI3TR,A guardo el nuinnro do d^to aorrenp. alSJMP IFT2

oro Systems 8051 Fflmily Assambler, Versión 3.02 P*g- 4902-20-98

CALCULO DE LA DISTORSIÓN ARMÓNICA! TÜDV , THDJ

VI = Vpk/ Í5OT(2)11 = Ipk/ SQTf2)TIIV = SQT (V"2-V1A2) / VI * 100TH1 = SQT(lA2-Ilrt2)/ 11 * 100

ndianbángulo

THD: ' .2A13C DOOEDC2ABF .122DDO1ÍAC2 74022AC4 122DE62AC7 122CEC

2ACA 122CDB2ACD 122CE72ADO 900BAGZAD.3 122DDO2AD6 122CÜ32AD9 900EDC2ADC 122DBA

2ADF 900EE22AE2 122DDO2AU5 74022AE7 122DE62AEA 122CEC

2AED 122CDO2AFO 122CE72AF3 900EE22AFtí 122DBA

-2AP9 900EDO2AFC 122DDÜ2AFF 900EDO2B02 122DDO2U05 122CD32BOQ 900EDC2BOI3 122DDO7BOE 900EDC2IVU 122DDO2B14 122CD3

2B.L7 122CCE2BÍA 122CE72B1D li2?CF,C2B70 900EDC7B23 1?2DDO2B26 122CDO2B29 74fi42B2B 122DÜ6

MOV ,DPTK,#vl . ; cargo V pico al stackJ.CALL "rofíT ,MOV A, «2 ; .aargo 2 al stacfc , •LCALL CNV2 ; convierto .a npf en el stackLCALL SQT ; obUongo la rai= de 2

LCA]JL DJVl ; Vpk / SQT (2)LCALL ABÍÍOLMOV OPTR, KA2LCALL TOSTLCALL MULTV DPTK, tfvl

LCALL FROJ4ST

MOV DPTR, #ilLCALL TOSTMOV A, *7.LCALL CNV2LCALL SQT

LCALL DIVILCALL ABÍJOLMOV DPTR, ffilLCALL FROt-lST

THV) :MOV DPTR, ffvrmaLCALL TO«TMOV DPTR, tfvrmsLCALL TOSTLCALL MULTMOV DPTR, tvlLCALL TOSTMOV DPTR, «viLCALL TOSTLCALL MULT

LCALL RE5TLCALL ABÍ50LLCALL SQTMOV DPTR, fvlLCALL TOSTLCALL DIVT

• -MOV A, f. 1.00LCALL C1JV2

alma onno RJ. r«cnl bailo?n ti inpniíio d* merntiriivcorrespondían Ue tvl)cargo I pico al sback

oargu '¿ al nbankconvierto a npf <?n «>1 stackobtengo la raíz de 2

Ipk / SQT (2)

almaceno el renulb^doen el espacio de memoriacorrespondí en be (il)

ubico il dato de VOLTAJE RMS p. unidadconvierto a un npf en oL obackubico el dato de VOLTA.JP. RMS p. unidadconvierbo a un npf en al stacfc

cargo VI al stack

aargo VI al stack

.obtengo VI "2

rosta de loo oundmdoB

SOT CV*'2-V1 2)cargo VI al stack

obbengo SQT(VA2-Vl-*2) / VI

convierto IDO a un npf en el stack

The Cybernetic Micro Systems 0051 Family Assembler, Versión 3.02 Pago 50

2B2E 122CD32831 122CE22B34 74 LO2B36 122DEC2B39 122CCE2B3C 322CE72I33F 900FQO2B42 122DBA

02-20-90

LCALL MUJjTLCALL IHT ; «sao la parto «nt«ra.MOV . A, flS .LCALL CNV2. ; convierto 100 a un np£ en al stackLCALL -RESTLCALL A8SOL, ....MOV DPTR,fltJiv ,- onvio resultado d«ad« el atacfcLCALL FROMST ; a la posición THDV

;THI):2B45 900EDG2B1H 122DDO2B113 POOEDG2B4E 122DDO2B51 122CD3

2D54 900EE22B57 ;122DDO2B5A 900EE22ÍJ5D 122DDO2BGO 122CD3

2BR3 122CCE2BGG 122CE72H69 122CEC2BGC 900EE22BOF 122DDO2B72 122CDO2B75 716-12B77 122DE62B7A 122CD32B7D 122CE2?noo 7/no2BÍ12 122DEG2UÜ5 122CCEy.tíiH) 12ZCE72I3«I1 900FOG2BOE 122DBA

:

••2B91 C3

2B92 900B7B2B95 EO2B96 122DE6

2B99 900B7A2139C F.O2B9D 122DE6

The Cybernetic Micro

2BAO 122CCE2BA.T 900EFA2UA6 122D13A2BA9 900EFE2BAC EO2I1AD SOOB7A2BBO FO2LW1 yOOEFA2HD-1 1?2DDO2BB7 122 CE'/

aDO A 7 '1672UI.1C 122DE62BBF 122CC92UC2 71712DC-1 172DE62BC7 122CDB2IJCA 7-1022IJCC IZZUBfí2HCF 122CD32I1D2 122CF62UDS 122CD32BDÜ 122CF1

2BDU 90QEFA2BDE 122DBA

2BE1 ÜOÜEFA2I1E-1 J22DDO2ÜB7 7-1 FF2UE9 122DEG2J1EC 122CT)32BEF 122DAD2BF2 900B992BF5 FO

MOV'LCALLMOVLCALLLCALL

MOVLCALLt-JOVLCALLLCALL

LCALLLCALLLCALLMOVLCALLIJ2ALLMOVLCALLLCALLLCALLMOVLCALLLCALLLCALL

- MOVLCALL

CALCULO

£pd— aoo [

CLR

MOVMOV;<LCALL

MOVMOVXLCALL

DPTR, «iritisTOSTl)PTR,ffirmsTOSTMULT

DPTR, #ilTOSTDPTR, #ilTOSTMULT

RESTABUOLSQTDPTR,* i 1TOSTDIVTA, fllOOCNV2' MULTIHTA,ffí 6CHV2 .RESTAB.-JOLDPTR.Ílthi'FROMST

; ubico el dato de CORRIENTE RMS; convierto a un npf en el stnok; ubLao «1 dato dn ' CORRIENTE IÍMS; convierto a un npf en el atack

; cnrgo il ni »t»ck

; cargo il al atack

; obtengo I1A2

; resta dn los cuadrados

; SQT (I/%2-Tl'>2); cargo 11 al otack

; obtengo SQT (1" 2-11" 2) / 11

p,ur

p.ur

; convierta 100 a un npf en el staofc

; convierto 100 a, un npf en el stack

; ouv-lo rtipull;pdo ddfld« el nUacfc; A la posición TKDI

DEL FACTOR DE POTENCIA DE DESPLAZAMIENTO

*,ngi-Angvl'K / ndab M2H1!) ]

C

DPTR, PangiA, P DPTRCNV2

DPTR, «angvA, S DPTRCNV2

; cargo <I al stack

; aargo <v al stack

; <I - < V —> STACK

Systems 8051 Family Aseembler, Versión 3.02 Pago 51

LCALLMOVLCALLMOVMOVXMOVMOVXMOVLCALLLCALL

MOVLCA1.LLCALLMOVLCALLLCALLMOVLCALbLCALLLCALLLCALLLCALL

MOV- .LCALL

MOVLCALLMOVLCALLLCALLLCALLMOVMOVX

RESTDPTR,flfpdFROMSTDPTR, íffpsA, 9 DPTRDPTR,tfanQV6 DPTR, ADPTR,«fpdTOSTABSOL

A,»67HCNV2SUMAA, ti ndatCMV2DivrA,í<02CMV2MULTPI2MULTeos

DPTR, #£pdFROMST

DPTR, íffpdTOSTA, #255CNV2MULTTOHEXDPTRjanfd6 DPTR, A

02-20-98

obtengo la diferencia en ánguloubico •?! resultadoan el espacio de memoria

almaceno el signo an ANGV

ubico el resultadon ni fltaaksaco el valor a_bsolul:o

sumo una ote.

resultado * 2

e nvi o PT al ota ckresultado *. PIobtengo el COSENO del ángulo

ubico el renulUsdoen el espacio de memoriacorrespondiente (fpd)

transfiero ii resultado.-vi otnok (fpct)

escalar el valor de JTp

eianviñcto á hexadociraalguardo el dato HEX.

FIN DE LA SUBRUTINA: CALCULO2

I

2BF6 22

Tho Cybernebic

FPDl !

RET

SUBRUTINAS

Micro Sysbema 0051 Family Assemblor, Versión 3.02 Pago 5202-20-90

INICIALI7.AR LOS PUNTEROS

iniaializo los valores de los datos con retardo de tiempo

2BF7 7400211F9 122DE62EIFC 9000DO2BFF 122DBA2C02 !>OODDQ2COÜ 122DDO2COB 900BD62COB 122D11A2COE 000BD62C11 122DDO2C14 QOOUÜC2C17 122DBA

2C1A yÜOISDC2C1D L22DDQ2C20 900BEO2C23 I22DHA2C2C 900BEB2C29 1220002C2C 900BEK2C2F 122DBA

2C32 9000EE2C35 122DDO2C30 900BF42C3B 1.22DBA.2C3E 22

PHTR: t-TOV A,#0LCALL O/V2MOV [JPTR, #:<DOLCALL FROMSTMOV DPTR, tfXDOLCALL TOSTMOV DPTR,ífXDlLCALL FROMSTMOV .DPTR,f:íDl ;LCALL TOSTMOV DPTR,Í(XD2LCALL FROMST

MOV UPTR, KXD2LCALL TOSTMOV DPTHíffYDOT-C^v-LL FROMSTMOV nPTR^YDO.LCALL TOSTMOV DPTR,#YD1LCALL FROMST

MOV DPTH, ÍYDl ;LCALL TOSTMOV OPTR, fíYD2LCALL FROMST

RET

convierto 0 a un npf en ctl sback

ubico «1 0 <sn XDO

ubico el 0 en sbaak

ubico el 0 en XD1

ubico el 0 .en sbacJc

ubiao oí 0 en XD2

ubico- el 0 en ¿baak.

Ubiao el 0 en YDO

ubiao «1 0 en ratncfc

ubica oí 0 en YD1

ubiao el 0 en «tack

ubioa el 0 en YD2

; aubcutina par» doaplasinr loa dnton dol filtro y obtener uno nuevo

2C3F 900DD62C42 13213002C-15 9000DC2C4Ü 1Z2DBA

2C4H 900IJDO2C4E 122DDO2C5.1. 900UDG2C54 122DBA

2C57 900BDO2C5A 122DBA2C5D 22

The Cybarnratic

2C5E 9UOÜEE2C63 Ü22DIJO2CG4 900ÜF42C67 122DBA

2CÍÍA ÍÍOOBBE t

2C6D 122DBA

XD2 <~ XD1 : XD1 <- XDOYD2 <- YD1 : YD1 <- YDO

SFT1:

MOV DPTR,ffXDlLCALL TOSTMOV DPTR,»IXD2LCALL FROMST

MOV DPTR,fXDO /LCALL TOSTMOV DPTK, HXD1LCALL FROMST

MOV DPTR,#XDO ;LCALL FROMST

RET

Miaro Syubems 8051 Family Aseembler

SFT2:

MOV DPTR.tfYDlLCALL TOSTMOV DP'l'n., YD2 ;LCALL FROÍ-1ST

MOV DI.JTR, KYDlLCALL FROMST

; XDO <- Xi

envió XD1 al stnck.

envió XD1 * XD2

envió XDO al sb«ak

envió XDO a XD1

envió dato a XDO desde el st.ick

, Versión 3.02 .Paqe 5302-2Q-9H

envió YD1 al sb^ck

«nvio YD1 a YD2

envió dabo a YD1 desda el staok

I ZC712C712C772C7A2C7D2C802C032CS6

¡JOOBDO122DDOÍÍOOBDC122DDO122CCO900B9A1.22DDO122CD3

2CD9 900BD62COC 122DDO2CQF !»OOBAO2C92 122DDI)2C95 122CD32C90 122CC9

2C9B 900BBU2C9F, 122DDO2CA1 122CDO

2CA4 900BEE2CA7 122DDO2 CAÁ 000BAC2CAD 122DDO2CBO 122CD32CB3 122CC9

2CS62C092C0C2CBF2CC22 CCS

[ÍOOBF4122DDOOOOBB2122DDO122CD3122CC9

2CC8 22

tarutina qiio ufeotua 1.» funoion d« Üi7anfjfej:*ínaia, del filtro

YDO = [ AO*(XDO^XD2)+ Al'XDl ] / KK + B1*YD1 + B2*YD2

envió dato XDO al ntack

envió dato XD2 al abaak.

envía AO al sback

envió dato XD1 al sback

envió Al al stacJc

; envió KK al aback

envió dato VD1 al sback

envió fll al aback

envió dato YD2 al aback

onvio B2 A! «sbaak

MOVLCALLMOVLCALLLOALLMOVLCALLLCALL

MOVLCALLMOVLCALLLCALLLCALL

MOVLCALLLCALL

DPTR,fOíDOTOST •Drm,»XD2TOSTSI.TMA

Dt*TR,#AOTOSTMULT

DVTRfffXDlTOSTDPTH, (1 AlTOSTMULTSUMA

Dl'TR, HKKTOSTDI-VI

• LCALLLCALLLCALL

MOVLCALLMOVLCALLLCALLLCALL

MOV DPTR, fJYDlLC/iLL TOSTMOV DPTR^íBl

TOSTMULTSUMA

DPTH,ÍIYD2TOSTDPTR,»B2TOSTMUT.TSU14A.

Tho Cybornetia Micro Syufcem» 8051 Family Aasombler, Ve^aion 3.02

FORMA DE LJJvMAR A SUBRUTINAS BASIC DESDE LENGUAJE ENSAMBLADOR

NOTAS:

HBO,1,2 (BANCOS DE REGISTROS), Ufados por «il RASICRB3 rotjiflbro de usuaria , DBY(24(1BHJ->31(1FH))=0->255

para noí etiol.onwrlo!ORL PíJW.I'OOOllOOOB : PSW3,PSW4 = 1ORL P3Vf,lt lOH

32(20H) ,33 (21H) localidadon inbeirnas, sa direocionan: BIT o BITEpor el usuario

RBO registro di* trabajo, para fM eccionarlo:ANL PSW,M110QÍ11B : PSHSíPSH'l - 'OANL PSW,HE71Ia* dtbt »«l«»ociona.r antes d<» llamar a. una, rutina BASIC

ARG. STACK esta localizado «n la memoria oxtecna on latí localidades12DH hasba 11TKH, el. ul.biino niunoco nn el STACK, so almacenaon la ponioion 1FEH haeba 6 localidades abras.

ARCJ. SP eoba localizado en la posición 9H do la memoria int'irna,aeasume que el pcimer dígito de la dirección es 1 (1XXH)

SUHRUTTNAS QUE EFECTÚAN OPERACIONESCON NÚMEROS EN PUNTO FLOTANTE EN EL STACK

se d«b« aíiecfiirar el trabajo con el banao O (RIJO) , durant" e l llamadoa una aübrubina, y- el trabajo con el banco 3 de rngiofcroo (RB3) ,durante *1 desarrollo del programa en lenguaje ensamblador.

o, a

pu

u u

uu

u

Di

in

cv

£4 O

O

O

• 5«

H-'-U C

C

£ 1

0

3

H .

3 n

C

M9-

(t

C.

D,

e- ü

f JJ

T3

ffl•H >

•— l

•a -a

0

, A

Eií

t

•H

ü

^J (t r-

•H i>

O

s c ¿

r-i H

O

C

-•o

CH

0

Oc

Atu

o 1

C

E —

Eo

r-1 =

Ai-

C

oC

H

C

O•0

-P c

0 3

M C

U

¿1

CC

tt1

oo

u u

-t É

> c

n

C H

•O (i •a

o -U

Q3

M

r-l

0

c i

0u

EO

-rt

n; r-i

r>

3

< 5

H 5

E o

t-i O

Cil

C W

Dp p

uu

tiC

V tN

CM

n \

ftt~

D p

ou

du

N

CM

tN

D <

UD

Q P

uti

uÍV

tN

tN

Q t

i H

p p

uG

üu

IN Í

N t

N

U U

UU

U U

r- o

í u)

ia M

uD

Ou

CV

CN

' O

J

[u t

u

Ui

th I

&!

Eli

u u

u

u u

uCV

tN

O

J O

J O

J W

u H 0) 3 2 H K < 1 3

•H

Mtu

tn

e

o

c re

o"3

CT

J•r

H

o -

u fi

3O

U

0

D J

2 0

C

3

Cit

B

niH

H H

ft

fi0

o .y

o•-

i 3

-H

•9 °-

S5

-r-

i 5

D

e 0

a

xP

- C

D0

H

*: *

t/1

O U

)C

i n D

J

tj

E 5

2

tí o

r- o

03

O P

l r-í

oo

oC

o D

n N

n

a W

Htu

tu O

uu

a

IO

OJ

m o

¡ i oft

Nen i

re

CNO

í 0

N O n c o -i e a . u r-t i ^ i i» r-t

O ID e >i

o tj a is 0 iJ c u J3 U C

m r

e Q

K

EC

ZG

t-i H *

H

O O

»; ü

-

04 U

U••

V

Q O

O

-

r- o

ai

o n

Ho

oo

QO

Qn

cv

nl/

ír-i

rr

OO

O

O

— {

rD

DQ

W

N

CV

N C

M O

) tS

J

I

SUBKUTINAÍJ QUE EFECTÚAN OPERACIONESDE TRANSFERENCIA CON EL PÓRTICO 3ERJAL

CRLF:2D1C 7407 MOV A, I07H ; trannmit»! haoi» la aonpola2D1E 91FB ACALL ROOT ; o puerto norial una secuencia CR-LF2D20 22 RET

; transmito el contenido dal acumulador hacia el puocto aerial

CHSR:2D21 53DQE7 ANL • PSV, ftlllOOlllB ; trabajo oon «si banco O de registros2D24 FD MOV -R5,A ; trannfiíro «1 contenido del aaa. a R52D2S 7400 htOV A, J80U ; trannmibfl hacia el puerbo aerial2D27 91FB ACALL ROOT ; el carácter en R5.2D29 22 • " RET - • •

; transmito el contenido del STACK hacia el puerto serial

TO5R;2D2A 7490 MQV A, M90H ; tranflinite hacia «si puerto serial2D2C 91FB ACALL ROOT ; oí NPÍ1 «Imacenado «n el STACK2D2E 22 RET

'• ACTUALIZACIÓN DE DISPLAY DE ACUERDO A LA TECLA PRESIONADA; LUEGO DE LA REVISIÓN DEL TECLADO

The Cybornebic Miaro Systema 0051 Family Asaembleí;, Versión 3.02 P*ge 5702-20-9B

2D2F 901B022D32 ÉO2D33

2D35 1227D132D3U 12'.Í7DB

2D3E 1227DO2041 1227I3D2D44 1227DD

2D47 B40024

7.D4A 9010022D4D EO2D4E 5440 .

2D50 1227D02D53 12270D2D56 1227DB2D59 1227002Ü5C 1227DB2DSF 1227DB

2D62 B44QE5

2D65 1227802D68 1227DB2DGB DOEO2D6D 22

2DGE 9018022D71 EO2D72 5480

2D74 1227D1J2D77 1227D132D7A 1227DB2D7D 1227DB2DIJG 1227DB2DB3 1227DB

2DÜ6 B400A6

MOVMOVXANL

LCALLLCALLLCALLLCALLLCALLLCALL

MOVMOVXANL

LCAI.LLCALLLCALLLCALLLCALLLCALL

CJKE

LCALLLCALLPOPRET .

LCALLLCALLLCALLLCALLLCALLLCALL

CJNE

DPTR,#DRPCA,0DPTRA, tfup

RETARDORETARI30RETARDORETAHDQRETARDORETARDO

UP pr««ionacía

CJNE A,#OOH,KYB2

DPTR, WDRPCA,SDPTRA, ííup

RETARDORETARDORETARDORETARDORETARDORETARDO

A,f(up,KBZl

PGUPRETARDOACC

DPTK,NDRPCA,PDPTRA, ff dwn

RETARDO •RETARDORETARDORETARDORETARDORETARDO

A, tfOOH,KTBl

tecla up sin presionar ?

avanzo 1 página

teala DOHN presionada ?

2D09 9018022DBC EO

MOVMOVX

ÜPTR, «I3RJPC

2D8D 5480 t«cla DCJWN sin presionar ?

2D0F 122VDB2D92 1227DI32D93 1227DB2D98 1227DB

Th« Cybttrnobio

aop» laa'/DB2D9E 1227DB

2DM B480E5

2DA4 1227UO2DAV 1227DB2DAA DOGO2DAC 22

2DAD S3DOE72DBO 7/1012.DU2 J200302DB5 E 9

2DBG 43D0182DB9 22

«DBA 7-lOfí2DBC 53DOE72DBF 25022DC1 FS)2DC2 7-1002DC4 35032DC6 Fu2DC7 71032DC9 1200302DCC 43D01BZDCF 22

2DDO 7405

Tha Cybornefcia

2DD2 53DOE72DD3 25B22DD7 FU2DDÍJ 7'100 'ZDDA 35032DDC FA2DDD 74022DDF 1200302I3E2 43D01B2DES 22

2DE6 53DOE72DK9 FU2DEA 7AOO2DEC 74 9A

LCAJ.L I^TAJUJOJ.CALL PETARDOL.CAL1. RETARDOLCALL RETARDO

Miaro Byaktima 0051 Fnmily Artnsmbl»!:, Vncaion 3.02 Pngn SO02-20-9B

LCM.L RETARDOLCALL RETARDO

CJWE A,ttdwn,KBZ2

LCALL PGOH / retrocado y páginaIX LL RETARDOPOP ACCRET

SUBRUTINAS DE THAHSFEREIJC3A Y CONVERSIÓNCON NÚMEROS EN PUNTO FLOTANTE

.

Donvoraion ;nuinero en punto flotante => hejcadeaimal en {R3:R1)

TOHEX:ANL PSW,fíOE7H ; b^nao 0 ti* r-ql^troi"^ ov A, ya?. ;. STACK npf => £R3:Ri)iiExLCALL 301-1, .MOV A,Rl ; ca,L'gar *»J. valor «n «1 acumulador

ORL PSW,tflHH ; banco 3 de reyistroaRET

; HROCI un numero on punto Clotnnto dal ntnak — > (R3 ;R1)

FROMST :htOV A, "05 almacena un NPF, el* 3. obaak a (R3¡R1)AWL PSH,ffOE7H banco 0 de cegÍPtroBADD A,DPL DPTR uontíonp la dirección R3:Rt, poroJ-1OV R1,A tiautslto uaryar la ultima poaiaionI-JOV A,fOH (R3:R1 4- 5)ADDC A, DPHMOV R3,AMOV A,* 03 STACK. -> (R3:R1)LCALL 3 OHORL PSW,#1BH banco 3 de regiatrosRET

; envía al STACK un numero en punto flotante deade (R2:RO)

TOST:MOV A, #05 ; «nvia un NPF, al atack donde R2:RO

Micro Systems 8051 Family Assemblar, Versión 3.02 Page 5902-2Q~yt]

ANL PSVT, ÍOE7H ; banco 0 do registrosADD A, DPI,MOV RO,AMOV A,#0»ADDC A, DPHMOV ' R2,AMOV A,»02 ; (R2:RO) => STACKLCALL 30 HORL PSW,?UBH ; banco 3 de registrosRET

conviirtfi un numero hexadacimal de 8 bits , contenido en A,a un numero «n punto flotante «n *>1 STACK

CHV2: ; f hexadecimal dn 8 bits => HPFANL PSW,/ÍOE7H . ; banoo 0 do ragistirooMOV RO,A • ; A contiene el numero, se transfiereMOV R2 , H 0 - ; a ' R2 ! RO 'MOV A, H9AH ; (R2:RO)H -> (STACK) HPF

2DEE 1200302DF.L 43D0182DF4 22

2DFS 53DOE72DFB E5022DFA Fu2DFB E5D32DFD FA2DFF. 749A2BOO J200302E03 43D0182E06 22

2E07 900DE22EOA 53DOE72EOD A32EOE A32EOF EO2E10 FU2E11 7AOO2E13 749A

The Cybernetic

2S15 1200302E1B 43D018

2E1H fíOODBfi2E1E 122DDO2E21 122CD32E2.1 900SK22E27 53DOE72E2A EO2E2B PO2E2C A32E2D EO2E2E FA2E2F 74 9A2E31 1200302E34 43D0182E37 122CC9

2E3A 22

LCALL 30»ORh PSW,fllHHRET

aonvi-ri:*' un numero hnx rlnciíra un numero «n punto flotante

CHV4 :AHÍ, PSW,*OE7HMOV A.DPLMOV RO,AMOV A.DI'HMOV R2,AMOV A,«9AHUCALL 3 OHORL PSW,#18HRET

convierte un numero nnxadeaima un numero en '-punto flotante

CNV6 : ;MOV DP'm.ffsumlANL P.W, #OE7HIHC DPTR1HC DPTRMOVX A, fi DPTRMOV JtO,AMOV R2 , # 0MOV A, »9AH

banao 3 d« registros

¡»l do 16 bit.i , on DPTR,en «1 STACK

* hflxadecimn.l. do ü bits -> NPFbanpo 0 de CfiglotronDPTH,cont;ione el numera,ae transfiBCe a R2:RO

(R2¡RO)H => (STACK) HPF

banco 3 de rogiafcros

ai dg 24 bitfl, , aontenido en; sumí,en el STACK

H hexadecimal de 24 bits =*> HPF.

bancp'.O do registros

{R2:RO)H => (STACK) HPF

Micro Sysfceqis 8051 Family Assembler, Versión 3,02 Pag*" 60

LCALL 30HORL P3W, ÍÍ18H

MOV DP1TX, KK1KLCALL TOSTLCALL MULTMOV DPTR(í(numlAKL PSW,«OE7HMOVX A , fi DPTRMOV RO , AIHC DPTRMOVX A, «DPTRMOV R2,AMOV A, #9AHLCALL 3 OHORÍ, PSW,«1BHLCALL SUMA

RET

02-20-90

banao 3 de jrcyio tro o

posición del HPF - ate. - 16A"4 « 6S536d

ubico Jn posición inicial do aumlbanco 0 do rogiabrosDPTR apunta al numoco, se tra.nafierea R2:RO

(R2:RO)H => (STACK) HPF

banco 3 de registros

; aproxima con don dncimaloa un n.p.f., almacenado on el STACK

XNT t tn*10*100+5)/10 ] / 100

2F.3D 746-12E3D 122DE62E10 122CD32E43 740A2E-15 122DE62E4Q 122CD3

2E1U 74052E4D 122DEG2ESO 122CC9

2E53 740A2E.55 Í22DE62E5U 122CDQ2E5H 122CE22E5E 74642EGO 122DEG2E63 122CD02E66 22

ROUND:MOV A,/flOOLCALJJ CNV2LCALL HUÍ.TMOV A,noLCALL CHV2LCALL MULT

i-rov A, HOSLCALL CHV2LCALL SUMA

MOV A, fflOLCALL CHV2 ' '. LCAJ-L D1VJLCALL XHTMOV A, «100LCALL CUV?.LCALL ' D1VI 'RET

convierto 100 a un HPF en «1 STACK

multiplico por 100, el valor a redondear

multiplico por 10, oí valor a redondear

OBTENGO 5 en el STACK

lo gtimo al numero

convierto 10 a un HPF on el STACK

divido para 3.0saco la parte enL^rs. dol. numeroconvierto 100 a un HPF en el STACK

'divido 'para 100, o~L valor a redondeary gu*da en el STACK

; *** FIH DE LAS SUBRUTIMAS GENERALES *4 +

1

IThe Cybernetia Micro Systoms U051 Family Aaaembler, Versión 3.02

Í41+ SUBRUTINA PAJIA MOSTRAR LOS RESULTADOS ******-** Y ENVIAJÓOS Al. COMPUTADOR. *•***•

Esta miljrutina toma los repintados almacenados en las respectivasloaalidsdos de memoria, y Ion transfiere hacia el display, el puertoserial -y I* salida analógica.Todos Ion números se hallan almacienaclon en el formato de. puntodotante: 1 bí tos para loa dígitos, 1 bite para el signo y 1 bitepar* wl expon^ntn,

I,ao <iiLfsjrenb*íi3 paginas para los resultados, se transfieran desde ROM,a partir de la, localidad: tfddr2

000000000.11:1.11111231ÜIJVD9012.T15GV; JtlttfV X: H)f#AP! (KW) N N N H . H f3: (KVA)

Una ves bransfiridoa IOP d-itos hnaLa XA. pantalla, ae tcannfifjrín loamlsmura hnoif\! computador. LOP datos ne biranafiernn en el forma-to de punto flotante, separados por una ",".

A la salida analógica an transfloran Ion datos, dependisndo di laopaion encogida, d«»ndo I a.s diEorontow laoalidad<ae do momocia in lasque se hallan almacenados los resultados.

I.t.STADO HE COUSTWJTKS

I

thii EQU OFOCH

REGISTROS UTILIZADOS

; ultimo dato

numero O" oeron a la Izqulnrda de la uiCtr» unnumero H- onUiro.i d» ] nj.fr»; «i nn ti«n-í d-cnumnro dp oifr^fl'. «nt«ro» -!• decim«l*abnndrsrn: eegun el tipo de dato:nibbl« mao »iyni Titi» Uivo o> R3~0nJbble menon signiCioaUivo => R3=lpar de rogiatroo en los qiie att guarda el 0PTR

ETIQUETAS UTILIZADAS EN LA SUBRUTIHA

BQ51 f»mily A-n-mbl-r, V«r,«icm 3.02

002CUDBODOGO008100820083OOB4

coma EOUminú EOUoupO EOU-rpl EOUexp2 EQUexp3 EQU«xp4 EQU

aciiÜUOHQOH01H02HB3H84H

PROGRAMA PTUMCIPA1-

DATO DE VOLTAJE

2EGV 900EDO2EGA 122DDQ2EGD V40S3E6F 122DE62F.72 125CD32E75 7-1022E77 122DEG2E7A 122CDQ2E7D 122DAD2EBO 9QOB942E83 FO2EQ-1 SOOEDO2EQ7 122DDO

2EHA 900B7C2E8D 122DDO2E90 122CD32.E33 122CE22E9G SOOEDO2E99 122DBA

2E9C 900TIFD2F.'ÍF 74032EA1 FO2EA2 122 6Ü 3

2EA5 900ED5

The Cybernebia

2EAO CÜB22EAA 142EAI3 F5B22EAD BO2EAE 60782EQO FU2ED1 7 1832EB3 C32EH-1 9«2F.E15 10712EH7 FU2EDU V9FF2EBA VAOS2F,ac VBOO2EBE 122ECE

2EC1 SOOEDO2ECM C5822EC6 142EC7 F582

2EC9 122EEC2ECC OOSA

VD : MOV OPTP-, # vrnutLCALL TOSTI-KJV A, «5LC;O.L CNV2LCALL MU) .ThJOV A, 12LCALL QÍV2LCALL DIVTLCALL TOHEXMOV DPTR,i*anvMQVX !ÍDPTR,AMCfV DPTR,ÍVEmsLCALL TOST

MOV 13PTR,ftavLCAliL TOSTLCAbL MUr.TLCALL 1NTIHOV DPTK, ftvrm»LCALL FROMST

MOV npTR, HDDRAMMOV A , « U 3 HÍ-KJVX PDPTR,ALCALL MQVDDRAM

MOV DPTR, ífirms

; r«uup<>t:o «1 i:««ultado; tl«l QHpaaio dn memoriamultiplico por el factor

; dn ajuahe

• aonvierto a ]inx»deaimal• guardo el da ho UEX.

• r»oup«ro oí CfinUlUado; del ospacio da memoria

• multiplico por el fautor de fiscal»

• "ItnAcwno «1 resultadoen *íl nnpAaio dr m"inor.LA

• correspondíante (vrma)

•ubico eooritxira en la pooición 03H

de la RAM del display (DDRAM)

ubico el eacpon. del voltaje {bite 6)

Mioro Systems B051 Fainilv Aosambleír, Versión 3.02 Paae 63

XCI i A, DPLDEC AMOV DPL, AMOVX A.flDPTRJZ IDMOV RO,AMOV A, Kexp3CLR CSUBB A,ROJC TDMOV RO , AMOV IU,MOFFHMOV R 2 , » 3MOV IO , í) 0LCALL TDX1

MOV DPTR, ftvrmsXCII A, DPLDEC AMOV DPL, A

LCALL TDX2SJMP ID

02-20-98

A <- (*Tspon«nh«)si *>s o«?ro , aalto al siguiotnta dato

83 es el exponente d»? referencia

ubico en RO la d.ifortncia entre el

<j3tp. y el ftXp. d« r-Corencia ( f de cerón)el numero no ti<"n*> p?»rt:ís d«tiimalnvimero de cifran enhoraw: f l í í fbnndera: posición del dígito a Lndicacllamo a la «ubrutirta cju« «xiarib» a«ro« =.la izquierda

ubico el dato de voltaje (bite mas siynC.-l)

llíuno a la subrubinn que eoribe las cifras

oubiriítiníi para osariliir los awrotj a la Í7;qiiiocda rio unnumiro «n punto £.lofcante mostrado en formato BCD en la

2ECE KO2ECF 601 A2ED1 ímüBFF2ED1 7-1002EDG t'O?.F.I)V 12275F2EDA 102EDB 192EDC 1A2EDD F.92EDE 70 BE

2EBO 900BFE2F.E3 7-12C2EBS FO2EE6 J2272E2EKS OOE32EED 22

la pantalla

TDX1: MOV A,UOJS TX1MOV DPTR.ffÜIGITOhÍOV A , ff 0Í-1OVX HnPTR,ALCM.L PRIHTDIGDEC RODEC RlDEC R2MOV A,R1JKZ TDX1

MOV DPTR, «CARÁCTER. MOV A.Jfüoma

MOVX fj DPTR, ALCALL PRrHTCHARSJMP TDX1

TX1: RET

transfloro el N O ~> DISPLAY

,

.ii Rl=0 , «scri.bo ","si no es , regreso

(DDRAM) <- " ,"

; lubtutina, pata, onocibie loo digitoo dal un niimaeo orí p.vmto; flotante en la. pantalla

Tho CybBrnetio Micro Sysfcems 8051 Family Asaembler, Versión 3.02 Psge 6*102-20-90

?EEC KA2EE1) G03B2F.EF EB2EFO 70092EF2 A32EF3 EO2EF-1 C42EF5 54 OF2ET7 7B012EF9 8005

2EFB EO2EFC 510F2EFE 71300

2FOO AE032F02 ACÓ?.2F04 900BFF2F07 FO2FOC 122V5F2FOH Ü E Ü 32FOI5 HC822FOF 192 FIO IA2F11. E92FJL2 VODO2F14 AEB32F1G ACBZ2F1S SfJOBFE2F1B 712C2F1D FO

2F1E 1.22V2E2F21 OE832FZ3 OCD22F25 OOC52F27 22

2F28 900EDG2F21) 122DDO2F?E 7-1052F3Ü 122DEG2F33 172CD32F3G 74022F3Ü 122DE62F3B 122CDB

The Cybernetio

2F3E 122DAD2F-11. 900B95'AFÜA FO2F'¡5 ííOOEDG2F40 122DDO

2F1Ü 900DB22K/1F, 122DDO2FÜ1 1.2.2CD32FG-1 'JOOBOO2F57 122DDO2F5A 122CD32F.r)D 122CE22FGO 900EDG2F63 122DBA

2FG6 122667

2FG9 900BFD2FGC 74432FGE FO2F6F 122683

2F72 900EDC2F7S C3 822F7V 112F7B F5B22F7A EO2F7B G01C2F7D F82F7E 74EJ4

TDX2 : MOVJZMOVJlfZIHC1-tOVXSWAPANLMOVSJMP

NIB : MOVXAHLMOV

HIB2 : MOVMOVMOVMOVXLCALLMOVMOVDECDECMOV

•JNZMOVMOVMOVMOVMOVX

LCALLMOVMOVSJMI?

TX2 : RET

'

DATO DE

'

ID:1-KJVLCALLMOVLCALLLCALLMOVLCALLLCALL

A.R2TX2A,R3NIBDPTRA,6DPTRAA, *OFHR3, HlHIB2

A, (3 DPTRA, í fQFHR3,#0

Rfi^PUR4 , D PliDPTR.^DIGITOi? DPTR, APJUNTDIGDl'I!, RfíDPL/R4IUR2A(R1TIJX2RG,DPHM , DPljDPTR, íl CARÁCTERA , f G orna.S DPTR, A

WIT11TCIIARDPH, RfiDPL, R4TDX2

CORRIENTE

DPTR, ttirmsTOSTA , K 5CNV2MU1.TA.fZQÍV2DZVI

; si R2=0 , termina «1 proceso

; si R3"=Q , nible mas significativo

; signÍRiite bite; trivnafioro ni dato al aoumulndoc

; obtengo el dígito a transferir; cambio la bandera R3 a 1

; transfiero el dato al acumulador; obtengo al dígito 9 transferir; cambio la bandnr* R3 a 0

7 almaceno direacion RAM dol bita del resultado; en RG:R-1

; tranafiero el valor RAM -> DISPLAV; recupero dirección RAM del bite del resultado

; si Rl=*0 , ««aribe ","

; almaceno dirección RAM del bite del resultado; nn R6:R4

; (DDRAM) <- "/'

; recupero direacion RAM del bifce del resultado

reaupero el resultadodol aspado da memoriamultiplico por el faotorde ajusto

Hiero Systems 8051 Family Assembler, Versión 3 . D2 Paga 65

LCALLMOVMOVXMOVLCALL

MOVLCALt,LCALLMOVLCALLLCALLLCALLMOVLCALL

*"

LCALL

MOVMOVMOVXLCALL

MOVXCHDECMOVMOVXJZMOVMOV

TOIIEXDPTJX, f f an if? DPTR, ADPTR, |i*irmsTOST

DPTR, f selTOSTMUI.TDPTR, ífscZTOSTMIJLTTílTDPTR.ÍÍirmnFROMST

DISP2

DPTR, It DDRAMA,*43tt0 DPTR, AMOVDDRAM

DPTR.I^vlA, DPLADPL, AA,8DPTRPDRO,AAíífaicpl

02-20-9B

; convierto a hijeado aimal; guardo el dato HEX.

; rrüupniro «1 resultado; d«l espacio do memoria

; milltiplico por el factor de eooala 1

; multiplico por el factor de escala 2.

; alnuiaeno el resultado; en el, espacio de memoria; correspondiente (Irma)

; avanzo 1 'página

;ubiao coorituva «n la. paniaíón J3H

;de la RAM del display (DDRAM)

; ubico ni oxpon. de la. corriente (bite G)

; A <- (oxponente)/ si es cero , aalto al siguiente dato

; 84 e o oí exponan t« do riCeronaia

I

2FUO C3?FÜI y u2F02 40152F04 Fu2F05 79FF2FQ7 7A042FQ9 7BOO2FBB 122ECE

2FOK 900ED62FB1 CÜB22F93 342F94 FSB2

2F9G 122EZC

CLRSUBBJCMOVMOVMOVMOVLCALL

MOVXCHDECMOV

LCALL,

DATO DE

CA , RO

RO,ARj, HOFFHR2,íf4R3,*0TDX1 /

-"

DPTR , # irmeA,DPLADPL,A

TDX2 ;

POTENCIA ACTIVA

ubico en RO la diferencia entrt»

exp. y el ej>,p. de re f <j renoi a (tiel numero no tiene parV.e dccí.manumero d« cifras entoras: fllSCbandera: posición del digíto a

«1

de ceros)1

indicarllamo a la oubrutina que escribe ceros ala izquierda

ubico el dato dn corriente(bit* man «igní.-l)

llamo a la sutoiruelna que ecrib* laa citiras

Th« Cybecnetic Micro Systems QOSl Family Assemblcr, Veraion 3.02 Page 6602-20-9B

2F99 900EEÍJ PD:2F9C 122DDO2F9F */'1242JFVU 122DE62FA-1 122CDÜ2FAV 122CX72FAA 122I3A132FAD 900B962FBO FO

2 FBI. POOEEB2FU'l .1220002FUV 900BB2?.FBA laaDDO2FBD 152CD32FCO 900B082FC3 122DDO2FC6 322CD32FC9 9C10B7C2PCC 17.2DDO2FCF 122CD3

2ITD2 71G-12FD1 122DE62FU7 122CDB2 FDA 7 40 A2FUC 122IJE62FDF 122CDB

MOVLCALLMOVLCALLLCALLLCAliLCALLMOVMOVX

MOVLCAhL140VLCA.UULCALLMOVLCALL.LCALLMOVLCAU,LCALL

MOVLCAJ.LLCALLMOVLCALLLCALL

DPTR,ípoTOSTA , H 0 2 1 HCIIV2DTVIADSOLTOIIEXrJPTR,f)anp0DPTR,A

DPTR, UpoTOSTDPTR,ífaalTOSTMULTDPTR,ífsc2TOST1-IULTDyTR,HsvTOSTMULT

A, N100ar/2D1VTA, «10CNV2DIVI

900BFD2FFV 74-102FF9 FO2FFA 1726B32FFD 900BFE3000 742B3002 FO3003 12272E

; j'eciujieco «1 rpsiilbado; del espacio de memoria

; convierto a h^Jíarlec; guardo «1 dato HEX.

; del espacio de memoiria

; muj.tiplico pur el factor de encala 1

; multiplico par el" factor de ".ocala 2

; multiplico por el factor de escala volt.

; convierto 100 a un HPF en el STACK

; divido por- 100, al Valor

; divido por 10, el valor

multiplico por ei factor SQR.T(3), ai se trata de un sistematrifásico balanceado, para olio leo el puntero del numero de fasen

; oantiono «1 dato d« aounrdo al; tipo de sistama

2FK2 900B772FK5 EO2FE6 B4210B

PPJS9 '/,1032FED 122DEG2FEE 122CEC2t-Fl 122 CD3

MOVMOV>:C01-1E

MOVLCALLLCALLLCALL

DPTR, «phA,IJDPTRA,#21H,MFP

A . . H 3CI4V2SQTMULT

; multiplico por SQT (3)

," escribir el oigno de la potencia activa

MFP:DPTR.íDDRAMA, SlüH?DVTR,A ;ubico oncritura en la posición 48HMO^/DDRAM ;dn la. RAM del divplay (DDRAM)DPTR, ftCARACTER

; transfiero el signo ' + * -> DISPLAY

MOVMOVMOVXLCALLMOVMOV'MOV.< 0 DPTR, ALCALL PRINTC1IAH

3006 900EEB DPTR,ífpo ; almaceno el resultado

The Cybernetic Micro Syütema 8051 Family Asnemblec-, Versión 3.02 Pago G702-20-99

3009 122DBA

300C 900BEE300F CS823011 14

LCALL FRO1-1ST

MOVXCHDEC

; eri el espacio üe memoria; ooircwopondionto ' (po)

; ubico el signo, del dato (bite S)

3012 143013 F5823015 KO3016 6032

3018 74003 OÍA FO301B ¡JOOEEB301E 122DDO3021 122E3S3024 900EE03027 122DBA

302A 900EEE302D CS 82302F 113030 143031 F5023033 7-1013035 FO

3036 9008F03039 7140303B FO303C .122603303F 9UOBFE3012 742D3041 FO3045 12272E

3010 POOF

3CÍ4A -pOOSEfl PPO:304D 122DDO3050 122E3B3053 900EEB3056 122DBA

3059 900BFD PPU:305C 7149305E FO305F 1226B3

30«2 90QEEE3065 CS8230 67 143060 F5Q2

The Cybernetic Micro

30GA EO306H 60193060 FO30fi£ V4043070 903071 FO3072 79043074 7A063076 7EOO307B 122ECE

307D 900EE6307£ C5B23000 l'l3001 F502

3083 122EEC

DECMOVMOVXJZ

MOVMOVXMOVLCALLLCALLMOVLCALL

MOVXCHDECDECMOVMOVMOVX

MOVMOVMOVXLCALLMOVMOVMOVXLCALL

SJMP

^ ovLCALL.UHALLt-JOVLCALL

MOVMOVMOV;<LCALL

MOVXCHDECMOV

ADPI^AA,9DPTRPPO

A,*0HIJPTR.ADPTR, #poTOSTROUÍJDDPTR, UpoFROMST

DPTR.lt aA,DPLAADPL,AA, «01eop'm/AD.PTR, ÍÍDDRAMA,í(4t)HHDPTR.AMCfVDDRAMDPTR,#CARACTERA,#'-'BDPTR,APRINTCHAR

PPU' •DPTR,#poTOSTROUMDDPTR, ífpoFROMST

0PTR,#DDRAWA , H -1 9H9 DPTR, AMOVDDRAM

DPTR, #oA,DPLADPL/A

A <~ (CEÍiO : H-)ai «B o«!iro , salto

a*mbio d« aigno

r-íoupero R! r«?*ultad0cl«l espacio d* mamoria

a 3 macano el resultadoen el ««pació de memoria.aorroapondií-nte • (pa)ubico el signo, del dabo (bita 5)

; A <- (UNO : -; c*mbio dw nigno

;ubioo oooritiicíi rn la poininión 40H;de la RAM del display (DDRAM)

; transfiero el signo '-' " -> DISPLAY

; recupero 'oí resultado; clíij. espacio da memoria,* .redondeo a. In segunda, oifra; ^Imatieno »1 reíiultado; en el «spncio de memoria; correspondiente (a)

/ubico enori hura -5n 1 pasiaión 49H;de la RAM df-1 displny {DDRAMJ

; ubico «1 expon, del d«to (bita 6)

Systems 8051 Family Aascmbler, Versión 3,02 Payo 60

MOVXJSMOVMOVSUI3BMOVMOVfOVJ40VLCALL

MOVXCHDECMOV

JLCALL

A,0DPTRSDRO,AA, H*xp4A,RORD,ARJ.,14R2,ff6H3,ffOTDX1

DP17Í , ífpoA,DPLADPL,A

TDX2

02-20-90

A <- (exponont»)si eo cera , salto «1 siguiente dato

04 as f¡l exponento de referenciaxibiao en RO la diferunaia antrR elexp. Y el «-Xp- de cefer^naia (tt de oerosjnumero de aiErAs enteran: íf#í#al numero ti^no 2 deniínaleabandera.: posición del dígito a indiaarllama a la subrutina que escribe ceros a.la inqui«rda,

ubico «1 dato de potencia activa(bit* m*a aignf.-l)

llamo a la nubrutina tjue «Bdr-ibe la a oifirne

POTENCJA REACTIVA

308G JÍOOBEE SD:3009 122DDO300C 7424300E 122DE63091 122CD03091 1.22DAD3097 PQOB97309A FO - - .309B 900EEE309E 122DDO

30A1 POOBÍ3230A4 122DDO30A7 122CD3

MOVLCALLMOVLCALLLCALL1.CALLMOVfov:<:MOVLCALL

MOVt-CALLLCALL

DPTR, ItaTOSTA,fl24HCNV2DTVITOI1EXDPTR.SKnsSDPTR,A' 'DPTR,#sTOST

DPTR,#í)clTOST • ;MULT

recupuro el resultadodel espacia de memoria

convierto a • hexadaoimal - "guardo al' dato HEX.

recupero ni i'esuJtadodel espacio de memoria

multiplico por el factor de escala 1

3UAA, !)OOI3UO30AD 122DDQ30BO 122CD33 OBI 900B7C30B6 122DDO30B9 122CD3

30BC 7464300E 122DE630C.1. 122CDO30C4 74 OA30CG 122DEG30C9 122CD0

Til» Cybnirn*1 tio

MOV DeTK, #ao.ZLCALL TOiíTLCALL MIJI/FMOV PPTR, #»vLCALL TOSTLCALL MULT

MOV A, #1.00LCALL a IV?.LCALL DXVIMOV A, noLCALL CNV2LCALL DIVI

• multiplico por *L factor d« o«c»la 2

• multiplico por el .factor de escala volt.

• convierto 100 a un NPF en el STACK

• divido por 100, el valor

• divido por 10, el valor

Miara Syf t»ms 8051 Family Aisembler, Versión 3.02 Pag" 6902-20-98

; multiplico por el factor SQRT(3), si se trata de un sistema; trifásico balanceado, para ello leo el puntero del numero de fases

30CC 90007730CF EO30DO B1210B

30D3 740330D5 122DE630DG 122CEC30DB 122CD3

30DE 122E3B30E1. POOEEE30E1 122DDA

30F.7 900DFD30F.A 745130EC FO30ED 122GB3

30FO 900EF430F3 C58230F5 USOPfi F58230IT8 EO30F9 C01C3QFB FD30FC 748430 FE C330FF 9D3100 .101531 02 FU3103 79043105 7AOG3107 7UOO3109 122ECE

Z110C 900EEE310F CS02311 í H3112 FS82

3114 122EEC

Tlie Cyborne Uio

MOV DPTR,flphf-fOVX A,9DyTR ;CJNE A, H21H,MFS

MOV A , 8 3 .LCALL CNV2LCALL SQTLCALL MULT '

MFS i ' •LCALL ROUNDMOV DPTR,WsLCALL FROMST

MOV DPTK, «DDRAMMOV A.JFSIHMOVX 8DI>TJÍ,ALCALL MOVDDRAM

MOV DPTR, #fpXCH A,DPLDEC AMOV DPL,AMOVX A, @ DPTRJZ FPXMOV RO,AMOV A,feXp4CLR CSUBB A,ROJC FPXMOV RO , AMOV Rl,#4MOV R2,f6MOV R3,NOLCALL TDX1

MOV DPTR,*«XCH A,DP.LDEC AMOV DPL,A

LCALL TDX2

'

contiene *Q dato de acuerdo altipo de sistema

multipliao .por SQT (3)

• cndoncleo a' la secnJnda cifra• almaceno •> L resultado• 111 el flspaoio de meinorl*

ubico o/<nrj tura en la pn«<.iof.ón 51Hde la RAM del display (DDRAM)

ubico el e^pon. del dato (bite 6)

A <- (exponento)si QS cero , salto a.l siguiente dato

84 es el exponente de referencia

ubico en RO la diferencia entre el

exp. y el e*p. de referencia (d de aeros)numero de aiC.rs.fl enteras: fíWel numero tiene 2 decimalesbandera: posición d«l dígito a indicarliamo a la aubrutina que escribe coroa ala izquierda

ubi ¿jo *1 dato de potencia, activa(blte nías «ignC.-l)

llamo a la aubmtina que aoribe lao cifras

Micro Systems 8051 Farnily Assemblec1, Versión 3.02 Pago 70.. .. 02-20-98

DATO DEL FACTOR DE POTENCIA

3117 12264B

311A 900EF4311D 122DDO3120 122C3B3123 122CE7312 G 900EF13129 122DBA

'

FPX: LCALL DISP1

MOV DPTR,í(fpLCALL TOíiT.LCALL ROUNDLCALL ADSOLMOV DPTR,CrpLCALL FROMST

reoupnro pl ronultadodol onpnoio tle memoriaredondeo a la segunda cifra.valur abaolutoalmaceno el resultadoen el Despacio de memoriacorrespondiente (fp)

312C 900BFU DPTR,«DDRAM

T

312 F 741C31.31 FO3132 1226B3

3135 9ÜOEFA3130 C5 8 3313A 14313B F582313D EO313E fiOlC31-10 FU310 J, 74813103 C33111 9(13145 001531.47 FB3100 7«01.3 14 A 7A03314C 700031 4 E 122ECE

3151 90QEF43151 C5H23156 113157 FS82

3159 122EEC

MOVMOVXLCALL

MOVXCHDECMOVI-fOVX

JZMOVMOVCLRSUBBJCMOVMOVMOVMOVLCALL

MOVXCHDECMOV

LCALL

DATO

PXD:

A,*1CHfiOPTR,AMOVDDRAM

pPTR,«fpdA,DPLADPL,AA.0DPTRFPXOHO,AA, ffexplcA , Rq -.FPXDRÍ),A.-m.,f JHR2,ff3R3,tfOTDX1

DPTR,)tfpA,DPLADPL,A

TDX2

ubiao «ROtr.i fciir»» en la posición 1CHde la RAM dal display (DDRAM)

; ubiao el expon., del dallo (bits 6)

A <- (í'Xpon'íntn)oí aa onro , aalfctj al siguientn da.bo

Bl fla el ejtpononte de r «foca nal»

ubico en RO la. diferancia entra al•exp. y, .el' exp,. de, referencia ( f( do aeroa)numwifo. .ti" cifras" enteras: 0numero de cifras a transferirbandera; pooicion del dígito A indicarllairiQ a la aufarutina que escriba coroe ala izquierda

ubico el dato de factor de potencia(bite irme siojif.-l)

llamo a la subrutina que escribe las ci£ras

DEL FACTOR DE POTENCIA DE DESPLAZAMIENTO

INICIALIZO EL SIGNO

315C 900BFD315F 7-15B

Tha Cybornefcic

3161 FO31Q2 1226(1331G5 9QOBFE31fiO 712B316A FO316B 122V2E

31 GE 900B7A3J71 EO3172 6012

3174 9QOJ3FD3177 745B317P FO317A 3226B33.L7D 900BFE3100 702D3102 FO3103 12272E

3J.UG SOÜEFA3109 -INSUDO31UG 122F.3B31.ÜF 90QEFA3192 122DBA

3195 900B7A319B KO3199 900EFE319C FO

31. PD lS2t>S'l31AO yOOBFD31A3 7 4 SC3J.A5 FO31A6 122683

31A9 900FOO3JLAC C5Ü231AE 700231BO 1D033102 1131J33 C5 8 23185 EO31B6 601C

MOVMOV

Mioro Syatema

MOVXLCALLMOVI OVMOVXLCALL

MOVMOVXJZ

MOVMOVMOVXLX ALLMOVMOVMOVXLCALL

FPO:

I-JOVLCALLLCALLMOVLCALL

MOVí-fOVX..MOVMOVX

LCALLMOVMOVMOVXLCALL

MOVXCHJHZDEC

DECDP: DF-CXCHMOVXJZ

DPTR, WDDRAMA.ITSBH

8051 Family Asa emblec, Versión 3,02 Paga 71

0DPTR,AMOVDDIÍAMDPTR, # CARÁCTERA,íf + 'SDPTR,APRIMTCHAR

DPTR,fí.ngvA, 8 DPTRFPO " '

DPTR, ÍDDRAMA, IfSBHu DPTR, AMOVDD1ÍAMDPTK, íí CARÁCTERA/lf1-'fíDPTR.A

, PRINTCHAR

DPTK,fffpdTOSTROUNDDPTR, IfpdFROMST

,DPTR, NangvA, 6 DPTRDVrn.,*£pme DPTR, A

DISP2DPTK, HDDRAMA, HSCHe DPTR, AMOVDDRAM

DPTR, ífchvA,DPC,DECDPDPHAA,DPLA, 9 DPTRTHVX

02-20-98

ubico escritura en la posición 5BHde la RAM del diaplay (DDRAM)

transfiero el signo '+' -> DISPLAY

ubico el aigno. del datoA <- (CERO : +)ai «a cero , salto

uiiiao aoatitur-a «>n la ponioión 5BHde la RAM del display (DDRAM)

transfiero el signo ' -' -> DISPLAY

recupero *vl resultadott*»l .esp^pf.o ,d*t memoria . . . . .irndondno a, la oegunda aiftnalmaceno el resultadaen el nspacio de memoriaoorreapondienbo. (fpd)

recupero el signo deade ANGV

ubico escritura en la posición 5CHde la RAM del diaplay (DDRAM)

ubiao el «xpon. del dato (bite 6)

A <- (exponenhe)ai es cero , salto al siguiente dato

31G8 Ftl31139 718131BB C33ÍL-BC í' 831BD d01531BF Fíl31CO 7901

Th« Cybwenatia

31C2 VA0331C1 7BOO31C6 122ECE

31C9 900EFA31CC C50233.CE 143.LCF F5 02

31D1 122EEC

MOV RO,AMOV A,ffflxplCLR CSUBB A,ROac THVXMOV RD,AMOV R1,#1H

; 81 es el expone nbfl de re Carencia

; ubioo en RO la diferencia entre el

• *xp, y pl «íxp. de refBirí>ncJ.» ( # de cecoa); numero d» aifraa entera» í 1

Miaco Sy»t«m« B051 FAinily Aaaeinblar:, Vwrsion 3.02 P»g«* 72

MOV R2,«3MOV R3,flOLCALL TDX1

MOV DPTn,#fpdXCH A,DPLDEC AMOV DPL,A

LCALL TDX2

'

02-20-98

' «•! numero dp uifjraf• bandera: poniaion dol dígito a indiciar• Hamo a la nubrtiüina que anaribe oeros a• la izquierda

• ub.lco el dato do factor do potenaia deap.' (bito maa signC.— 1)

• llamo a la aubeuüina que eaaribe las aifraa

; DATO DE DISTORSIÓN ARMÓNICA TOTAL DE VOLTAJE

31D1 9000FD31D7 746431D9 FO3IDA 122683

310D 900F0631EO C50231E2 1131E3 FSB 231ES EO31EG 602031EQ FU31E9 7'1Í)231KU C331EC 9831KD 401931BF FD31FO 79FF31F2 VA0231F4 700031F6 122ECE

31F9 900FQO3TFC C5Ü23.1 FE 70023200 1SÜ33202 113203 C5Ü2

3205 122EEC

The Cyber nntia

'

THVX: MOV DPTH, JfDDRAMMOV A,*(i-lH>MOVX BDCTR,ALCALL MOVDDRAM

MOV DPTK,J(t}iiXCH A,DPLDEC AMOV DPL,At-iOVX .A,(!DPTRJZ THIXMOV RO,AMOV A,#oxp2CLR CSUBB A,ROJC THIXMOV RO,AMOV Kl , í OFFHMOV R2 , N 7.MOV R3 , ft 0LCALL TDX1

MOV DPTR, K thvXCH A,DPLJHS DECDDEC DPH

DECD: DEC AXCH A,DPL

LCALL TDX2

'

' • • > , 'ubico sflcritura en la posición 64Hde la RAM d«l diaplay (DDRAM)

ubico el axpon. del dato (bita 6) , .

A <- (exponento)si es cero , osito al aiguisntn dato

82 es el «oponente de referencia

ubico en RO la diferencia entre el

*xp. y el exp. de [-"BCeire.na.ia (ff de cero»)m un* ro d«> aifran ontorae: HHel riurneco de cifraBb-indeca: poc>.iaion d«?l dígito * indicarllamo a 4.a subrutina q%i« escribe cerón ala izquierda

ubico el dato de potencia acbiva.

(bifce man «ignf.— 1)

llamo a la aubrubina . que escribe las aifras

Miara Systems 8051 Fwnily Assemblwr, Versión 3.02 P^g* 73 "02-20-98

DATO DE DISTORSIÓN ARMÓNICA TOTAL DE CORRIENTE

3200 1226-1B32 OB POOBFD320E 742<13210 FO3211 122GB3

321-1 900FQC3217 C5823219 14321A F5D2321C EO321D G01C321F FO3220 74823222 C33223 903221 40153226 F8

'

THIX! LCALL DISP1MOV DPTR.Í/DDRAMMOV'" A,|f21HMOVX SDPTR,A ;LCALL MOVDDRAM - ;

MOV DPTR, HfchiiXCH A,DPLOEC A'MOV DPL,AMOVX A, P DPTRJZ TXAÍÍMOV RO , AMOV A, fl fj;xp2CLR CSUBB A.ROJC TXANMOV RO,A ;

,

ubico encritxira «n la posición 24Hde la RAM dol diaplay (DDRAM)

ubioo el oxpon . del dato (bite 6)

A <~ (o^onemtn)si es c«ro , salto al siguiente dato

82 es el exponento de referencia

ubico en RO la diferencia entre el

eirp . -y oí nxp. d« E-if^JTDnaia . t H di» Qt,Eoa)

r

i

i

3227 7»FF321*9 7AOK32 ?B 7BOO322D 122ECE

3230 90QF063233 cr»B23235 143236 F582

3238 122EEC

323B 90087832DE EO32-3F 900B943242 250?.32-14 F5B2324 G EO32-17 FO3248 0502

324A EO324B 901COO324E FO

"h* Cyb«rnetic

324F E03250 901AOO3253 FO

3254 900EDO3257 /¡I (ti3259 SOOBD6325C 5181325E 900EE032G] 51DJ3213 OOOKEE326(1 Bllll32(38 900EF432 SB 518132Í3D 900EFA3370 53013272 900FOO3275 51013277 900F06327A 5101327C 322D1C327F 800C

3201 1220003204 122D2A3287 74 2C3289 122D21

328C 22

MOV Rl,ffUFFH muñeco d" oifra.- enteras: HMOV R2,«2 oí numoRo no t.L«n- dooimal*-MOV K3.ÍO bandera: posición del dígito a indicarLCALL TDX1 U amo a la nubrubina cjua escribe oeros a

•la izquierda

MOV DPTR,*thi ubico «1 dnto do potencia activaXCH A,DPL (bite maa signf.-l)DEC AMOV DPL,A

LCALL TDX2 llamo * la oubrutina que «cribe la» cifra»

Subrutina para eaoribir los datos analógicos en el conversor

so Utilizo oí opbj t»- 01., POP ARGUMENT STACK ANIJ PUT VALUÉ IN R3:R1para obtener el valor nn «1 rango de 0 a 255 (FFH)

TXAH; . . . -MOV DPTR, flan, contiene ?1 dato da acuerdo alMOV/í A, «DPTR tipo de salida AnalógicaMOV DPTR,tlanv contiene el datoADD A,DPL ubico el grupo de dabasMOV DPL,AMOVX A,HDPTR- almaceno *1 primer datoMOV RO , AINC DPL ubico el segundo dato

MOVX A, (i DPTRMOV DPTR, ffPA2 envió el sogundo datoMOVX Q DPTR, A

Micro Systems 8051 Family Asaembler, Veroion 3.02 Pagí 7402-20-98

MOV A, ROMOV DPTR, #15 Al ; envió el primer datoMOVX SDPTR,A

; SALIDA ANALÓGICA - SALIDA SERIAL

SRTX:MOV UPTR,ffvrmH ; ubico el daboACALL SRTX2MOV DPTR,#irms ; ubico -1 datoACALL SRTX2MOV DPTR, ífpo ; ubico «1 datoACALL I3RTX2MOV ÜPTR,í(s ; ubico al datoACALL SRTX 2MOV DPTR,fffp ; ubico el datoACALL SRTX 2MOV DPTR,fffpd ; ubico oí datoACALL SRTX2MOV DPTR.tthv ; ubico oí daboACALL SRTX2MOV DPTR,ífthi ; Ubico el datoACALL Í3RTX2IJ^ALL CRLF ; transmibo un CR-LFSJMP TMP

; Subrutina para sacar loa datos a través del puerto aerial

SRTX2: LCALL TOST ; lo envió al staóJcLCALL TOSR ; transmito al pórtico Bcria.1MOV A, ícoma ; transmito una comaLCALL CHSR - . • '

RET

Subrrubinrx pacív -jóac-ibir loo dntan sn m-moi7Í« , -pótr bieropo

MP:

**** FJTI DE LA SUBRUTINA Í-K)£!TRAR i*ii

The Cybecmetla Miaro Syetsmn D051 Family Aaa^mblet, Vernion 3.O2 Payo 7502-20-98

320D 22 KET

FH1 DEL PROGRAÍ-ÍA PRINCIPAL

SUBRUTINAS

MENSAJE DE INICIALIZACION DEL DISPLAY

MENSAJE HACIA LA CONSOLA

3EOO ORG 3EOOH3EOÜ 30 30 35 DJ3 '0052 AH-BASIC --- ?3E03 32 20 11 48 20 42 11 53 19 133EOD 20 2D 2D 2D 3E 20 4C 49 53 543E17 4F 20 213E1A 22 DB 22H

LISTO I'

PANTALLAS DE INICIALIZACION

ORG 3FBOH ; ORG 3FBOH

•00000000003 JJJ 11'012345C709012345

3FBO 50 4F 57 DB ' POWER-MEV.SCALE?'3FB3 -Í5 52 2D '10 15 56 2E 53 43 113FUD <1C 45 3E1

3FCO -19 ZE 53 DB 'I.SCALE7H PHS.7 '3FC3 43 41 4C «15 3F 23 20 50 48 533FCD 2E 3F 20

Th" Cyb«"trn»hic Miara 8051 Family Anímmbl»r, Pag» 7fi

02-20-98

3FDO 30 2D 35 D8 '0-5 VDC?'3FÜ3 20 50 4-1 43 3F3FD(I ¡54 15 52 DB ' TER/D5983FDD 2F A A ÍÍA 39 3B 20 20 20 23 233FE5 23 20 563FKU 23 23 2A DB ' # # * # » * A3FEB 23 23 23 20 41 20 20 20 20 233FF5 20 70 6Ü3FF8 EO 3F 3F DB 'a???-???'3FFB 3F 2D 3F 3F 3F

;D8 ' 5 0 h , - 1 F h , S V h , 1 5 h , 5 2 l i , - 2 D h , 4 D h f 45h, 5Gh,2Eh,53h , d 3 l i , 4 1 h , 4Ch, 4Sli,03Fh;DB 4 9 H , 2 E H , 5 3 H , ' 1 3 H , ' 1 1 H Í 4 C H , 4 5 H / 0 3 F H , 2 3 H , 2 E H / 5 0 H , 4 8 H , 2 E H , 0 3 F H , O A O H / O A O H;DB 30H,2DH,35I1,56H, 64H, 63H, 03FH,OAOH;DB 54 H, •) 5H, 5211, 2FH, 4 4 U ,5AÍI, 3911, 3611, OAOII,OAOIlf OAOH ,2311,2311, 23H, OAOH, 5 611;DB 23H,23H,OA2H,23H,23H,23H,OAOH,4IH,OAOH,OAOH,OAOH,OAOH,23H,OAOH,OAOH,OFO

OEOH,03FH,03FH,03FH,2DH,03FH,03FH,03FH

escal* de voltaje: 220V, -MQV

3F5A ORG 3F5AH ?3F5AH '220,440'3F5A 32 32 30 DB 32H,32H,30H,3<W,34H,30H3F50 34 34 303F-IE ORG 3F4EH ;3F4EH 220:Q.22*1QA3 ; 440:0.44>10A3

;2,G737475 ; 5.34747543P4F. 2fi 73 74 DB 2611, 73H,7<U!,75H, 0011, 81H.53H, 471I,47H,54H, Q O H , 81H3F51 75 00 81 53 47 47 54 00 Ul

DB 25II ,72H,OfíI l ,2ei I ,001I ,01H,51H,4 '4H,10H,6BH,OOH,BlHnaca-lac do corriente;primor?.: 1,2,3,4,5,12,15,20,25 AsegimeU: 1,5,3.0,50,100,250 A

3F3C ORG 3F3CH ;3F3CH '01,02,03,04,05,12,15,20,25'3F3C 30 31 30 DO 30H,31H,30H,32H,30H,33H,30H,34H,30H,35H3F3F 32 30 33 30 34 30 353F4C 31 32 31 DB 31H,32H,31H,35H,32H,30H, 32H.35I13F49 35 32 30 32 353FO fi ORG 3FO 6H ," 3FO 6H3F06 10 00 00 DB lOB.OGH, OOH, OOH, OOH, 81H,?.OH, OOH, OOH,OOH,OOH, S1H3IT09 00 00 81 20 00 00 00 00 813F12 30 00 00 DB 30H, 0011,0011, OOH, OOH, 01H, 40H,OOH, OOH, DOH, OOH, 81H3F15 00 00 DI 40 00 00 00 00 Bl3F1F. 50 00 00 DB 5QH, OQH, OOF1, QOH, QOH, 8111,32H, OOI-!,'OOH, OOH, OOH, 82H3F21 00 00 Bl 12 00 00 00 00 02 • ' . . • • • • - - ' . - " .

The Cybprnofcic Micro Systema 8051 Ffimily Asoombler, Vrjrsion 3.02 Page 7702-20-9B

3F2A 15 00 00 DB 3511, O O H , 0 0 1 1 , O O H , O O H , D2H.20H, OQH, Q O H , O O H , QOH,02H3F2D 00 00 82 20 00 00 00 00 823F36 25 00 00 DB 2 5 H , O O H , O O H , O O H , O Q H , 8 2 H3F39 00 00 02

3EF4 ORG 3EF4H ;3EF4H '001,005,010,050,100,250'3EF4 30 30 31 DB 30H,30H,31H,30H,30H,35H,30H,31H,30H3EF7 30 30 35 30 31 30 .3KFD 30 3S 30 DB 30H,35H,30H,31H,30H,30H,32H,3SH,30H3FOD 31 30 30 32 35 303EDO ORG 3EDOH ;3EDOH

10H,27H,S1H,4/11!, OOH,7FH,51H,37H,57H, 27H, OOH,7FB10H,27U,51H,44H P OOH,QOH,51H,37H,57H,27H,OOH,80H10H,27H,51H,44H,OOH,B1H,25H,68H,78H,63H,OOH,B1H

3EDO 11 04 05 DB 11H, 04H, 8511,43H, OOH,7FH,55H, 24H, 27H,17H,OOH,7FII3EO3 43 00 7F 55 24 27 17 00 7F3EDC 11 04 05 DB 11H, 04H, B5H, 43H , OOH, 80H,55H,24H,27H, 1711, O O H , OOH3EDF 43 00 DO 55 24 27 17 00 003EEO 11 04 05 DB 11H,04H,B5H,43H,OOH,81H,27H/62H,13H,5BH,OOH,81H3EEB 43 00 81 27 62 13 58 00 81

; numiro de fanua: 1,3

; HÍ atj brilTasiuo, d«spla.zo el inioio do la; batola d*a aorrionto; 2B+5 (21H) datas

3ECE3JÍCE 31 333ECC3ECC 05 21

ORGDBORGDB

3ECEH31H,33H3ECCH0511,2111

;3ECEH '1,3'

; 3ECCH

; libios el puntero do acuerdo al bipo de sistema; nalida analógica: n. V-I, tx P-S, (i. FP-FPD

3EBO ORG3EDO AO AO 56 DB3EB3 2D 49 AO AO3EQ7 AO AO 50 DB3EBA. 2D 53 AO AO3EBE AO 46 SO DB3EC1 2D -16 50 44

3EAA • ORG3EAA 00 02 04 DB

3EBOH ;3EBOHOAOH,OAOH,5 6H,2DH,4 3H,OAOH,OAOH

OAOH,OAOH,50H,2DH,53H,OAOH,OAOH

OXOH', 4 6H, 50H , 2DH, 4 6H, 5OH , <J 4 H

3EAAHOOH,02H,0'1H

• ;3EAAH

PANTALLAS PARA (MOSTRAR LOS RESULTADOS"

The Cybernetic Micro Systwna 8051 Family Assembler, Versión 3.02 P^ge 7002-20-96

I1 3F60 ORG 3F60H

'ooooooooooin.nl'01234567U9012345

; ORG 3F60H

I

I

3FCO3F(Í33Ffiü3F703F733F7D3FÜO3F033Ffin3FÜB3F953FEJB3FW1J3FAJ53FA83FAB

5C>23575328HE543A49232E20232E543A.

3A23293A4B23487.33A232323232341)23

2023202056234923202323232E235623

DB5G 20

DB41 29

DB25 20

DB23 41

DB23 23

DB25 20

;DB;DB;D13;DB;DB;DB

'Vi50 3A 20

'S:

flfl«v P: (KW) '28 4B

(KVA)FP: *.**'46 50 3A 20

"THI

'i!20 23 23

46 4 4 3A

'THV

56H,5311,54H,49H,OAOH54 H,

: # # %

#MÍ23

20

; í í f f %

3AH,3AJ1,'IB ti,3AH,,23H48H,

23

1

A tfflff ff. W23

ÍFD: H . f t l f '23

'

OAOH , 2311 , 23H , 23H , 3 611 , OAOH ,O A O H , 2 B H , 4 E m , S 6 H , < U U , 2 9 l l ,4 Í M I , 3AH, 2311, 2311, 25M, OAOHO A O H / 2 3 H , 2 3 H , 2 3 H , 2 3 H , 4 1 H ,, 23H , 23H , 2311 , 2KH , 23H , 2311 ,56H,3AH,23H,23H,25H,OAOH

SOII , 3AI1 , OAOH , 20H , 4BH , 57H , 2 9H , OAOH4 6[1 , 50H , 3AÍ1 , 23H , 2E11 , 23H , 23H , OAOH

OAOH , 23U , 23H , 23H , 23H , 2EH , 2311 , 23H4 GH , SOII ,4 4 H, 3AH , 23H , 2EH , 23H , 23H

COUSTANTES

3EUC3EOC 65 S3 fiO3EBF 00 00 H5

ORGDB

3K8CHS 5 H , 5 3 H , G O H , O O H , O Q H , B 5 H

dinnciaióti do 1» aon"tanUo=1= 65536 d = .65536 t.85 HPF

3K92 16 30 403E95 00 01 85

ORG 3KD?H ; cUrnouJón de IA annsUí«nUn"FniA2/4DB 1 6 H , 3 8 H , 4 0 Í I , , Q O H , 0 1 H , 8 5 H ; = 16384 d = .16384 oB5 NPF

3E603E603E6I33E6E

2040

3400

',

fl981

The Cybarnetic Miaro

OUGDB

ORG

Systems

CONSTANTES DEL PILTRO DICITAL

3E68H ; direaai&n20H,34H,79H,40H,OOH,B1H ; = 2.034794

3E6E1I ; dirección

8051 Family Ajseemblor, Versión 3.02 Pag

d«d

do

e

lan .

la

79

non-^nb*2034794 R

constante

AO=A2Bl HPF

Al

02-20-9B

3E6F.3R713E743E743E773E7A3E7A3J27U3BOO3E803E833F.OG3E063E09

4080

9fi00

.1980

9U20

1000

6900

7000

0700

5301

0000

5881

0080

2981

66BO

0085

DB

ORGDB

ORGDB

ORGDB

ORGDB

"t + tt'tt*

40H,69H,5ÜH,BOH,QOH,81H = 4.069508

3E74H96H,70H,QOH,aOH,QOH,BOH

3E7A111911, B2H,29H, BOU, 0011, B1H

3E80H98H,53H,66H,20H,01H,80H

3EB6H10H,OOH,OOH,OOH,OOH,B5H

di r nación= .967 d

diroaaión- 1.982290

direaaión= .9853662

dirección= 100.00 d

d.

dee= .

dnd

dpd

de= .

= .4069508 e81 HPF

la9G7

1%« .

la

constante»BO NPF

Gonatant»1982298 B

connUanto

FACTOR

BlBl HPF

B2= .9853662 a80 N^F

la1 e

aonotanta85 HPF

KK

The Cybernetic Micro Byatema 8051 Fsmily Aítoemblsr, Vecaion 3.02 Pnge ÜO02-20-98

Symbol Ñamo Valué

AO I OB9AAOA L 24A8AQR I.3E68Al I OBAOAlA L 24ACA3.R I 3E6EA2. I OBA6

A2A 1, 24DGAVI». I 3E.7AABSOL . . . L, 2CE7ADCI I ODOOADCV. T OCOOADQUI h 2177AN. . . . I OÍ378ANA b 24FFAHA1. L 250CANFD I 01399ANFP. I OB98ANG2. L 29F8ANG3 . I-. 2A9BAHGI I OD7BANGV I OB7AAN1 . I OB95ANP I OB96AMR I 3EBOANS I 01397ANV I OB94ARRANQUE. L 0000AUX.LCD I OI1FAAZI L 24BBA?,2 . I, 2-ÍE5Oí. . . I OBACDiR I 3E7AU?. I OBB2D2R I BEBOCALC2 1. 21Í7CCM.CU L 27EOCARÁCTER I OBFEctisn . . . L 2D2iCL.EAR I OOFFOLEARLO) L 262FCHV2 . . L 2DE6CNV-l L 2DF5OJVfi . I. J2E07COMA. T 002CcouTLCD i onraCOE>Y.LCD L 2GF2COS L 2CF1CRLF. L 2D1CCSE L 2123CURSOR I OBFCDA1 I 1AOO

Tho Cybernetic Micro Sysfceina 0051 Family AssemblBr, Versión 3.02 yage 0102-20-96

DA2 I 1COODDRJ I 3FBODDR2. . I 3F60DDTÍAM T OBFDDECD L 3202DF,C1U> . L 31B2DÍGITO. I 013FFDISP1 L 2648DI5P2 1. 2667D1VT. L 2CDHDRCW. . . . . . . . . . . . . . I 1003DRPA I 1000DRPB I 1B01DRI>C. I 1002DTTN I OOBADT1NT I OOEFD'rilÜI 1 OÜDT)OTKDV . . . . . . . . . . . . . t 00FDÜTWR I OOFEDWN I 0080ESCALAS L 2201EJÍPCJ I 0000EXPl . . . . . . . . . . . . . . T 0001EXP2 I OOQ2EXP3 I 0063EXP4 T 0084fc-J L 2119F2 L 2141F3 . " . - . . . L 24 G9FFT:; . . L 2C7iFJNROMLCD ' 1. 26FDFP. I OEF4FPD I OEFAFPÜl. L 2UF6FPO L 3186FPS I OFIFEFfX . . . . . . . . . . . . . . L 31L7FPXn. . L 31SCFIÍOMST L 2DDAF&1 L 242ÜFZ2 . L 2-150FZ3 . Jj 2-178HALF L 26F9II I OEE2

ID. L 2F2B1FT L 2A32IfcTl. L 2A29IFT2. L 2A5CIFT3 L 2AÍ1FIFTd J.. 2A19INT L 2CE2IPK L 2A65I KM . L 20531RMS I OEUGIS1 L 2363

The Cybernebia Micro Sysbems 80S1 Family Assembler, Versión 3.02 Page 8202-20-98

IS11 L 2370IÍÍ2 L 2DECLS21 L 23F9K10 1. 2"302KU.il . L 2306K12 . . . L 2330IC1K . . . . . . . . . . . . . . 1 UI3L1EÍC1.R I 3EBCJC2 E. 2263K2Q L 23UB1(21 L 23UFK22 1. 2"3D9K2K I OBCJK2R I 3E921O L 2201)KHZ1 L 2DOAKD?.2 L 2D09KEYl . . L 2X1AKEV2. L 2130KK I 011L10KKR I 3JSH6KW3 . . . . . . . . . . . . . . L 22PAKYt L 223DKY3 L 2217K-/B1 L 2D2FKTB2 L 2D GEIí7,l . . . . . . . . . . . . . . L 22'1AKZ11 L 2315K212 . . . L 233FKZ2 L 2272KZ21 L 239EKZ2Z. L 23COJG',3 L 2226JL.A20. L 23 5ELCDOH L 25AQLDT I 0096LOl'3 L 2183MD3 b 2306MPP J-. 2FF-1MFS L 30DEMIHU I OODOMODE I 0020MOVCURSOR . L 2GL13MÜVDQRAM . . L 2603MLn.T. . . . . . . . . . . . . . L 2CD3NAKR I 3EAAITOAT I. 007 LNDT . . . . . . . . . . . . . . 1 0076HIB L 2EÜT3H1D2 L 21-00HOSUMO L 26CMNPI1R 1 3ECCNSCín I 3P06NSC2K I 3EDOHSVR i 3F-1E

The Cybecn«bÍG Micro Systema 8051 Family Aasembler, Versión 3.02 P^ge 8302-20-98

OKCOPYLCD . . L 26FBPAC . . : L 2ÜB9PD . ' . " . . . L 2F39PGD L 27B5PGDN L 27BOPGU L 278DPGUP L 2780PH I OI37VPHR I 3ECEX>HS L 2192PT2 L 2CF6PHTR. . . . . . . . . . . . . . I, 213F7PO T OEEÍ!P.PO L 30-1APPU . . L 3059PRIHTCMAR L 272EPRTNTDIG. L 2V5FPROMLCD . . . L 26EA

I

RESET1. . . . . . . L 20P3P.ESBT2 t. 20A3RE.3F,T3 i, 20KARESBT1. . . . . . . . . . . . . L 20FAREÍÍ'f. . . . . L 2CCERETARDO . L 27DÜROM2 L 22COROMUAM. L, 22BEROOT L 2CFBROOTl , . . . L 2D05ROUND . . . , , , , . L 2E3BS . . . . . . . . . . I OEEESCI . . I OBB2SC1R. I 3F3CSC2 . I ODOHSC?.R .1 3EF4SO L 3086SFT1 L 2C3FSFT2 J, 2C5ESUOffl . . . . . . . . . . . . . L 2E67STGN . , L 2CIJDSUO I OBOESOT L 2CECSRTX L 3254SRTX2 L 3201SUMÍ. I OBF.2SUMA . . . 1, 2CC9SUMADO. .1, 26C6SV. . . I OI37CSVH T 3F5ATDJC1 L 2SCETDX2. L 2EECTHD L 2A0CTHI X OF06TIIII. I QFOCTIIIX I, 3200THV I OFOO

Th« Cyb«rn«tio Miaco Synfc«m« 8051 F»mily Aas«mbl«rf Versión 3.02 P:>g*> Q402-20-90

TIIVX L 3JD11>1P L 320DTOUBX L 2DADTOSR. L 2D2ATOST L 2DDOTRF L 2527TX1 . L, 2KEBTX2 L 2F27TXAN. L 323BUP I 0040VI I OEDCVD L 2E67VFT L 2990VFT1 L 290CVFT2 I> 29B9VFT3 .1, 29ECVPK L 29C2VRM L 27EEVRMS. I OEDOVS L 22DBVS1 . . . . . . . . . . . . . . L 22E5W. . y, 2300XDO I 01100XOJ. . , I OIJD6XD2 I OBDCXTL . L 20E4XX L 2113TDO . . . . . . . . . . . . . . I Ü13EÍIYD1 I OUEEYD2 I OBF4Tf L 24A62IT L 210FSITO. . L 21B7

00 Errons (0000)

1

-t-t I I t t I í i t i t i I I t t i t í I I I f I t I » I I t

F X £. T JZ O £> A B A & A tf £) A

jp.sLrr.st.ti*?

jfor-maai

& urja.¿rímuJLatia.

y

cít? onda, =o£>c«3jatí?Jr LIÍXSL

DECLARE BUG SIO&LJ5 (± -' „ TVO.' ,SÍ/B

Gt/Bfí«BGUB

*vü,WO,WO,

Ti, WO, itt,

xtc,ict,XCC,iCC,

XCtJ.,',v-j.,vi,vi,

iCti, vi,itci, vi,itti, vi,

SCKEENQ1KO =CLS

(O, O^~Q = 2HI4J.Z*B Q >= ÍLÓCATE &r *Z5=LÓCATE £>r J25-LÓCATE 12r 2O-LÓCATE 13r 2O-

&ASS FILTBR"

"A —"? : PRIXTT"B —"- =• &RZÍJT

FXL.TERQLIÍÍ;"?

= Q =ZF Q = O C3OTO VALIDOL&CW Q QOSUB CÍO, C2OT C1O> O2Q

CiOr

BO = ir Bl = :

AO - 2-O347&4= Al =

KK = 1OOOO

CLS

LÓCATE

LÓCATE

JtOrPASS &AKTD FXL.TER

12, 10= FRXNT " CENT- FKBQUENCY CHssj = "- = f&ZtJTFO = <5O= WO =• 2 * fX *< FO

LÓCATE 14r 1O: FKIffT " &AMPL& TXME r^tóc.} = "- =O.OOO147&";

T = -OOO147&LÓCATE 2Or 1O: PKXNT " -Px-e^wj &ny íc&y to continuo "

&0" =

Zf Q = O OOTO XOOL1J.

Q = 2WiZLE Q >- 1OLS

LÓCATE Br .LÓCATE 10,LÓCATE 11 r

LÓCATE 12T

LÓCATE 13,LÓCATE 1*4 v

LÓCATE 15 f

LÓCATE lGf

LÓCATE 17,

to= i10 =10 =10 =10 =10 =10 =10 =10 =

?KIttT 'FKXKfTFKXXrX1

PKINT&RISTTFKIffTFKXSTFKXtJTPRXNT

C3iooí"A —""B — ""C —""D —""E —•'"f : "

"O — ""// — "

30 ízrr-*

=~:

i. WSVO

PRXHTFKXtJTfysxtfrfRJWTFKXfJTJRRJWTFRINTFRINT

£oxrt" i** V

" V

" 3," 2" 3

" &

i Te;-) fox* KL. .Zosui "-Efi mugo ida,!

= Q =r= O

OW C10Or

CSOOr

"BAKTD PASS FXL.TKRC3OO* G4OOr

G7OOr CQOOr CGOOr C7OOr C3OOT GZOO,

KL,

VOL.T1: Je = Je -r- i

C1OO: CL£LÓCATE 24f 3O= JPRINT "<:R>=HBTVRN" -

•7 7 i—- Q — fJl ,—: (5 — 2 — O ~ frf " O ~

¿ = 1 TOte -+• ¿r ¿ce — ¿¿ .*• T= itrci = r¿¿ — 1} *# TGIOtíLlCl* W> ¿CC, ¿CCJ., vi,

IOCV1ÜB J.3, J.0r JPRItfT "X= "13t 15 = &RINT USZNG

LÓCATE 3.3, J?J5r FRXtfT UGINQ "**-#-#•##•--**•"-

"y— "Tf: 22, 3-S:

22, SO:JÜOGATJS 22 T 66= &RI.NT USINQ "####•#-##"; ÍVW

XD2. = XD1: JCD1 = XYTJ2 = YJJ3.= YX>1 = YX ~ vj;-ya = BI * YDJ. -*- B2"XI = AO * X •+• AJ. *•Y - CAO * (X -f XD2) -í- Al * XXH} / KJC + J31 * YD1 -<- JB2 v Y&2

' Z - Y -f- 2= Zl ~ X -*• Zlw = r - 2 -+ w= wz = x - 2 >+• wi

JPSET fi , ( ¥ * - & ) - * - 125}PSJST C5 ^ ZWTC¿ / 5} , 125}

Sf UCASB9 C XfVO£Y& > - "R" QOTO FOOLl JSJ^SJS GOTO WLT11

//KXT i

, ^4r PRX&T "XJ-ÍD-"LÓCATE rr S7: PRXHT UBXNO

LOCA7JE 13t 67= FKXNT USZNO "-tnr" -

VO/.37J.

Jk = Jk -í- iC2OO: CLS

LÓCATE 24* 3O =SI - Q= Wl = O= Z = O= H = O:

¿ = 1 TO 113JL1 = Je f- ¿r ¿CC =r ¿¿ w T= ¿CtJ. = C¿¿ — 1J> *< TCA3..L

13r 1O= FKXKTT "X- "J.3, JL5r PRXtfT U&'XNO

13'f 35? PRINT USXNOLÓCATE 13 f 5O= &RXNT "RSÍ&=

13, S5 =

JuOCATJS 22r 15= JPRX&T USXHQX&CATS 22, 5Or PRXiJT "AV= 'IjOGATJS 22r 35= J52ZWZ1 USINQLOCATJS 22, 50= PRXNT "JÍKÍS=XjOCATE 22f 55= JRRTffT USItfO

XD2 - XD1: XD1 = XYD2 = YD1 = YDJ. ~ YX = viYl = SI * YD1 -+* B2 * YD2XI = AO * X -+- Al. * XD1 -f- A2 * XD2Y = ~Y1 + XI / KK

W — Y - 2 + H= MI = X - 2 -*- tfl

IFSBT Cir CY&SET es * xt

Xf UCASE9CINKEY&J = "R" OOTO TOOL2 SL&E OOTO VOLTUZT12=XTEXT ¿

X 1J= HWÍ = &QRC&JL X

^SS^ Í C-' vir 'T-"'''''7 ' '""""'"''í Vi7^*4^j^^^^¿-^"'V '*j' ;"'.'r-" '_.'r: --->- '->--í7^^~?,--: :-^r-.- '--^->

2} / MV * J.OO

LÓCATE 7, 64? PKIWTLÓCATE 7, 6Tr PRIfFT USXNQ •LÓGATE 18T 64: fRXNT "H= "LÓCATE l&r 67: JPRJWT USXNQ

GOZOGZ-RQ

cozztz-Q.Z

Je = -te •*• JlCLS

•LÓCATE 24.* 3O: JPKJTWT "<R>-RETU1R£1" ;Zl = Or WJ. - O: Z =: O= H = O:

FOR J. = 1 TOii = Je -*- i- ice rr Xi -^ Tr icdi =r rü ~ U #< TCAZ>£. SXQ&£*3C3.r Wt?, itfc, ¿fcci, vj.,

LÓCATE 13, 1O:LÓCATE 13r 15: PKZWT VSXNO "jrjrf*•-#&"= X

'.3* 3O: FKINT "AV= "13, 35: JPRZWT VSXNO "&•#&&„**•"; Zl

LÓCATE 13 r -55 r FKI&T USINO

22 1O:LÓCATE 22'f 16: ^RJ'JW UGIflQ "*&##-&#"; YLÓCATE 22r 3O: &RXÍJT "AV- "LÓCATE 22* 35: -RRJWT USXWO '•#####-##"; ZLÓCATE 22, 5O: &RJCfJT "RKCg= "LÓCATE 22f 55: &RWJ* USXNO

-r XX) 1 = X.X7X2 - YD1: YTH ~ YX. =r viYl - Bl * YD1 t- B2 * YD2XI ss AO #* X ~t- Al ** XD1 •+- A2 * XD2Y rr -Yl -*- XI / KK

W = Y " j 2 - # - K r MI ~ X " 2 -f- MI

PGET Clr CY * .3}

Xf UCA&E*CXtfKEY&} - "R" OOTO TOOL3 EL£E OOTO VOLT13VOLX13:

ftEXT iWW = SQRCW / 3.1= H*?l = GQRCW1 / 3.J

TflD sr SQKrWWi - 2 — W* ~ ^ J / W V ^ 1OO

7 64.' JPRINTLÓCATE 7\ PRIXFV UGINQ "•***#•*,**••'? THDLÓCATE 13, 64= r-KZWT "tf= "LÓGATE lGf 67= FRX&T U&XSQ "-HNF1'- S

QOTO VOL.T3TOOL&= OOTO GIROEKD

SXNUSOXnAL «AVE -#- NOXGE

ic = Je •*- 1C4OO- CLS

LÓCATE £4* 3O= FRXffT "<=RZl = 0= Hl = 0= Z = 0= tf = O =

&OR 1 = 1 TO11 s= Jk: •*• 1= itc = 11 -i* T: 1W1 = Cll — 11 ** TCAJLC* SXí&n^4.(l, WOW JtCfc, Itmi, vi. vil}

LÓCATE 13r 1O= FRIKTT "X= "LÓCATE 13, 15: FKXNT U&XfJO •'#**&. **"= X

t*

LÓCATE 13 f 3O:LÓCATE 13, 35= PRXtfT UGXffG "###•#*- **";•LÓCATE 13f 5O= JPRXNT "JRM&= "LÓCATE 13f 55= PRXtfT UGXtfQ

LÓCATE 22, 1O: PRXtfT "Y= "LÓCATE 22, 15: PRXtfT UGINOLÓCATE 22, 3O: PRXtfT "AV= 'LÓCATE £2, 35: PRXtfT UGXtfQLÓCATE 22, -GOr PRXtfT "RMG=LÓCATE 22, 55: PRXtfT UGXtfO

XD2 ~ XD1: XD1 = XYD2 = YDl: YDl = YX = viYl - Bl # YDl -*- .H2 * YD2XI = AO * X -*- Al * XD1 -*- A2 * XD2Y = -Yl ^ XI / KK

hf = Y ~ 2 •*- f f : Wl = X ~ 2 -+- tfl

PSET Clr CY * .3} •+- 125J

Xf UCA£B#CltfKEY#J = "R"'OOTO TOOL4 ELGE OOTOVOLTIO:

MEXT 1

LÓCATE 7r &í= PRX8T "TJJÜ="LÓCATE 7, G7: PRZWT USXNO "*\r^*^r_ **•" - TtíX)LÓCATE 13r &íz FRXtfT "tf= "T.J3GATR 13, &7= PRXNT UGXNQ "^T"r N

TOOL4.: Q.3TO OXKOEtfD

LEVEL GQUARE

VOLT&z >c. ^ te -+- iC50O: OLS

LÓCATE 2-4, 3O: PRXtfT "<R=>-:RETURN" -Zl i—~ O ~" WJL "^ O" Z ~ O ~ W -~~ O —

FOR 1 - 1 TO 113

GXGffLSCl, WO,

LÓCATE 13 1Q: PRXtfT "X— "LÓCATE 13l J.^r PRXNT VSXNQ "^r*-^_ jr*-"r XLÓCATE 13r 3Q; PRXtfT "AV= "LÓCATE 13, 35: FRXtfT USXfJQLÓCATE 13, 5O: FRXtfT "RMS=LÓCATE 13, -55r PRXtfT UGItfO

LÓCATE 22f lOz &RXNT "Y= "LÓCATE 22r 15: PRXtTT USINQLÓCATE 22r 3O: JPRXtlT "^V- "LOOAT.K 22, 3G; X^RXNT UGXtfQ "LÓCATE 22, 5O; PRJCjNT "RKfSz: "LÓCATE 22, 66; JPKJ'fW UGXNQ

YXX2 = YDl: YDl = Y

Yl - Bl -^ YDl •*- B2 * YD2JO. = AO * X -+- Al * XD1 -f- A2 * XJX2Y — -YJL -*- XI / KK

H = Y ~ 2 -*- tf= WJ. == X ~ 2 f Wi

jPGET Clr cy * -&} •*- 125)JPGJST C5 * XffTCJ. / 6)r 12&)

XF UCA&E&(XtJKBYy} = "R." OOTO TOOJ^5 JEL&JE OOTO VOLT1GVOL.T15;

ÍÍEXT J./ ±): WWi = GQRCH1 / X_>

THXJ =: SQRffWl ~~ 2 — WW ~ 2) / fVW *K 1OO

LÓCATE 7r 64= PRXNT "27ÍD="LÓGATE 7> 67= FRXNT USXNO "•&&*-#&„*•*"; TÍ-fDLÓGATE 13r 64: -RRZ-W37 "&= "LÓGATE JL&r 67= &RXÍVT USIfJO "#

OOTO VOLT&TGQL&= OOÍÍÜ OXROKND

LEVEL &QUAKE f-iAVE

VOLT6: Je =r ÍC -f XC6OO: GL&

LÓCATE £4.f 3O = FKINT "<R>:RETURÍ1" ?21 — O= WJ. = O= Z — Or H = O =

FOK ¿ = J. TO JLX3¿¿ = Je •*- ^

13, 1O= PRXNT "X= "13 JL&: 2?RXfifT USXtfQ "JFfJFjF- -jrjr" - X

LÓCATE 13\ PRINT "AV^ "LÓGATE I3r 35: PRXtfT USI&Q "*%r- r*-_ jT*"*- ZJ,LÓGATE 13, £Q: PRXKfT "RMS= "LÓGATE 13, &G= JPRZNZT UGXNQ

JU2GAXB 22f 1G= JP3RJCNT UGINQ.LÓCATE 22 * 3O : &RXWC "AV=: 'LÓCATE 22, 35= PRXNT USINOLÓCATE 22, 5O : PRXNT "J&í&=

2, G5= &RJCMT USXNQ

2 — XD1= XD3- = X>2= -p

y-j. -* X -t- Al ^ XD1 -*- A2 * JCDS

y = —yi -f- xi / KKH = Y ~~ £ •+- W: tfl = X ~ 2 -f- WJ.

CY # -&J •*r-5 =*

Xf UGASB#<-Z&KeX#J — "R" OOTO TOOLG ELBE OOTO VOLT1&VOLTJL.G:

NEXT X

~ 2 —= B -t- JL

LÓGATE 7, 64: PKIKfTLÓGATE 7r 67: PKZttT U&XtfGÍ^OCVIIK IB, 64: FKINT "N= "LÓGATE JLBr 67= ^RXifT U&XtiO "*•**"- Jtf

r OOTO GIROEtfO

TRIANGULAR

VOLT7: Je = Je •*- J.G7OO: GLS

LÓGATE 2-4f 3O: PRXNT "<R>:RETURÍi";Zl = O: WO. = O: Z = O= H = O:

POR í. — 1 TO 113

3, JtOr FRXKTT "X.= "LÓGATE 13r JL6: PRINT UBXÜO "

3GT / TX -*• TJt- - Arax *r T^ -*• x *• ov = rx

*-- T& = TJtT-A = X

-TOA = ZZLX.= rax -rax = zxrx

=OS *Z=&& *z=O£ *Z& 3XVZX7J=ST *z& sxvocrr

==x... Jitix&<f =or *z

rz -..jfj

-or *e-r

R3H3, fT)£O3 J&& ¿LX

r - sr = rrerr ar r = r

= H -O - Z ~O — TM =O ~-oe *&

T-* s3S&1O-OO&J

XAV& 1YtX32J3C3

aftaO&XG OXOO -¿Tí.>3E

aroo¿# "erÍHP 's?r=¿9 *¿

oor * ^IMrr

T JDC3W

¿TJ/JQA

^Dí / TX •*• TJt- = >trax ^ rv •*• x *• o^ = rx

^ T3 = TAT-A = X

-TOA. = S*ZA= rax -rax = zxrx

MH -,.^J-Off '<

-ÓÉT "¿-9T *í

rz ?..**.. =AV,. 3¿tI2kT =OQ *í

T = T3 3313 O = TT3 tf3ftLT ~ T3 3313 O = T3

TTa xc TT3 =TCf Xf T-t£ ™

OOT -C TT3*? OOT -c T.S

oor =c OOT = T3OOT =s TTO

c OOT =r ra9" = T=J

T = r¿T =

'OH *

• T-A ^ 0- *T* f sr / TJJJXI xc &

TTa xc TT3 — TT»ra *: T¿ = T-A

o = TT^ AESKI oz <• rr^r «í3STI3 O = T3 fi3fí£ O¿ •< T3 3

*= OOT = TT3: OOT = T3OOT ~ TTa

OOT = TCT

ON3T

II

"cw *

a/7» atas

3313

X 3313O =

— T--»

<r TTa 313313 CO<f -*• TCT-?

T1SDX3

-oso

i«Se

owar

ooeo

OMISA.. =W..otxxsn

*er'9T

OOT = OKIrr

0X00 3313 G1OCXL (XLOO «2

T J3C3N

- 0TJ.10A

33CTLO3313

*(9fe?- *

TM

vi -f- 37B)

BUB

SINUSOIDAL, CON RUIDO

SUSLISTE CO

i"*,,0J

vi = so

iCC,, 7

XMTCJLS *: vi

vi, vü.>

PGET CS.PSKT CJ.

GUJB

ONDA CUADRADA: DOS IflVEJ^BB

BUB BIGNLS Ci,

iit:t:, ¿Lttri,

/"

ru. =ZíJLi = 1OOIF DI > O 37ÍEN vi - 1OO

If DÜ ^- O THEN vü — iOO

-PSLS2"vi

- 78)

Xf Di <r O

IF D1JL < O

vi = -ÍOO

vü = — J.OO

vi =

EJVD

SUBCO,

r TREG

Cir W9, , vi,

= ÍOO

=T O

Vü =: O

DI

Zf DÜ

vi =

IHEW

PSETvi

SUB

ONDA

GUB , vi,

vi rr

= ioo rwo

L, vi

vi - ^ vi

DJ.J. -e -&O

- 2

rwo

51 y 376)

SUB

- ESTE PROGRAMA HACE QUE EL COMPUTADOR ACTUÉ COMO UÍ-J TERMINAL- RECIBIENDO DATOS A TRAVÉS DEL PUERTO SERIAL CCOMI),- LO QUE PERMITE LA COMUNICACIÓN CON EL MICROPROCEEADOR, QUE HA" SU VEZ CORRE LOS PROGRAMAS ALMACENADOS EN MEMORIA -- LOS DATOS DE VOLTAJE Y/O CORRIENTE, SON GRAFICADOE EN LA PANTALLA- Y A LA VEZ SE GENERAN LOS ARCHIVOS ASCIIz EL ade.-tVl _ pra , adatlX -- Y jaaíi/ta-j?x^a PARA SU POSTERIOR AIStALISIE-

VOLVz

CL06E

OPEN •'CO«2:9600,I3,a, X, GS, cia , ira, od.,RB28OOO" FOR INPUT AS

modero , I£ c*ua.r-iac térra euro wsLi-tJLns C EOF C 1-3o .) , fiet •fc'h.om ancl ETüxt tliem t;o tlae

IF NOT EOFC3O THEN

IF MiGi^od-ajpu.t^& = "@" THEN GOTO

IF

LOOP

GRAPH SUBROUTINE

CLGSCREEN 2, O, O - aereen ae-CVI EW C3O, 3.O>~C5OO, ISO 3 , > 3WINDOW C O , -30 3 ~ C 33© , SOO 3

ASOPEN "Cz \DATA\gLdVOO_pr-»-" FOR OUTPUX AS -ff2OPEÍ3 "C= \DATA\acLIOO. £.r-n" FOR OUTPUT AS -JF3OPEN "CcVDATAXacITO-^r-n" FOR APPEND AS *4_

IHPUT

X = JL.FOR X = X TO 1X3

INPUTLCM

Y -

PSET CX, C'Y -P6ET CX - XX3, CY - X28 ) -f- 45O 3PSET CX -»- 226, CY - X2S -t- 4SO )

PSET C6 =

LÓCATE X2, 56= PRINT USING "*•«•*». j»* "; Y — X28

NEXT X

X ~ XFOR X = X TO XX3

INPUT íTX

PRIftíT -ff-a, s: - X28

PSET CX, Cz - X28J -»- XSO >PSET CX -t- XX3, Cz: - X283 •*- 15O >PSET CX -i- 226, (x — X28> -t- X5O >PSET ce =* T.NTCX / 2} , X5O 3

PSET CX, 3OO?= PSET CX -i- XX3, SOO > : PSET CX -»- 226, SOO 3

LÓCATE 23, 56: PRINT USING "-ff «--ff_#ff" z. — X28

WKXT XLÓCATE 6, 65= PRINT

CT

anaaocn

OM3

NSCHO,

oaprre peeac— -303:

aocriCLNK

oaJtoeotno"pttre

OIXVX3 9A3

-„**-****.. DNisn "z ^ x •+-M '

z-v

ATOA CXEOG

X JZfCHM

T = X

= MdJÍI

X = X -HCX3

- ..=AOHJ:.XNiUcf =99 'os gxvocrr

= 99 * í

= 39 *1s.xvocrr

XWIM3" =99 COT axvocrr= 99 'a srxvoca