Code for reading flow & generating serial output, Assembly Language

Assignment Help:

Assembly Code for Reading Flow & Generating Serial Output

The timer is timer 1 is set for the baud rate 9600, as the crystal used is of 11.0592 Hz.  Then the timer 1 is started by TR1. The program checks the ASCII switch, flow status pins and the respective flow subroutine starts and in the flow subroutine the overflow status is   checked as well as the MOV B ,#X   where X is the character used to be displayed in PC  is used to stored in the register B.  The subroutines returns and the Serial transmission routine is called for serial transmission. In serial transmission subroutine the status of 79H is checked if found enabled then the value of B is transferred in SBUF and followed by character 'L' to SBUF.

The details assembly code is as below:-

         ; Define value setting for Timer in using Generate Baud Rate in transfer data.     

                    MOV IE,#00000000B

                     MOV TMOD,#00100000B

                     MOV TL1,#0FDH

                     MOV TH1,#0FDH

                ; Define value setting for SCON Register that select mode 1

                     MOV SCON,#01010000B

                     SETB TR1  

 MOV   P3 , #0FFH   ; Define  Port 3  as input port

 START  : MOV A ,P3

 ANL A, #80h   ;  Masking of    BITs except P3.7

 CJNE  A ,#00h ,   OVER       ; TO CHECK THE  ASCII  SWITCH 

               CPL 79H     ;   

               OVER :  MOV  A ,P3

               ANL A, #1Ch   ;  Masking of    BITs FLOW RATE

    ACALL FLOW00     ;  FLOW RATE 0  SUBROUTINE 

    ACALL FLOW01 ;  FLOW RATE 1  SUBROUTINE

    ACALL FLOW02 ;  FLOW RATE 2  SUBROUTINE

    ACALL FLOW03;  FLOW RATE 3 SUBROUTINE

    ACALL FLOW04;  FLOW RATE 4  SUBROUTINE

     ACALL FLOW05;  FLOW RATE 5  SUBROUTINE

     ACALL FLOW06 ;  FLOW RATE 6  SUBROUTINE

     ACALL FLOW07 ;  FLOW RATE 7  SUBROUTINE

     JB   79H , SKIP     ;  CHECK FOR ENABLED OR DISABLED SERIAL COMMUNICATION

     ACALL STXD    ;     SERIAL DATA COMMUNICATION  TX

    SKIP :  SJMP   START 

; FLOW RATE   SUBROUTINES SECTION

FLOW00 :    CJNE  A,#00H ,  NEXT0       ;  FLOW RATE   0

MOV B ,#'0'

NEXT0 : RET

FLOW01:    CJNE  A ,#04H  ,  NEXT1       ; FLOW RATE   1

MOV B ,#'1'

NEXT2  : RET

;  SUBROUTINE FLOW RATE   3

FLOW03:    CJNE  A,#0CH ,  NEXT3       ; FLOW RATE   3

MOV B ,#'3'

NEXT3 :RET

;    SUBROUTINE FLOW RATE   4

FLOW04:    CJNE  A,#10H ,  NEXT4       ; FLOW RATE   4

MOV B ,#'4'

NEXT4 :RET

 

;     SUBROUTINE FLOW RATE   5

FLOW05:    CJNE  A, #14H  ,  NEXT5       ; FLOW RATE   5

MOV B ,#'5' 

Next5 :RET

;     SUBROUTINE FLOW RATE   6

FLOW06:    CJNE  A,#18H ,  NEXT6       ; FLOW RATE   6

MOV B ,#'6'

Next6 :RET

;      SIMILARLY SUBROUTINE FLOW RATE   7

 ;   TRANSMISSION SERIAL  SUBROUTINE STARTS 

STXD :           MOV SBUF,B

                     JNB TI,$

                     CLR TI

                     MOV SBUF,#'L'  ;  Sending L  After the flow Rate

                     JNB TI,$

                     CLR TI

     RET 

 END


Related Discussions:- Code for reading flow & generating serial output

8086, Write a program to mask bits D3D2D1D0 and to set bits D5D4 and to inv...

Write a program to mask bits D3D2D1D0 and to set bits D5D4 and to invert bits D7D6 of ax register

Lab Assignment, 1) Write an 80x86 assembly language program in EXE file for...

1) Write an 80x86 assembly language program in EXE file format to do the following tasks: a) Open and read the contents of a file into memory (use at least 1 kB). b) Sort the li

Assembly - Zombie Game using Irvine & Visual 2010, http://www.raritanval.ed...

http://www.raritanval.edu/uploadedFiles/faculty/cs/full-time/Brower/CISY256/2013Spring/CISY256%20Assembly%20Project.pdf

8086 assembly language, write and run a programme using 8086 assembly langu...

write and run a programme using 8086 assembly language that interchange the lower four bits of AL registered with upper four bits.

Add-arithmetic instruction-microprocessor, ADD:  Add :- This instruction ...

ADD:  Add :- This instruction adds an immediate contents of a memory location specified in the a register ( source ) or instruction to the contents of another register (destinat

Signal descriptions of 8086-microprocessor, Signal descriptions of 8086 : ...

Signal descriptions of 8086 : described below are common for the maximum andminimum mode bothdata lines AD15 -AD0: These are the time multiplexed andmemory I/O address. Addre

Minecraft/Terminal issues, I am running a small minecraft server off of my ...

I am running a small minecraft server off of my old mac mini, and am having a big issue. My computer isn''t very good, and even just running this server is an issue. I use a comma

Stand alone system - assembly language program, Develop an assembly languag...

Develop an assembly language program for the system and simulate it using MPLAB. From this produce a demo program (in Assembly language) that will run on the MatrixMultimedia Devel

Prepare the assembly code sequence, Problem (a) Prepare the assembly c...

Problem (a) Prepare the assembly code sequence for each of the four styles (accumulator, memory-memory, stack, load/store) of machine for the code fragment: A = B + C;

Project ideas, can u please give me ideas on Assembly Language Projects usi...

can u please give me ideas on Assembly Language Projects using Nasm

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