Program yang diisi pada Mikrokontroler AT89S51 pada alat

3.7. Program yang diisi pada Mikrokontroler AT89S51 pada alat

;= = = = = = = = = = = = = = = = = = = = =; ; program pengendali peralat an elekt ronik ; ; author : m ayang c.s ; ; DII Fisika ; ;= = = = = = = = = = = = = = = = = = = = =; Ut ama: mov p0,0ffh ; isikan ke nilai 0ffh ke p0 call tunda ; panggil tunda ;== cek hidup lampu ==; Nyala: mov a,p3 ; isikan ke alamat a nilai yang m asuk ke p3 anl a,0fh ; kalikan nilai a dengan nilai 0fh cjne a,9,M ati ; bandingkan nilai a dengan nilai 9 jika ya, maka lompat ke rout ine run nyala sjmp Run_Nyala ;== cek mat i lampu ==; M at i: mov a,p3 ; isikan ke alamat a nilai yang m asuk ke p3 anl a,0fh ; kalikan nilai a dengan nilai 0fh cjne a,11,Nyala ; bandingkan nilai a dengan nilai 11 jika ya, m aka lom pat ke rout ine run mat i ljmp Run_M at i ;== hidup lampu ==; run_Nyala: call t unda call t unda call t unda call t unda call t unda call t unda call t unda Nyala_Nilai1: mov a,p3 anl a,0fh Universitas Sumatera Utara cjne a,1,Nyala_Nilai2 Set b P0.0 call t unda sjmp Nyala Nyala_Nilai2: mov a,p3 anl a,0fh cjne a,2,Nyala_Nilai3 Set b P0.1 call t unda sjmp Nyala Nyala_Nilai3: mov a,p3 anl a,0fh cjne a,3,Nyala_Nilai4 Set b P0.2 call t unda sjmp Nyala Nyala_Nilai4: mov a,p3 anl a,0fh cjne a,4,Nyala_Nilai5 Set b P0.3 call t unda sjmp Nyala Nyala_Nilai5: mov a,p3 anl a,0fh cjne a,5,Nyala_Nilai6 Set b P0.4 call t unda ljmp Nyala Nyala_Nilai6: mov a,p3 anl a,0fh cjne a,6,Nyala_Nilai7 Set b P0.5 call t unda ljmp Nyala Nyala_Nilai7: mov a,p3 anl a,0fh cjne a,7,Nyala_Nilai8 Set b P0.6 call t unda ljmp Nyala Nyala_Nilai8: Universitas Sumatera Utara mov a,p3 anl a,0fh cjne a,8,Nyala_Nilai9 call buka_pintu call t unda ljmp Nyala Nyala_Nilai9: mov a,p3 anl a,0fh cjne a,10,Nyala_Nilai1 mov p0,0ffh call t unda ljmp Nyala ;== mat i lampu ==; run_M at i: call t unda call t unda call t unda call t unda call t unda call t unda call t unda call t unda call t unda call t unda M at i_Nilai1: mov a,p3 anl a,0fh cjne a,1,M ati_Nilai2 Clr P0.0 call t unda ljmp Nyala M at i_Nilai2: mov a,p3 anl a,0fh cjne a,2,M ati_Nilai3 Clr P0.1 call t unda ljmp Nyala M at i_Nilai3: mov a,p3 anl a,0fh cjne a,3,M ati_Nilai4 Universitas Sumatera Utara Clr P0.2 call t unda ljmp Nyala M at i_Nilai4: mov a,p3 anl a,0fh cjne a,4,M ati_Nilai5 Clr P0.3 call t unda ljmp Nyala M at i_Nilai5: mov a,p3 anl a,0fh cjne a,5,M ati_Nilai6 Clr P0.4 call t unda ljmp Nyala M at i_Nilai6: mov a,p3 anl a,0fh cjne a,6,M ati_Nilai7 Clr P0.5 call t unda ljmp Nyala M at i_Nilai7: mov a,p3 anl a,0fh cjne a,7,M ati_Nilai8 Clr P0.6 call t unda ljmp Nyala M at i_Nilai8: mov a,p3 anl a,0fh cjne a,8,M ati_Nilai9 call t utup_pintu call t unda ljmp Nyala M at i_Nilai9: mov a,p3 anl a,0fh cjne a,10,M ati_Nilai1 mov p0,80h call t unda ljmp Nyala ; = = = rout ine t unda = = = ; Universitas Sumatera Utara t unda: mov r7,255 t nd: mov r6,255 djnz r6, djnz r7,tnd ret Universitas Sumatera Utara

3.8. FLOWCHART