1 / 4

Pd32

MEM. Pd32. DMAC. DISCO. TIMER. TIMER PRESETTATO. CLEAR. IACK. START. IRQ. IVN. R Q S. IACK OUT. SCO. pd32. IACK. CLEAR. INC. MBR. START. IRQ. CAR. IVN. SEL CAR. R Q S. INC. IACK OUT. MBR. MRD. SCO DMAC. TRA. MWR. MBG. SEL TRA. SET. SEL SET.

nate
Download Presentation

Pd32

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. MEM Pd32 DMAC DISCO TIMER

  2. TIMER PRESETTATO CLEAR IACK START IRQ IVN R Q S IACK OUT SCO

  3. pd32 IACK CLEAR INC MBR START IRQ CAR IVN SEL CAR R Q S INC IACK OUT MBR MRD SCO DMAC TRA MWR MBG SEL TRA SET SEL SET DEC REG WC TC SEL WC DISCO DATO SCO DISCO TRACCIA SETTORE MEM

  4. ORG 400H TIMER EQU 0H DMAC EQU 1H TRACCIA EQU 2H SETTORE EQU 3H WC EQU 4H CAR EQU 5H RISULTATO EQU 6H CODE JSR INIT MAIN: JMP MAIN INIT: SETI START TIMER RET DRIVER 0,1600H; DRIVER TIMER OUTL #10 , TRACCIA; IMPOSTO IL VALORE DELLA TRACCIA INIZIALE OUTL #0, SETTORE; IMPOSTO IL VALORE DEL SETTORE INIZIALE OUTL #1024,WC; IMPOSTO NUMERO DI DATI DA STPOSTARE OUTL #ABCDH,CAR; IMPOSTO INDIRIZZO INIZIALE SU CUI SPOSTARE I DATI START DMAC CLEAR TIMER; ELIMINO LA CAUSA DELL’INTERRUZIONE RTI DRIVER 1,3200H; DRIVER DMAC PUSH.. MOVL #ABCDH,RO; METTO L’INDIRIZZO INIZIALE DEI DATI IN MEMORIA IN R0 MOVL #2048,R1; METTO LO SPIAZZAMENTO DEL DATO FINALE IN R1 ADDL R0,R1; CALCOLO INDIRIZZO DATO FINALE XORL R2,R2; AZZERO IL REGISTRO CHE MANTERRà LA SOMMA LOOP: XORL R3,R3; AZZERO R3 PER POI FAR LA SOMMA SU LONGWORD E RISOLVERE EVENTUALI OVERFLOW MOVW (RO)+,R3; SPOSTO IL DATO CORRENTE IN R3 ADDL R3,R2; CMPL RO,R1; CONTROLLO SE SONO ARRIVATO ALLA FINE JNZ LOOP; SE NON è ZERO (QUINDI SONO DIVERSI) PASSO ALLA PROSSIMA ITERAZIONE DEL CICLO ASRL #10, R2; DIVIDO PER 1024 LA SOMMA MOVL R2, RISULTATO; METTO IL RISULTATO IN MEMORIA CLEAR DMAC; ELIMINO LA CAUSA DELL’INTERRUZIONE START TIMER; FACCIO RIPARTIRE IL TIMER POP… RTI

More Related