Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Projekt - wykorzystanie licznika obiektów do zliczania ilości przechodzących przez moduł M-03 przedmiotów.
- $include(naglowek.inc)
- ZASILANIE EQU P1.6
- CSAD EQU 10H
- CSMX EQU 18H
- CSDS EQU 30H
- CSDB EQU 38H
- TMOD_SET EQU 00000001B
- DELAY_US EQU 810EH
- TH0_SET EQU 256-180
- TL0_SET EQU 0
- LJMP START
- ORG 0BH
- ACALL PODPROGRAM
- RETI
- ORG 100H
- // ------------------ A/C etc ---------------------------
- START:
- MOV TMOD,#00000001B
- MOV TL0,#TL0_SET
- MOV TH0,#TH0_SET
- SETB TR0 // START TIMERA
- SETB EA // WLACZENIE PRZERWAN GLOBALNYCH
- SETB ET0// WLACZENIE PRZERWAN OD TIMERA0
- MOV R0, #CSMX
- CLR A
- MOVX @R0, A // WYBOR WEJSCIA 0 MULTIPLEKSERA
- MOV R1, #CSAD
- MOV R0, #CSDS
- MOV A, #00010101b
- MOVX @R0, A // WYBOR WSKAZNIKA 7 SEGMENTOWEGO
- MOV R0, #CSDB
- LCALL START2 // tu cos nie gra!
- MOVX @R0, A
- STEROWANIE_LED:
- CLR ET0
- CLR ZASILANIE
- MOV A,R5
- ADD A, #1
- LCALL DELAY_US
- SETB ZASILANIE
- MOV A, #0
- LCALL DELAY_US
- SETB ET0
- LJMP STEROWANIE_LED
- PODPROGRAM:
- MOV TH0, #TH0_SET
- LCALL LCD_CLR
- MOVX @R1, A
- MOV A, #1
- LCALL DELAY_US
- MOVX A, @R0
- MOV R5, A
- MOV B, #100
- DIV AB
- JZ DALEJ
- ADD A, #'0'
- LCALL WRITE_DATA
- DALEJ:
- MOV A,B
- MOV B, #10
- DIV AB
- SWAP A
- ADD A,B
- LCALL WRITE_HEX
- RET
- // ----------------------- Licznik obiektow ----------------------
- //0FF2BH & 0FF2AH - adresy do diód zbierajacych
- START2:
- MOV R7, #0 // wpisanie do R7 wartosci 0
- MOV DPTR, #0FF2BH // (adresowanie posrednie) do rejestru DPTR przenoszenie wartosci 0FF2BH
- MOVX @DPTR, A // DPTR - dwubajtowy wskaźnik danych
- LCD:
- LCALL LCD_CLR
- MOV A, R7
- LCALL WRITE_HEX
- MOV DPTR, #0FF2AH // j/w
- NIC:
- MOVX A, @DPTR
- JNB ACC.1,LEWO // ACC.1 akumulator
- JB ACC.2, NIC // ACC.2 akumulator
- PRAWO:
- MOVX A, @DPTR
- JB ACC.1, PRAWO
- PRAWO1:
- MOVX A, @DPTR
- JNB ACC.2, PRAWO1
- PRAWO2:
- MOVX A, @DPTR
- JNB ACC.1, PRAWO2
- DEC R7
- LJMP LCD
- LEWO:
- MOVX A, @DPTR
- JB ACC.2, LEWO
- LEWO1:
- MOVX A, @DPTR
- JNB ACC.1, LEWO1
- LEWO2:
- MOVX A, @DPTR
- JNB ACC.2, LEWO2
- INC R7
- LJMP LCD
- END
Add Comment
Please, Sign In to add comment