Configure port to send logic, Computer Engineering

Assignment Help:

Configure port A for the lower 4 bits to be inputs and the upper 4 bits to be outputs. The program should chase a logic one from Pa4 -> Pa7, depending upon the condition of Pa0-Pa3 the speed of chase is increased.

Pa0  = 1  Slow Counter  
Pa1  = 1  Counter   
Pa2  = 1  Counter    
Pa3  = 1  Fast  Counter    
 
If all Pa0, Pa1, Pa2, Pa3 = 0 wait
 
The only major difference is the data direction i.e. this configures 4 input lines Pa0-Pa3 and 4 output lines Pa4-Pa7

Paddr
Bit7  Bit6  Bit5  Bit4  Bit3  Bit2  Bit1  Bit0
1  1  1  1  0  0  0  0
 
The full program is shown below

                  name first
padr          equ $0000
paddr        equ $0001
                 org $500
                 ldaa #$f0
                 staa paddr     set up half in and half out
loop0        ldaa #$10
                 staa padr     send data
                 jsr delay
                 ldaa #$20
                 staa padr     send data
                 jsr delay 
                ldaa #$40
                staa padr     send data
                jsr delay
                ldaa #$80
                staa padr     send data
                jsr delay
                jmp loop0
delay        ldab padr    ;get input from port a
                andb #$0f    ;mask of lower nibble only

                beq delay    ;repeat till selected
                ldab padr    ;get port a data again
                andb #$8    ; mask off bit 3 pa3
                bne loop3    ;if select go to loop3
                ldab padr    ;get port a data again
                andb #$4    ; mask off bit 2 pa2
                bne loop4    ;if select go to loop4
                ldab padr    ;get port a data again
                andb #$2    ; mask off bit 1 pa1
                bne loop5    ;if select go to loop5
                ldx #$ffff    ;assume pa0 is pressed load up x with ffff
                jmp loop1    ;carry on
loop2        ldx #$1    ;load up X with 1 fast
                jmp loop1    ;carry on
loop3        ldx #$f      ;load X with f
                jmp loop1
loop4       ldx #$ff    ;load x with ff
               jmp loop1
loop5      ldx #$fff    ;load x with fff slow
loop1      ldab #$1f    ;nested loop
loop6      decb
              bne loop6
              dex
             bne loop1    ;loop till zero
             rts               ;return back to main
             end


Related Discussions:- Configure port to send logic

Overfitted the data, Overfitted the data: Moreover notice that as time...

Overfitted the data: Moreover notice that as time permitting it is worth giving the training algorithm the benefit of the doubt as more as possible. However that is, the error

TIME COMPLEXITY, calculate the time complexity of a=(b/c) operation in stac...

calculate the time complexity of a=(b/c) operation in stack

Sound and complete, Dictator Dim wants to replace counting, in particular, ...

Dictator Dim wants to replace counting, in particular, counting the population of his land. To keep an accurate population count, Dictator Dim has instructed his secretary to add o

Conversion of base 10 to base 22 numerical system?, Hypothesis ... since th...

Hypothesis ... since the Hebrew language is a Numerical language meaning that each letter in their alphabet has a numerical value. I believe, that the Hebrew-language based on a r

What is the pcm pulse or symbol transmission rate, An analog information si...

An analog information signal, whose maximum frequency is 6000Hz, is to be transmitted using a PCM system. The quantization error must not exceed the ±1 % of the peak-topeak analog

Prove the equations using the boolean algebraic theorems, Prove the equatio...

Prove the equations A + A‾ .B + A.B‾ = A + B using the Boolean algebraic theorems ? Ans. The equation is A + A‾.B + A.B‾ = A + B L.H.S. = A + A‾ .B + A.B‾ = (A + A.B‾) + A‾.B

Functions of an operating system, a) In multitasking Operating Systems, th...

a) In multitasking Operating Systems, there are two types of multitasking such as the "Preemptive Multitasking" and the "Cooperative Multitasking". Describe the two mentioned mult

Define a technique of temporarily removing inactive program, is a technique...

is a technique of temporarily removing inactive programs from the memory of computer system? Swapping is a technique of temporarily eliminating inactive programs from the memor

Asembly language programming, Ask question #Minimum Write a program to mask...

Ask question #Minimum Write a program to mask bits D3D2D1D0 and to set bits D5D4 and to invert bits D7D6 of the AX register. 100 words accepted#

A subroutine can contain nested form and endform blocks, A subroutine can c...

A subroutine can contain nested form and endform blocks. False.

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd