Merakit PC


Sebelum merakit sebuah PC ada beberapa tips yang perlu diperhatikan, diantaranya adalah :

1. Hindari merakit dalam keadaan berkeringat, karena kemungkinan keringat akan menetes keperalatan yang sedang kita rakit tanpa kita ketahui, lalu saat kita menyalakan power supply maka terjadilah hubungan arus pendek dan dapat merusak hasil rakitannya.

2. Hindari memegang atau menyentuh langsung kaki prossesor yang ada termasuk chipset. Karena dikhawatirkan adanya listrik statis yang dimiliki tubuh kita akan merusak komponen tersebut. Untuk mencegah hal ini kita harus meng-ground-kan tubuh kita dengan cara memegang casing saat power dihidupkan.
3. Pada setiap tahap perakitan sebalum menambahkan komponen yang baru, power supply harus dimatikan. Memasang komponen pada saat power supply hidup akan merusak komponen yang akan di pasang dan komponen lainnya.
4. Jangan lupa menyiapkan peralatan dan bahan-bahan sebelum memulai perakitan, agar seluruh kegiatan perakitan tidak terhambat pada kemungkinan kurangnya peralatan yang ada.
5. Hindari pemasangan komponen harddisk dengan kasar, karena dapat merusak harddisk tersebut.


Alat dan BahanAlat :


1. Obeng Plus (+)

2. Obeng Minus (-)
3. Tang Lancip (Capit Buaya)
4. Multimeter/Multitester
5. Pinset
6. Gelang Anti Static


Bahan :


1. Motherboard
Motherboard adalah papan induk atau papan rangkaian utama pada komputer, yang berisi rangkaian elektronik yang berfungsi sebagai pusat pengolahan.
2. Processor
Processor adalah komponen komputer yang paling utama karena sangat menentukan baik buruknya kinerja komputer (otaknya komputer). Berfungsi sebagai pengolah data didalam sistem komputer.
3. Heatsink (Kipas)
Heatsink adalah kipas pendingin processor dan komponen yang lain, karena suhu di processor sangat panas sekali.
4. Harddisk
Harddisk adalah sebuah komponen perangkat keras yang menyimpan data sekunder dan berisi  piringan magnetis. Berfungsi sebagai penyimpan data untuk dapat meningkatkan kinerja komputer.
5. Memory (RAM)
RAM (Random Acces Memory) adalah Internal Memory, yang berfungsi untuk menyimpan data.
6. Floppy Disk Drive (FDD)
FDD adalah sebuah perangkat penyimpanan yang berfungsi untuk menghubungkan perpindahan data, pembacaan data atau “ penulisan” data dari PC kedalam sebuah Disket.
7. CD/DVD Drive
CD/DVD ROM adalah sebuah perangkat penyimpanan yang berfungsi untuk menghubungkan data, perpindahan data, pembacaan data atau “ penulisan” data dari PC kedalam sebuah CD/Kaset
8. Kartu Grafis (VGA Card)
VGA Card (Video Graphics Adapter) adalah sebuah komponen yang berfungsi untuk menerjemahkan keluaran komputer ke monitor. Untuk proses desain grafis atau bermain permainan video, diperlukan kartu grafis yang berdaya tinggi.
9. Sound Card
Sound Card adalah sebuah perangkat yang berbentuk lempengan PCB dan mampu mengolah serta menghasilkan suara. Bertugas untuk menunjang fungsi suara dalam PC multimedia.
10. Power Supply
Power Supply adalah sebuah perangkat komputer yang berfungsi untuk mengalirkan listrik ke setiap bagian komputer agar dapat berjalan.
11. Casing
12. Keyboard & Mouse
13. Monitor


Langkah-langkah PerakitanBerikut ini adalah langkah-langkah perakitan CPU.


1. Letakkan motherboard pada tempat yang datar dan jangan lupa beri alas dengan permukaan yang lembut agar motherboard tidak tergores atau putus jalur komponennya.


 2. Pasang processor pada motherboard. Pemasangan processor usahakan diluar casing agar memudahkan anda dalam pemasangan processor tersebut. Pemasangan processor disesuaikan dengan jenis processor dan motherboard yang digunakan.

 3. Setelah prosessor terpasang kemudian lakukan pemasangan kipas processor.

 4. Pasang RAM pada slot RAM yang tersedia pada motherboard. Pemasangan RAM pada slot harus mengikuti aturan karena apabila terjadi kesalahan dalam pemasangan dapat membuat RAM dan motherboard rusak atau terbakar.

5. Siapkan casing untuk pemasangan semua komponen yang sudah di sediakan.
6. Setelah menyiapkan casing pasanglah catu daya atau power supply seperti gambar dibawah ini.

7. Setelah itu masukkan motherboard pada casing secara perlahan agar motherboard tidak rusak. Pada saat pemasangan motherboard, perhatikan konektor mouse, keyboard, serial, vga dan sound agar terpasang dengan panel yang terdapat pada casing dengan benar.
8. Kemudian bautlah motherboard dengan dudukannya agar kuat dan tidak goyang.
9. Di contoh ini kita menggunakan motherboard yang sudah dilengkapi dengan VGA, Sound Card, dan LAN Card yang sudah menjadi satu dalam motherboard. Komponen yang sudah menjadi satu dengan motherboard disebut dengan komponen ON BOARD.
10. Setelah itu pasanglah CD ROM pada rak yang terdapat pada casing, dengan cara memasukkannya dari depan.
11. Kemudian bautlah CD ROM yang telah terpasang tadi dangan raknya agar tidak goncang. Kemudian pasangkan kabel power dan kabel data atau kabel ATA CD ROM pada motherboard.
12. Pasanglah harddisk pada rak yang terdapat pada casing dengan perlahan agar harddisk tidak terbentur. Karena komponen harddisk ini sangat rawan tehadap goncangan. Kemudian baut dengan kencang agar tidak goyang.
13. Setelah harddisk terpasang kemudian pasanglah kabel data atau kabel ATA harddisk pada motherboard dan pada harddisk itu sendiri.
14. Pasang konektor power supply pada tempatnya yang terdapat di motherboard. Jika pemasangan ini salah maka akan mengakibatkan kerusakan yang fatal pada motherboard.
15. Kemudian tancapkan konektor power / restart / hdd lad / power lad dan pad konektor lainnya yang terdapat di motherboard seperti gambar berikut.

16. Setelah kita selesai merakit semua komponen kemudian pasang penutup casing dan perakitan tersebut harus kita tes apakah berhasil atau tidak. Pasang kabel port VGA ke monitor kemudian power monitor dan CPU ke saklar listrik, selanjutnya hidupkan bila komputer dapat BOOTING maka perakitan berhasil. Bila tidak dapat BOOTING berarti perakitan belum sempurna, maka harus disempurnakan terlebih dahulu bila nanti ingin menginstal Sistem Operasi nya dengan cara cek kembali semua komponen yang telah terpasang apakah sudah benar atau tidak.
Semoga Bermanfaat Sumber http:tn-robby.blogspot.com/2012/05/langkah-langkah-merakit-pc-beserta.html

Read more >>

Digital Clock Dot Matrix


Digital Clock dengan menggunakan led dot matrix



Daftar Komponen :

   IC AT89C51

   IC 74164
   Resistor 10k
   Capasitor 33p  
   Dot matrix
   Kabel Penghubung
   Crystal ( x-tal )
   Sumber tegangan 5v
   Elco 47 uf 16 v
   Respack



tidak usah panjang lebar ini source codenya :

;=================================================
;PROGRAM 4.1:

;=================================================



;PORT0=DATA SEGMEN
;PORT2=DIGIT SELECT
;PORT 3.2=SET JAM
;PORT 3.3=SET MENIT
;PORT 3.4=SET DETIK

$MOD51
    SEGM    EQU    P0
    DGSEL    EQU    P2
    DSEG
    ORG    50H
JAM:           DS 1
MENIT:       DS 1
DETIK:        DS 1
DTK20:        DS 1
TSCAN:       DS 1
DISPBUF:    DS 32
S_DTK     BIT     P3.0
S_MNT    BIT    P3.2
S_JAM     BIT     P3.4

BARIS    EQU      P0
DTA        BIT       P2.0
MRST     BIT       P2.2
CLOCK    BIT     P2.4
JKL    EQU    40

    CSEG
    ORG 0H
    JMP START

    ORG 0BH
    JMP TIMER0

START:    MOV JAM,#0
    MOV MENIT,#0
    MOV DETIK,#0
    MOV DPTR,#TBL
    MOV TMOD,#11H
    MOV TH0,#HIGH(-50000)
    MOV TL0,#LOW(-50000)
    MOV DTK20,#20
    SETB EA
    SETB ET0
    SETB TR0
MAIN:   
    MOV TSCAN,#100

LOOP:   
    CALL DISPLAY
    DJNZ TSCAN,LOOP
    CALL SCAN_INPUT
    JMP    MAIN
;SUB PROGRAM
TIMER0:   
    MOV TH0,#HIGH(-5000)
    MOV TL0,#LOW(-5000)
    MOV R4,DTK20
    CJNE R4,#10,TXX
    MOV DISPBUF+12,#107
    MOV DISPBUF+26,#107
    
TXX:   
    CJNE R4,#20,TXY
    MOV DISPBUF+12,#127
    MOV DISPBUF+26,#127

TXY:   
    DJNZ DTK20,X_TIM0
    MOV DTK20,#20
    INC DETIK
    MOV R4,DETIK
    CJNE R4,#60,X_TIM0
    MOV DETIK,#0
    INC MENIT
    MOV R4,MENIT
    CJNE R4,#60,X_TIM0
    MOV MENIT,#0
    INC JAM
    MOV R4,JAM
    CJNE R4,#24,X_TIM0
    MOV JAM,#0
X_TIM0:    RETI

SCAN_INPUT:
P_JAM:    JB S_JAM,P_MNT
    INC JAM
    MOV A,JAM
    CJNE A,#24,EXIT_SCAN
    MOV JAM,#0
    
P_MNT:    JB S_MNT,P_DTK
    INC MENIT
    MOV A,MENIT
    CJNE A,#60,EXIT_SCAN
    MOV MENIT,#0

P_DTK:    JB S_DTK,EXIT_SCAN
    INC DETIK
    MOV A,DETIK
    CJNE A,#60,EXIT_SCAN
    MOV DETIK,#0
EXIT_SCAN: RET

DISPLAY:CALL CONVERT
    MOV    R0,#DISPBUF
    CALL    RST
    MOV    R6,#0
NKOLOM:    MOV    A,@R0
    MOV    BARIS,A
    CALL   TUNDA
    MOV    BARIS,#127
    CALL   CLK
    INC      R6
    INC      R0
    CJNE   R6,#JKL,NKOLOM

SDATA:   
    SETB    DTA
    CALL   CLK
    CLR     DTA
    RET

RST:   
    CLR    MRST
    NOP
    SETB   MRST
    CALL  SDATA
    RET

CLK:  
    SETB    CLOCK
    NOP
    CLR      CLOCK
    RET

TUNDA:   
    MOV    B,#85
    DJNZ    B,$
    RET

CONVERT:
    MOV    DPTR,#TBL
    MOV    R0,#DISPBUF
    MOV    R1,#JAM
N_CONV:   
    MOV    A,@R1
    MOV    B,#10
    DIV      AB
    PUSH   B
    MOV    B,#6
    MUL    AB
    MOV    B,#6
CON1:   
    PUSH    ACC
    MOVC    A,@A+DPTR
    MOV    @R0,A
    INC    R0
    POP    ACC
    INC    A
    DJNZ    B,CON1
    POP B
    MOV A,#6
    MUL AB
    MOV B,#6
CON2:   
    PUSH ACC
    MOVC A,@A+DPTR
    MOV @R0,A
    INC R0
    POP ACC
    INC A
    DJNZ B,CON2
    INC R0
    MOV @R0,#127
    INC R0
    INC R1
    CJNE R1,#detik+1,n_conv
    RET
DELAY:    MOV R6,#10
DLY:       MOV R5,#150
    DJNZ R5,$
    DJNZ R6,DLY
    RET
;angka
;0123456789=10 chr
tbl:   
    db 65,46,54,58,65,127            ;0
    db 127,61,0,63,127,127          ;1
    db 29,46,54,54,57,127            ;2
    db 93,54,54,54,73,127            ;3
    db 103,107,109,0,111,127      ;4
    db 88,58,58,58,70,127            ;5
    db 67,53,54,54,79,127            ;6
    db 126,14,118,122,124,127    ;7
    db 73,54,54,54,73,127            ;8
    db 121,54,54,86,97,127          ;9
end

Kekurangan dari ini tidak ada RTCnya sehingga kalau listrik padam kita harus set ulang .Selamat mencoba....
Read more >>

Police Light


Berikut ini adalah schematic police light sederhana yang menggunakan ic 555 dan 4017 dan untuk tegangan kerjanya menggunakan 12 Volt DC.Jika ingin mencobanya bisa menggunakan simulasi di proteus dulu sebelum membuat circuit realnya......selamat mencoba.
Read more >>

Source Code Jam Digital AT89S52 + RTC DS1307

Berikut adalah source code jam digital AT89S52 + RTC DS1307.Untuk membuatnya dalam circuit nyata perhatikan source code, disitu ada port - port apa saja yang digunakan pada ic mikrokontrolernya .Contoh untuk tombol menu terdapat di port P2.1 ic mikrokontroler , agar lebih mudah membuatnya coba buat dulu di software proteus skematiknya dengan membaca source codenya.Setelah jadi di proteus compile source codenya dan coba simulasikan .

;==============================================================;
; Jam digital dengan rtc ds1307 + cd4094

;==============================================================;
; INISIALISASI PORT
;==============================================================;
Down BIT P2.2
Menu bit p2.1
Up BIT P2.0
CD4094_CP BIT P3.2
CD4094_D BIT P3.1
CD4094_Str BIT P3.0
I2C_SDA BIT P1.1
I2C_SCL BIT P1.0
led bit p3.3
buzzer bit p3.4
LEDDIGIT1 DATA 30H
LEDDIGIT2 DATA 31H
LEDDIGIT3 DATA 32H
LEDDIGIT4 DATA 33H
LEDDIGIT5 DATA 34H
LEDDIGIT6 DATA 35H
LEDDIGIT7 DATA 36H
LEDDIGIT8 DATA 37H
LEDDIGIT9 DATA 38H
LEDDIGIT10 DATA 39H
LEDDIGIT11 DATA 3AH
LEDDIGIT12 DATA 3BH
LEDDIGIT13 DATA 3CH
LEDDIGIT14 DATA 3DH
puluhan1 DATA 3eh
detikan data 3fh
PULUHAN DATA 40H
RTCDETIK DATA 41H ;00
RTCMENIT DATA 42H ;01
RTCJAM DATA 43H ;02
RTCHARI DATA 44H ;03
RTCTANGGAL DATA 45H ;04
RTCBULAN DATA 46H ;05
RTCTAHUN DATA 47H ;06
RTCCONTROL DATA 48H ;07
DECL EQU 49H
DECH EQU 4AH
TMP EQU 4BH
;==============================================================;
; PROGRAM UTAMA
;============================================================;
ORG 00H
setb menu
setb up
setb down
PROGRAMLOOP:
CALL READALLRTC
mov detikan,rtcjam
mov puluhan1,#0
mov puluhan,rtcdetik
LOOP: JB MENU,Loop1
call tunda1detik
call tunda1detik
CALL READALLRTC
JMP EDIT_RTC
loop1: call readallrtc
call streamrtc
call sendmsgled
sjmp loop
;==============================================================;
; setting waktu
;==============================================================;
EDIT_RTC: CLR CD4094_CP
CLR CD4094_STR
ACALL CLRDISPLED
MOV A,#0
ACALL CD4094_SHIFT
MOV A,#0
ACALL CD4094_SHIFT
MOV A,#0
ACALL CD4094_SHIFT
MOV A,#0
ACALL CD4094_SHIFT
MOV A,LEDDIGIT5
ACALL CD4094_SHIFT
MOV A,LEDDIGIT6
ACALL CD4094_SHIFT
SETB CD4094_STR
CLR CD4094_STR
CALL TUNDA1DETIK
CALL STREAMRTC
UP_JAM: JB UP,DOWN_JAM
call tunda1detik
CALL DELAY250US
JNB UP,$
MOV A,RTCJAM
CJNE A,#23H,UP_JAM2
MOV A,#0
JMP UP_JAM3
UP_JAM2: ADD A,#1
UP_JAM3: DA A
MOV RTCJAM,A
CALL TULIS_RTC_JAM
JMP EDIT_RTC
DOWN_JAM: JB DOWN,CEK_MENIT
call tunda1detik
CALL DELAY250US
JNB DOWN,$
MOV A,RTCJAM
MOV DPTR,#TABEL_DEC
MOVC A,@A+DPTR
DEC A
CJNE A,#0FFH,DOWN_JAM2
MOV A,#23
DOWN_JAM2: MOV DPTR,#TABEL_HEX
MOVC A,@A+DPTR
MOV RTCJAM,A
CALL TULIS_RTC_JAM
JMP EDIT_RTC
CEK_MENIT: JB MENU,EDIT_RTC
call tunda1detik
CALL DELAY250US
JNB MENU,$
CEK_MENIT_2:CLR CD4094_CP
CLR CD4094_STR
ACALL CLRDISPLED
MOV A,#0
ACALL CD4094_SHIFT
MOV A,#0
ACALL CD4094_SHIFT
MOV A,LEDDIGIT3
ACALL CD4094_SHIFT
MOV A,LEDDIGIT4
ACALL CD4094_SHIFT
MOV A,#0
ACALL CD4094_SHIFT
MOV A,#0
ACALL CD4094_SHIFT
SETB CD4094_STR
CLR CD4094_STR
CALL STREAMRTC
CALL TUNDA1DETIK
UP_MENIT: JB UP,DOWN_MENIT
call tunda1detik
CALL DELAY250US
JNB UP,$
MOV A,RTCMENIT
CJNE A,#59H,UP_MENIT2
MOV A,#0
JMP UP_MENIT3
UP_MENIT2: ADD A,#1
UP_MENIT3: DA A
MOV RTCMENIT,A
CALL TULIS_RTC_MENIT
JMP CEK_MENIT_2
DOWN_MENIT: JB DOWN,KELUAR1
call tunda1detik
CALL DELAY250US
JNB DOWN,$
MOV A,RTCMENIT
MOV DPTR,#TABEL_DEC
MOVC A,@A+DPTR
DEC A
CJNE A,#0FFH,DOWN_MENIT2
MOV A,#59
DOWN_MENIT2:MOV DPTR,#TABEL_HEX
MOVC A,@A+DPTR
MOV RTCMENIT,A
CALL TULIS_RTC_MENIT
JMP CEK_MENIT_2
KELUAR1: JB MENU,CEK_MENIT_2
call tunda1detik
CALL DELAY250US
JNB MENU,$
CALL TULIS_RTC_DETIK
mov detikan,rtcjam
JMP LOOP
;==============================================================;
; HEXA KE DESIMAL
;==============================================================;
TABEL_HEX:
DB 00H,01H,02H,03H,04H,05H,06H,07H,08H,09H,10H
DB 11H,12H,13H,14H,15H,16H,17H,18H,19H,20H
DB 21H,22H,23H,24H,25H,26H,27H,28H,29H,30H
DB 31H,32H,33H,34H,35H,36H,37H,38H,39H,40H
DB 41H,42H,43H,44H,45H,46H,47H,48H,49H,50H
DB 51H,52H,53H,54H,55H,56H,57H,58H,59H,60H
DB 61H,62H,63H,64H,65H,66H,67H,68H,69H,70H
DB 71H,72H,73H,74H,75H,76H,77H,78H,79H,80H
DB 81H,82H,83H,84H,85H,86H,87H,88H,89H,90H
DB 91H,82H,93H,94H,95H,96H,97H,98H,99H
TABEL_DEC:
DB 00,01,02,03,04,05,06,07,08,09,00,00,00,00,00,00
DB 10,11,12,13,14,15,16,17,18,19,00,00,00,00,00,00
DB 20,21,22,23,24,25,26,27,28,29,00,00,00,00,00,00
DB 30,31,32,33,34,35,36,37,38,39,00,00,00,00,00,00
DB 40,41,42,43,44,45,46,47,48,49,00,00,00,00,00,00
DB 50,51,52,53,54,55,56,57,58,59,00,00,00,00,00,00
DB 60,61,62,63,64,65,66,67,68,69,00,00,00,00,00,00
DB 70,71,72,73,74,75,76,77,78,79,00,00,00,00,00,00
DB 80,81,82,83,84,85,86,87,88,89,00,00,00,00,00,00
DB 90,91,82,93,94,95,96,97,98,99,00,00,00,00,00,00
;==============================================================;
; TAMPILAN 7SEGMENT
;==============================================================;
SENDMSGLED: CLR CD4094_CP
CLR CD4094_STR
ACALL CLRDISPLED
MOV A,LEDDIGIT1
ACALL CD4094_SHIFT
MOV A,LEDDIGIT2
ACALL CD4094_SHIFT
MOV A,LEDDIGIT3
ACALL CD4094_SHIFT
MOV A,LEDDIGIT4
ACALL CD4094_SHIFT
MOV A,LEDDIGIT5
ACALL CD4094_SHIFT
MOV A,LEDDIGIT6
ACALL CD4094_SHIFT
SETB CD4094_STR
CLR CD4094_STR
RET
CLRDISPLED: MOV A,#0FFH
CD4094_SHIFT: MOV R4,#8
CD4094_SHLOOP:RLC A
MOV CD4094_D,C
SETB CD4094_CP
CLR CD4094_CP
DJNZ R4,CD4094_SHLOOP
RET
;==============================================================;
; DELAY
;==============================================================;
TUNDA1DETIK: MOV R7,#1
TUNDA1DETIKL2: MOV R6,#100
TUNDA1DETIKL1: MOV R5,#230
DJNZ R5,$
DJNZ R6,TUNDA1DETIKL1
DJNZ R7,TUNDA1DETIKL2
RET
Tunda_1_2_Detik: MOV R7,#12
jmp Tunda1DetikL2
;==============================================================;
DELAY250US: PUSH ACC
MOV A,#250
DJNZ ACC,$
POP ACC
RET
;==============================================================;
; DATA TAMPILAN 7 SEGMENT
;==============================================================;
GETLEDNUM: INC A
MOVC A,@A+PC
RET
CHARLED0:
DB 0f6h ;0
DB 082h ;1
DB 0d5h ;2
DB 0c7h ;3
DB 0a3h ;4
DB 067h ;5
DB 077h ;6
DB 0c2h ;7
DB 0ffh ;8
DB 0e7h ;9
DB 10001000B ;A
DB 10000011B ;B
DB 11000110B ;C
DB 10100001B ;D
DB 10000110B ;E
DB 10001110B ;F
;==============================================================;
; AMBIL DATA RTC SIMPAN KE RAM MIKRO
;==============================================================;
STREAMRTC: MOV A,RTCDETIK
SWAP A
ANL A,#00FH
ACALL GETLEDNUM
MOV LEDDIGIT2,A
MOV A,RTCDETIK
ANL A,#00FH
ACALL GETLEDNUM
MOV LEDDIGIT1,A
MOV A,RTCMENIT
SWAP A
ANL A,#00FH
ACALL GETLEDNUM
MOV LEDDIGIT4,A
MOV A,RTCMENIT
ANL A,#00FH
ACALL GETLEDNUM
MOV LEDDIGIT3,A
MOV A,RTCJAM
SWAP A
ANL A,#00FH
ACALL GETLEDNUM
MOV LEDDIGIT6,A
MOV A,RTCJAM
ANL A,#00FH
ACALL GETLEDNUM
MOV LEDDIGIT5,A
ret
;=================;
; TULIS / BACA RTC
;==============================================================;
tulis_sqw: MOV A,#11010000B
MOV B,#07H ;ALAMAT
MOV R1,#10010000b ;DATANYA
ACALL I2C_WRITEBYTE
JC ERROR_sqw_RTC
RET
ERROR_sqw_RTC: JMP TULIS_sqw
TULIS_RTC_BULAN: MOV A,#11010000B
MOV B,#05H ;ALAMAT
MOV R1,RTCBULAN ;DATANYA
ACALL I2C_WRITEBYTE
JC ERROR_BULAN_RTC
RET
ERROR_BULAN_RTC: JMP TULIS_RTC_BULAN
TULIS_RTC_TANGGAL:MOV A,#11010000B
MOV B,#04H ;ALAMAT
MOV R1,RTCTANGGAL ;DATANYA
ACALL I2C_WRITEBYTE
JC ERROR_TANGGAL_RTC
RET
ERROR_TANGGAL_RTC:JMP TULIS_RTC_TANGGAL
TULIS_RTC_TAHUN: MOV A,#11010000B
MOV B,#06H ;ALAMAT
MOV R1,RTCTAHUN ;DATANYA
ACALL I2C_WRITEBYTE
JC ERROR_TAHUN_RTC
RET
ERROR_TAHUN_RTC: JMP TULIS_RTC_TAHUN
TULIS_RTC_JAM: MOV A,#11010000B
MOV B,#02H ;ALAMAT
MOV R1,RTCJAM ;DATANYA
ACALL I2C_WRITEBYTE
JC ERROR_JAM_RTC
RET
ERROR_JAM_RTC: JMP TULIS_RTC_JAM
TULIS_RTC_MENIT: MOV A,#11010000B
MOV B,#01H ;ALAMAT
MOV R1,RTCMENIT ;DATANYA
ACALL I2C_WRITEBYTE
JC ERROR_MENIT_RTC
RET
ERROR_MENIT_RTC: jMP TULIS_RTC_MENIT
TULIS_RTC_DETIK: MOV A,#11010000B
MOV B,#00H ;ALAMAT
MOV R1,#00H ;DATANYA
ACALL I2C_WRITEBYTE
JC ERROR_DETIK_RTC
RET
ERROR_DETIK_RTC: JMP TULIS_RTC_DETIK
BACA_RTC: MOV A,#11010001B ;SLAVEADD DS1307
MOV B,#00H ;ALAMAT 00H
ACALL I2C_READBYTE
JC ERROR_B_RTC
;MOV PULUHAN,A ;SIMPAN DI PULUHAN
mov rtcdetik,a
RET
ERROR_B_RTC: JMP BACA_RTC
STARTRTC: MOV A,RTCDETIK
ANL A,#7FH
MOV R1,A
MOV A,#11010000B
MOV B,#0
ACALL I2C_WRITEBYTE ; ACC = SLAVEADDRESS, B = WORDADDRESS, R1 = DATA BYTE
MOV R1,#10H
MOV A,#11010000B
MOV B,#07 ;ADDRESS FOR CONTROL
ACALL I2C_WRITEBYTE ; ACC = SLAVEADDRESS, B = WORDADDRESS, R1 = DATA BYTE
READALLRTC: MOV A,#11010001B ;SLAVEADDRESS
MOV B,#0
MOV R1,#RTCDETIK
MOV R2,#9
ACALL I2C_READDATA ; ACC = SLAVEADDRESS, B = WORDADDRESS, R1 = DATAMEMORYOFFSET, R2 = COUNTER
RET
;==============================================================;
; PENGENDALI BUS IIC
; BANDWIDTH SEKITAR 80 KHZ (MODE-NORMAL-SPEED)
; MODUL INI BUTUH “ERRORSEQU.INC”
;==============================================================;
ERR_DL_WRONGCOMMAND EQU 1
ERR_DL_BADCONVERT EQU 2
ERR_DL_OUTOFMEMORY EQU 3
ERR_DL_INVALIDCHECKSUM EQU 4
ERR_DL_INVALIDCMDFORMAT EQU 5
ERR_DL_WRITEFAIL EQU 6
ERR_DL_VERIFYGOTERROR EQU 7
ERR_IIC_BUSFAILTOSTART EQU 11
ERR_IIC_INVALIDSLAADDR EQU 12
ERR_IIC_INVALIDADDRESS EQU 13
ERR_IIC_PREMATURENOACK EQU 14
DELAY_3MC:
NOP
NOP
NOP
RET
DELAY_4MC:
NOP
NOP
NOP
NOP
RET
RELEASE_SCL_HIGH:
SETB I2C_SCL
JNB I2C_SCL,$
RET
;==============================================================;
I2C_START: SETB I2C_SDA
SETB I2C_SCL
JNB I2C_SDA, I2C_BUSBUSY
JNB I2C_SCL, I2C_BUSBUSY
CLR I2C_SDA
PUSH ACC
POP ACC
CLR I2C_SCL
PUSH ACC
POP ACC
CLR C
RET
I2C_BUSBUSY: SETB C
RET
;==============================================================;
I2C_STOP: CLR I2C_SDA
CALL RELEASE_SCL_HIGH
CALL DELAY_3MC
SETB I2C_SDA
RET
;==============================================================;
I2C_SENDBYTE: PUSH B
MOV B,#8
I2C_SENDBYTEL: RLC A ;1MC |
MOV I2C_SDA,C ;2MC |
CALL RELEASE_SCL_HIGH
CALL DELAY_3MC
CLR I2C_SCL ;1MC +-+
DJNZ B,I2C_SENDBYTEL ;2MC |
CALL RELEASE_SCL_HIGH
CALL DELAY_4MC
MOV C,I2C_SDA ;1MC | READ ACK/NOACK
CLR I2C_SCL ;1MC +-+
CALL DELAY_3MC
POP B ;2MC |
RET
; LOW = 6MC HIGH = 5MC
;==============================================================;
I2C_GETBYTE: PUSH B
PUSH PSW ;SAVE CY
MOV B,#8
SETB I2C_SDA ;1MC |
I2C_GETBYTEL: CALL RELEASE_SCL_HIGH
CALL DELAY_3MC
MOV C,I2C_SDA ;1MC |
RLC A ;1MC |
CLR I2C_SCL ;1MC +-+
CALL DELAY_3MC
DJNZ B,I2C_GETBYTEL ;2MC |
POP PSW ;1MC | LOAD CY
MOV I2C_SDA,C ;2MC |
CALL RELEASE_SCL_HIGH
CALL DELAY_3MC
CLR I2C_SCL ;1MC +-+
SETB I2C_SDA ;1MC |
NOP
NOP
POP B ;1MC | LOAD CY
RET
; LOW = 6MC HIGH = 5MC
;==============================================================;
;==============================================================;
I2C_WRITEBYTE: CALL I2C_START
JC L_ERROR1
CLR ACC.0
CALL I2C_SENDBYTE ;SEND SLAVEADDRESS
JC L_ERROR2
MOV A,B
CALL I2C_SENDBYTE ;SEND WORD ADDRESS
JC L_ERROR3
MOV A,R1
CALL I2C_SENDBYTE ;SEND DATA BYTE
JC L_ERROR4
CALL I2C_STOP
CLR C
CALL I2C_WRITEDELAY
CLR A
MOV B,A ;MAX 5MS
I2C_WRITEBYTEL: DJNZ ACC,I2C_WRITEBYTEL
DJNZ B,I2C_WRITEBYTEL
RET
; ACC = SLAVEADDRESS, B = WORDADDRESS, R1 = DATA BYTE
;==============================================================;
I2C_READBYTE: CALL I2C_START
JC L_ERROR1
MOV DPL,A ;SAVE SLAVEADDRESS
CLR ACC.0
CALL I2C_SENDBYTE ;SEND SLAVEADDRESS
JC L_ERROR2
MOV A,B
CALL I2C_SENDBYTE ;SEND WORD ADDRESS
JC L_ERROR3
CALL I2C_START
JC L_ERROR1
MOV A,DPL ;LOAD SLAVEADDRESS AGAIN
SETB ACC.0
CALL I2C_SENDBYTE ;SEND SLAVEADDRESS
JC L_ERROR2
SETB C ;SET TO NOACK
CALL I2C_GETBYTE ;GET DATA BYTE
CALL I2C_STOP
CLR C
RET
; ACC = SLAVEADDRESS, B = WORDADDRESS
;==============================================================;
I2C_WRITEDATA: CALL I2C_START
JC L_ERROR1
CLR ACC.0
CALL I2C_SENDBYTE ;SEND SLAVEADDRESS
JC L_ERROR2
MOV A,B
CALL I2C_SENDBYTE ;SEND WORD ADDRESS
JC L_ERROR3
I2C_WRITEDATAL: MOV A,@R1
CALL I2C_SENDBYTE ;SEND DATA BYTE
INC R1
JC L_ERROR4
DJNZ R2,I2C_WRITEDATAL
I2C_WRITEDATAE: CALL I2C_STOP
CLR C
CALL I2C_WRITEDELAY
I2C_WRITEDELAY: CLR A
MOV B,A ;MAX 5MS (( 2 *256 ) * 256 )
I2C_WRITEDATAF: DJNZ ACC,I2C_WRITEDATAF
DJNZ B,I2C_WRITEDATAF
RET
; ACC = SLAVEADDRESS, B = WORDADDRESS, R1 = DATAMEMORYOFFSET, R2 = COUNTER,
;==============================================================;
L_ERROR1: MOV A,#ERR_IIC_BUSFAILTOSTART
CALL I2C_STOP
RET
L_ERROR2: MOV A,#ERR_IIC_INVALIDSLAADDR
CALL I2C_STOP
RET
L_ERROR3: MOV A,#ERR_IIC_INVALIDADDRESS
CALL I2C_STOP
RET
L_ERROR4: MOV A,#ERR_IIC_PREMATURENOACK
CALL I2C_STOP
RET
;==============================================================;
I2C_READDATA: CALL I2C_START
JC L_ERROR1
MOV DPL,A ;SAVE SLAVEADDRESS
CLR ACC.0
CALL I2C_SENDBYTE ;SEND SLAVEADDRESS
JC L_ERROR2
MOV A,B
CALL I2C_SENDBYTE ;SEND WORD ADDRESS
JC L_ERROR3
CALL I2C_START
JC L_ERROR1
MOV A,DPL ;LOAD SLAVEADDRESS AGAIN
SETB ACC.0
CALL I2C_SENDBYTE ;SEND SLAVEADDRESS
JC L_ERROR2
DEC R2
I2C_READDATAL: CLR C ;SET TO ACK
CALL I2C_GETBYTE ;GET DATA BYTE
MOV @R1,A
INC R1
DJNZ R2,I2C_READDATAL
SETB C ;SET TO NOACK
CALL I2C_GETBYTE ;GET DATA BYTE
MOV @R1,A
CALL I2C_STOP
CLR C
RET
; ACC = SLAVEADDRESS, B = WORDADDRESS, R1 = DATAMEMORYOFFSET,
END



