TEKNISI. SOBRUN
SERVIS ELEKTRONIK
Sabtu, 25 Mei 2013
Berbagi Pengetahuan
Jika TV anda rusak periksa jala-jala listrik. apakah terhubung dengan baik. tekan tombol power sampai bunyi. tekkh. dan gunakan remot standart untuk menstart tv anda
Kamis, 23 Mei 2013
Rabu, 22 Mei 2013
Sabtu, 04 Mei 2013
Jasa Services
servis elektronik merupakan sarana
berupa jasa untuk masyarak. untuk itu saya menawarkan jasa untuk masalah
elektronik rumah tangga maupun lainya.sepeti televisi
dvd
rice cocker
dll.
Selasa, 30 April 2013
Mikrokontroller
long int num;
const long int menit = 60000000; //banyaknya siklus dalam 1 menit (xtal 4Mhz)
const long int timer_ovr = 0x00010000; //banyaknya siklus timer
char cacah;
char h0 = 0; //satuan jam
char h1 = 0; //puluhan jam
char m0 = 0; //satuan menit
char m1 = 0; //puluhan menit
char over_flow;
const char led[10] = {0x08, 0x3e, 0x11, 0x14, 0x26, 0x44, 0x40, 0x1e, 0x00, 0x04};
//rutin untuk menunda waktu sebesar 5ms
void tunda(void){
Delay_ms(5);
}
//rutin untuk menambah menit
void inc_minute(void){
m0++ ; over_flow = 0;
if (m0 == 10){
m0 = 0;
m1++ ;
if (m1 == 6)
{m1 = 0; over_flow = 1;}
}
}
//rutin untuk menambah jam
void inc_hour(void){
h0++ ;
if (h0==10){h0 = 0; h1++ ;}
if (h0==4 && h1 == 2){h0 = 0; h1 = 0;}
}
//rutin untuk multiplex 7 segment
void display(void){
PORTA = 0b11111111;
PORTB = led[m0];
PORTA = 0b11111110;
tunda();
PORTA = 0b11111111;
PORTB = led[m1];
PORTA = 0b11111101;
tunda();
PORTA = 0b11111111;
PORTB = led[h0];
PORTA = 0b11111011;
tunda();
PORTA = 0b11111111;
PORTB = led[h1];
PORTA = 0b11110111;
tunda();
}
// rutin layanan interrupt
void interrupt(void){
INTCON.T0IF = 0;
num -= timer_ovr;
if (num < 0){
num += menit;
inc_minute();
if (over_flow) inc_hour();
}
}
/* -----------ini adalah program utama---------------------- */
void main(void) {
//mengatur arah data pada port
TRISB = 0b10000000;
TRISA = 0b10000;
//mengatur timer0
OPTION_REG = 0b11010111;
//memampukan interrupt timer
INTCON.GIE = 1;
INTCON.T0IE = 1;
num = menit;
while (1){
for (cacah = 0; cacah < 25; cacah++){
display();
}
if (PORTB.RB7 == 0) //periksa apakah tombol menit ditekan
inc_minute(); num = menit;}
if (PORTA.RA4 == 0) //periksa apalah tombol jam ditekan
{inc_hour(); num = menit;}
}
const long int menit = 60000000; //banyaknya siklus dalam 1 menit (xtal 4Mhz)
const long int timer_ovr = 0x00010000; //banyaknya siklus timer
char cacah;
char h0 = 0; //satuan jam
char h1 = 0; //puluhan jam
char m0 = 0; //satuan menit
char m1 = 0; //puluhan menit
char over_flow;
const char led[10] = {0x08, 0x3e, 0x11, 0x14, 0x26, 0x44, 0x40, 0x1e, 0x00, 0x04};
//rutin untuk menunda waktu sebesar 5ms
void tunda(void){
Delay_ms(5);
}
//rutin untuk menambah menit
void inc_minute(void){
m0++ ; over_flow = 0;
if (m0 == 10){
m0 = 0;
m1++ ;
if (m1 == 6)
{m1 = 0; over_flow = 1;}
}
}
//rutin untuk menambah jam
void inc_hour(void){
h0++ ;
if (h0==10){h0 = 0; h1++ ;}
if (h0==4 && h1 == 2){h0 = 0; h1 = 0;}
}
//rutin untuk multiplex 7 segment
void display(void){
PORTA = 0b11111111;
PORTB = led[m0];
PORTA = 0b11111110;
tunda();
PORTA = 0b11111111;
PORTB = led[m1];
PORTA = 0b11111101;
tunda();
PORTA = 0b11111111;
PORTB = led[h0];
PORTA = 0b11111011;
tunda();
PORTA = 0b11111111;
PORTB = led[h1];
PORTA = 0b11110111;
tunda();
}
// rutin layanan interrupt
void interrupt(void){
INTCON.T0IF = 0;
num -= timer_ovr;
if (num < 0){
num += menit;
inc_minute();
if (over_flow) inc_hour();
}
}
/* -----------ini adalah program utama---------------------- */
void main(void) {
//mengatur arah data pada port
TRISB = 0b10000000;
TRISA = 0b10000;
//mengatur timer0
OPTION_REG = 0b11010111;
//memampukan interrupt timer
INTCON.GIE = 1;
INTCON.T0IE = 1;
num = menit;
while (1){
for (cacah = 0; cacah < 25; cacah++){
display();
}
if (PORTB.RB7 == 0) //periksa apakah tombol menit ditekan
inc_minute(); num = menit;}
if (PORTA.RA4 == 0) //periksa apalah tombol jam ditekan
{inc_hour(); num = menit;}
}
Langganan:
Postingan (Atom)