Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
04/25/06 05:03
Read: times


 
#114966 - Well, Can I Do This!
Responding to: ???'s previous message
$MOD51 ;I'm using an AT89C51
$DEBUG
$NOPAGING
$PAGEWIDTH(132)
================================================================
;Reset Code
================================================================

ORG 00H
SJMP INITIAL

================================================================
;Initialization Routine
================================================================

ORG 1BH
SETB P2.7 ;Turn on red LED
CLR P2.7 ;Turn off red LED
SETB P2.6 ;Turn on green LED
CLR P2.6 ;Turn off green LED

================================================================
;Main Routine
================================================================

Main: JB P2.3, NAND_G
JB P2.2, AND_G
JB P2.1, XOR_G
JB P2.0, OR_G
JB P0.6, NOR_G
JB P0.7, INVERT

================================================================
;Logic
================================================================

NAND_G: MOV P1.7, #0
MOV P1.6, #0
MOV P1.5, A
CJNE A, #1, R_LED

MOV P1.4, #0
MOV P1.3, #1
MOV P1.2, A
CJNE A, #1, R_LED

MOV P0.5, #1
MOV P0.4, #0
MOV P0.3, A
CJNE A, #1, R_LED

MOV P0.2, #1
MOV P0.1, #1
MOV P0.0, A
CJNE A, #0, R_LED

SETB P2.7
JMP MAIN

AND_G: MOV P1.7, #0
MOV P1.6, #0
MOV P1.5, A
CJNE A, #0, R_LED

MOV P1.4, #0
MOV P1.3, #1
MOV P1.2, A
CJNE A, #0, R_LED

MOV P0.5, #1
MOV P0.4, #0
MOV P0.3, A
CJNE A, #0, R_LED

MOV P0.2, #1
MOV P0.1, #1
MOV P0.0, A
CJNE A, #1, R_LED

SETB P2.7
JMP MAIN

OR_G: MOV P1.7, #0
MOV P1.6, #0
MOV P1.5, A
CJNE A, #0, R_LED

MOV P1.4, #0
MOV P1.3, #1
MOV P1.2, A
CJNE A, #1, R_LED

MOV P0.5, #1
MOV P0.4, #0
MOV P0.3, A
CJNE A, #1, R_LED

MOV P0.2, #1
MOV P0.1, #1
MOV P0.0, A
CJNE A, #1, R_LED

SETB P2.7
JMP MAIN

XOR_G: MOV P1.7, #0
MOV P1.6, #0
MOV P1.5, A
CJNE A, #0, R_LED

MOV P1.4, #0
MOV P1.3, #1
MOV P1.2, A
CJNE A, #1, R_LED

MOV P0.5, #1
MOV P0.4, #0
MOV P0.3, A
CJNE A, #1, R_LED

MOV P0.2, #1
MOV P0.1, #1
MOV P0.0, A
CJNE A, #0, R_LED

SETB P2.7
JMP MAIN

NOR_G: MOV P1.5, #0
MOV P1.6, #0
MOV P1.7, A
CJNE A, #1, R_LED

MOV P1.2, #0
MOV P1.3, #1
MOV P1.4, A
CJNE A, #0, R_LED

MOV P0.3, #1
MOV P0.4, #0
MOV P0.5, A
CJNE A, #0, R_LED

MOV P0.0, #1
MOV P0.1, #1
MOV P0.2, A
CJNE A, #0, R_LED

SETB P2.7
JMP MAIN

INVERT: MOV P1.7, #1
MOV P1.6, A
CJNE A, #0, R_LED

MOV P1.5, #1
MOV P1.4, A
CJNE A, #0, R_LED

MOV P1.3, #1
MOV P1.2, A
CJNE A, #0, R_LED

MOV P0.5, #1
MOV P0.4, A
CJNE A, #0, R_LED

MOV P0.3, #1
MOV P0.2, A
CJNE A, #0, R_LED

MOV P0.1, #1
MOV P0.0, A
CJNE A, #0, R_LED

SETB P2.7
JMP MAIN
================================================================
;Bad Chip Indicator
================================================================

R_LED: SETB P2.6
SJMP MAIN

List of 31 messages in thread
TopicAuthorDate
ASM Language            01/01/70 00:00      
   show us your thought            01/01/70 00:00      
      RE:            01/01/70 00:00      
         Software Design Description SDD            01/01/70 00:00      
   RTFM            01/01/70 00:00      
      Re:            01/01/70 00:00      
   Ok            01/01/70 00:00      
      Re:            01/01/70 00:00      
         two ways            01/01/70 00:00      
            RE;            01/01/70 00:00      
               Keypad - or DIP switch            01/01/70 00:00      
               BCD            01/01/70 00:00      
                  no such thing            01/01/70 00:00      
                     opps            01/01/70 00:00      
         Good for you            01/01/70 00:00      
            Well, Can I Do This!            01/01/70 00:00      
               Your program            01/01/70 00:00      
                  without some selection            01/01/70 00:00      
            It is a start            01/01/70 00:00      
               Oh, hoiw often do we see someone believi            01/01/70 00:00      
                  That or it is just Obvious to them            01/01/70 00:00      
                     and why should they assume it is to us            01/01/70 00:00      
                        SMS ?            01/01/70 00:00      
                           well - careful - yes, definitely with as            01/01/70 00:00      
   Circuit Cellar Built one about 1986            01/01/70 00:00      
   Maybe this will work            01/01/70 00:00      
      Why guessing?            01/01/70 00:00      
         also...stuck at 1 and stuck at 0 faults            01/01/70 00:00      
            RE:            01/01/70 00:00      
               Take it literally            01/01/70 00:00      
               RE:RE:            01/01/70 00:00      

Back to Subject List