Demikian source code jam digitalnya semoga bermanfaat
Read more >>

Jam Digital Menggunakan AT89S52

Bagaimana membuat Jam Digital dengan seven segment menggunakan Mikrokontroler AT89S52. 


Berikut bahan-bahannya:


  • Seven segment                                             = 4 buah
  • Transistor 2N2222                                       = 4 buah
  • Mikrokontroler AT89S52 + Soket                = 1 buah
  • Saklar Push Button                                       = 3 buah
  • Crystall 11,0                                                 = 1 buah
  • Capasitor keramik 30 pF                              = 2 buah
  • Capasitor Polar (Elco)    10 μF 16 V            = 1 buah
  • Konector putih 2 pin                                     = 1 buah
  • Resistor 1 kΩ                                               = 8 buah
  • Resistor 330 Ω                                             = 4 buah
  • Resistor 8,2 kΩ                                            = 1 buah
  • Resistor 100 Ω                                             = 1 buah
  • IC Regulator 7805 + pendingin Alumunium    = 1 buah
  • Soket Baterai                                                = 1 buah
  • Speser + mur                                                = 4 buah










Buat program untuk mikronya dapat Anda lihat :

$regfile = "8052.dat"
$crystal = 12000000
' ------------------------------------------alokasi memori-----------------------------------------'
Dim Menit_sat As Byte
Dim Menit_Pul As Byte
Dim Jam_sat As Byte
Dim Jam_pul As Byte
Dim 50ms As word
Dim Detik As Byte
'-----------------------------------Konfigurasi interupsi------------------------------------------'
Config Timer1 = Timer , Gate = Internal , Mode = 2
Enable Interrupts
Enable Timer1
Enable Int0
Enable Int1
On Int0 Menit
On Int1 Jam
On Timer1 waktu
Set Tcon.0
Set Tcon.2
'----------------------------------Program utama----------------------------------------------------'
Load Timer1 , 250
Start Timer1
Main:
Gosub Hitung
Gosub Tampil
Goto Main
'---------------------------------------Sub Program--------------------------------------------------'
Hitung:
If    Detik = 60 Then
    Detik = 0
    Incr Menit_sat
