Write a program to echo the string, Computer Engineering

Assignment Help:

Write a program to echo the string 'Hello' to the serial channel (SCI) using the protocol of baud rate 9600,8 bits , no parity and 1 stop bit 

Consider the baud register as shown below

2169_Write a program to echo the string.png

Using a combination of bits5,4,2,1,0 we can set up the required baud rate .On the target system provided the input clock crystal is a 8Mhz (2Mhz internal E) version , therefore for a baud rate of 9600 is the easiest one

      Bit 5= 1 Bit 4 = 1 Bit 2 = 0 Bit 1 = 0 Bit 0 = 0

i.e. (2Mhz / 13) = 9600 *8 bits per second i.e. 9600 Baud

          Baud = 0x30

The bit length mode is set by bit 4 of the SCCR1 as shown below

1494_Write a program to echo the string1.png

 

    Bit = 0 'Start bit 8 data bits 1 stop bit'
    Bit = 1 'Start bit 9 data bits 1 stop bit '

Therefore bit 4 of sccr1 = 0    Sccr1 = 0x00

The SCI control 2 enables us to set interrupts if data is received or can be transmitted; in this case we simply want to enable the transmitter and receiver  
      
Therefore

2071_Write a program to echo the string2.png

 
    TE Bit 3, 2= 1
 
    Sccr2 = 0x0c 

 

This completes the SCI set-up, the remaining register is useful in determining whether data is received or can be transmitted

1310_Write a program to echo the string3.png

We can simply check bit7  if this is '1' we can send more data ,Since the configuration is actually set-up on the development boards we do not need to re-program the baud rates but simply use the comms channel. Therefore the a simple hello display program follows

  name ex6  ;Use of the uart to echo Hello ten times
baud  equ $2b ;Baud rate  register
sccr1  equ $2c  ;SCI control 1
sccr2  equ $2d ;SCI control 2
scsr  equ $2e  ;SCI status
scdr  equ $2f  ;Serial data register
  org $500  ;Start on external ram
;Note that the uart is configured by the monitor
;the following codes are used for eprom use
; sccr1 = 0 hex (No 9th bit)
;baud = 30 Hex (9600 using  8Mhz xtal )
; sccr2 = 0c hex (Enable tx)
  ldx #$0a  ;load up Counter with 10
loop  ldaa #'H'  ;load up ASCII H
  jsr txd    ;Send data
  ldaa #'e'  ;Load up ASCII e
  jsr txd    ;Send data
  ldaa #'l' ;Load up ASCII l
  jsr txd    ;Send data
  ldaa #'l' ;Load up ASCII l
  jsr txd    ;Send data
  ldaa #'o'  ;Load up ASCII o
  jsr txd    ;Send data
  ldaa #$0a  ;Load up ASCII newline
  jsr txd    ;Send data
  ldaa #$0d  ;Load up ASCII return
  jsr txd    ;Send data
  dex    ;X=X-1
  bne loop  ;repeat till zero
  swi    ;return back to monitor
txd  ldab scsr  ;Get sci status
  andb #$80  ;Mask off bit 7 TDRE
  beq txd  ;Wait till ready to transmit
  staa scdr  ;send data from A out
  ldy #$ff  ;Software time delay
loop1  dey    ;instead of XON/XOFF protocol
  bne loop1  ;wait till y = 0
  rts
  end


Related Discussions:- Write a program to echo the string

Return a string, Write a function that will prompt the user individually fo...

Write a function that will prompt the user individually for a filename and extension and will make and return a string with the form 'filename.ext'.

Explain the concept of thread, The Concept of Thread A thread is a sequ...

The Concept of Thread A thread is a sequential flow of control within a process. A process is able to have one or more threads. Threads have their own register-values and progr

Instruction cycle-flynn’s classification, Instruction Cycle The instruc...

Instruction Cycle The instruction cycle consists of a series of steps needed for the implementation of an instruction in a program. A typical instruction in a program is descri

Avantages of oopl in a programming language, Object oriented programming la...

Object oriented programming languages directly show the real life objects. The features of OOPL as inheritance, polymorphism, and encapsulation makes it strong.

Electrochemistry and batteries, differentiate between concentration cells a...

differentiate between concentration cells and electrolytic cells with suitable examples?

Differentiate the latch and flip-flop, Differentiate the latch and flip-flo...

Differentiate the latch and flip-flop? The major difference between latch and FF is which latches is level sensitive whereas FF is edge sensitive. They both need the use of clo

Introduction to the operating system, Q. Introduction to the Operating Syst...

Q. Introduction to the Operating System? An Operating system is software that creates a relation between the User, Hardware and Software. It is an interface between the all.

Determine the boolean expression using k-map, Reduce the following equation...

Reduce the following equation using k-map Y = BC‾D‾ + A‾BC‾D + ABC‾D + A‾BCD + ABCD Ans. Multiplying the first term with (A+A') Y = A'BC'D' + ABC'D' + A'BC'D + ABC'D + A'BCD +

What are advantages and drawbacks of flip-flop, What are advantages and dra...

What are advantages and drawbacks of flip-flop? Usually area of a Flip-flop for features in more than a latch. Power consumption is normally higher, because of the area and

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