[ Bojan11 @ 19.07.2006. 15:03 ] @
Pisan je u asembleru A51 , i trebao bi raditi komplement na portu
P1.0...paliti-gasiti led diodu. Pisan je za DS5000T 32-16

CSEG ;tu počinje program


Org 00h ;programski brojač počinje brojati od nule("0")

LJMP INIC ;inicjalizacija timera

Org 000Bh ;na ovoj adresi počinje obrada prekida od preliva timera
1

LJMP PRELIV ;ovo će se dogoditi kad dođe do preliva timera 0

Org 1000h ;ovdje počinje inicjalizacija
INIC:

MOV TMOD, #02h ;koristit ću timer 0 u načinu rada 2 (auto-reload)
SETB ET0 ;omogućiti preliv od timera 0 (preliv
obilježen sa TF0)

MOV B, #255 ;toliko puta ćeš mi izvrtit timer od 250 us
SETB TR0 ;start timera 0

CEK: ;petlja čekalica
SJMP CEK ;čekanje da timer okine prekid (tu počinje prekid
programa odnosno tu se postavlja TF0)

PRELIV:
DJNZ B, DALJE ;ide se vrtiti u krug 255 puta
CPL P1.0 ;komplementiraj bit 1
MOV B, #255 ;toliko puta ćeš mi izvrtit timer od 250 us
RETI ;vračamo se u petlju čekalicu
DALJE:
RETI ;na novi prekid timera 0 u petlju čekalicu

END ;kraj programa