End If
If    Menit_sat = 10 Then
    Menit_sat = 0
    Incr Menit_pul
End If
If    Menit_pul = 6 Then
    Menit_pul = 0
    Incr Jam_sat
End If
If    Jam_sat = 10 Then
    Jam_sat = 0
    Incr Jam_pul
End If
If    Jam_pul = 2 And Jam_sat = 4 Then
    Jam_sat = 0
    Jam_pul = 0
End If
Return
Tampil :
P0 = Lookup (menit_sat , 7_seg)
    P2 = &HF1
    Waitms 1
P0 = Lookup (menit_pul , 7_seg)
P2 = &HF2
    Waitms 1
P0 = Lookup (jam_sat , 7_seg)
    P2 = &HF4
    Waitms 1
P0 = Lookup (jam_pul , 7_seg)
    P2 = &HF8
Waitms 1
Return
'--------------------------------------Data 7-segment-----------------------------------------
7_seg:
Data &HA0 , &HF9 , &HA4 , &HB0 , &H99
Data &H92 , &H82 , &HF8 , &H80 , &H90
'-----------------------------------------Interupt-----------------------------------------------
Waktu:
Incr 50ms
If    50ms = 4000 Then
    50ms = 0
    Incr Detik
End If
Return
Menit:
Incr Menit_sat
Return
Jam:
Incr Jam_sat
Return
   
