Code for reading flow & generating led output, Assembly Language

Code for Reading Flow & Generating LED Output

The code starts with the scanning of the PORT 3, for reading the flow status to check for various flow conditions and compare to start subroutines for respective flow. The overflow conditions are checked in respective subroutines for LED driving i.e. In flash mode or continuous, the LED are L1, L2, L3 & L4 are used for various combinations.

The details of program code are below:-

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

START : MOV A ,P3

      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

     SJMP   START 

; FLOW RATE   SUBROUTINES SECTION

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

MOV A, P3

ANL A,#20h

CJNE A ,#00H ,  FLOWOV      ; LED 1   FLASHING 1Hz

SETB P1.0 ;  LED 1 ON

ACALL DELAY   ;   500ms   DELAY   

CLR P1.0    ; LED 1 OFF

ACALL DELAY   ; 500ms   DELAY

RET

FLOWOV :  

SETB P1.0     ; LED 1 ON  ( 0 HZ)

NEXT0 : RET

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

MOV A, P3

ANL A,#20h

CJNE A ,#00H ,  FLOWOV1

SETB P1.0 ;  LED 1 ON

ACALL DELAY   ;   500ms   DELAY   

CLR P1.0    ; LED 1 OFF

ACALL DELAY   ; 500ms   DELAY

RET

FLOWOV1 :  

SETB P1.0     ; LED 1 ON ( 0 HZ)

NEXT1 :RET

 ;    SUBROUTINE FLOW RATE   2

FLOW02:    CJNE  A,#08H ,  NEXT2       ; FLOW RATE   2

MOV A, P3

ANL A,#20h

CJNE A ,#00H ,  FLOWOV2  ; 

MOV P1 ,#03H   ; LED 1 , LED 2  ON     FLASHING 1 Hz

ACALL DELAY   ;   500ms   DELAY

MOV P1 ,#00H   ; LED 1 , LED 2   OFF

ACALL DELAY ; 500ms   DELAY

RET

FLOWOV2 :  

MOV P1 ,#03H   ; LED 1 , LED 2  ON

NEXT2  : RET

  ;  SUBROUTINE FLOW RATE   3

;    SUBROUTINE FLOW RATE   4

;     SUBROUTINE FLOW RATE   5

;     SUBROUTINE FLOW RATE   6

;    SUBROUTINE FLOW RATE   7

 

Posted Date: 3/5/2013 5:07:21 AM | Location : United States







Related Discussions:- Code for reading flow & generating led output, Assignment Help, Ask Question on Code for reading flow & generating led output, Get Answer, Expert's Help, Code for reading flow & generating led output Discussions

Write discussion on Code for reading flow & generating led output
Your posts are moderated
Related Questions
How to print strings in Right Triangle form?

Open notepad and enter the code for a program that calculates the following arithmetic expression: x = a + b + c - d - e + f The operands a, b, c, d, e, f, and x should be declared

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

A good starting point for your program is the toupper.asm program shown in class. It already queries the user for input and sets up a loop that looks at each character of the input

Program is written but has errors returning values from the procedure.

1. Write a program that calculates the Fibonacci series: 1, 1, 2, 3, 5, 8, 13, ….. (Except for the first two numbers in the sequence, each number is the sum of the preceding two n

Physical Memory Mapped I/O and Port I/O : CPU controlled I/O comes in 2 ways. Simply the difference is whether we utilize the normal memory addresses for I/O, this is mention

Write a MC68H12 assembly language program to find the largest number in an array of ten 8-bit numbers. The array is stored in memory locations starting at address $1100. Use branch

assempbly language routine that takes an array named A containing n bytes of postive numebrs and fills two arranys, array B containing n words and array C containing n long words

ASSUME: Assume Logical Segment Name:- The ASSUME directive which is used to inform the assembler, the specified names of the logical segments to be consider for different segme