O ya ini file Bin dan Hex bagi yang kesulitan compile file source codenya.

Semoga bermanfaat
Read more >>

LM 1036 Tone Control


Bass-treble tone control circuit-Circuit diagram


IC LM1036 adalah tone control ( bass / treble ) , volume dan balance untuk aplikasi amplifier stereo di radio mobil , TV dan sistem audio lainnya . Sebuah  kontrol tambahan adalah loudness . Empat kontrol lainnya adalah bass, treble , volume dan balance.Setiap respon nada didefinisikan oleh satu kapasitor dipilih untuk memberikan karakteristik yang diinginkan .
fitur :

Rentang tegangan power supply , 9V sampai 16V
Volume control range, 75 dB 
Tone control , ± 15 dB
Pemisahan saluran , 75 dB 
Distorsi rendah , 0,06% khas untuk tingkat input 0,3 Vrms
High signal terhadap distorsi, 80 dB untuk tingkat input 0,3 Vrms
Beberapa komponen eksternal diperlukan
Catatan :

Tegangan Vcc bisa  9V sampai 16V dan  kapasitor output 10uF / 25V electrolytic

Demikian mengenai tone control IC LM1036.Semoga bermanfaat






Read more >>

Controller LED X2

Controller baru datang yang ada di IMAM TECH INOVATION type X2 dengan fitur update lewat usb flash disk,memiliki banyak effect,bisa tampil jam dan masih banyak lagi fiturnya.Bisa dipasangkan  dengan panel led P10 semi outdoor maupun out door.Untuk softwarenya download disini
Read more >>

Software simulasi dan Lay out PCB

     Proteus adalah suatu software yang digunakan untuk mensimulasikan suatu circuit sebelum diaplikasikan ke circuit nyata , selain itu juga bisa digunakan untuk mendesign lay out PCB.
Contoh penerapannya ada pada digital clock yang sudah saya upload .Semoga ini menjadi wawasan dan tambahan koleksi software anda.Untuk tutorial cara penggunaan dapat anda cari di google .
Read more >>

Controller LED dan Panel P10 Semi outdoor

'' TF SU 2014 LED CONTROLLER ''
Merupakan controller panel led yang mudah penggunaannya dan memiliki banyak effect , panel yang biasa digunakan adalah led p10 semi outdoor , p10 outdoor


Read more >>
//