Senin, 30 Oktober 2017

INTERUP




1. Tujuan [kembali]
        


2. Alat dan Bahan [kembali]


4.Program [Kembali]


void main() {

TRISA=0x00;                     // Menyatakan PORTC sebagai output
INTCON.GIE=1;                   // Mengatifkan Global Interrupt
INTCON.INTE=1;                  // Mengaktifkan interrupt ekseternal

while(1){

PORTA=0x0D;                     // Semua LED mati
}

}

void interrupt(){
 INTCON.INTF=1;                 // Membersihkan interrupt flag eksternal
 PORTA=0xFF;                  // Menginverskan nilai PORTC sehingga semua LED Hidup
 delay_ms(100);                 // delay 100 ms
}

5.Flow chart [Kembali]




6.Rangkayan Simulasi [Kembali]

7.Video simulasi [Kembali]


8.Link download [Kembali]

projek dan code disini



DOT MATRIK




1. Tujuan [kembali]
        


2. Alat dan Bahan [kembali]


4.Program [Kembali]


void main() {
TRISA=0x00;                     //PORTB Sebagai Output
TRISB=0x00;                     //PORTC sebagai Output
PORTA=0x00;                     //nilai awal PORTB low
PORTB=0x00;                     //nilai awal PORTC low

while(1){
                // jika switch 1 aktif, maka
PORTB=0x9c;                     // LED kolom 1,2,6,7 bergerak ke bawah
           PORTA=0x01;
           delay_ms(5);
           PORTA=0x02;
           delay_ms(5);
           PORTA=0x04;
           delay_ms(5);
           PORTA=0x08;
           delay_ms(5);
           PORTA=0x10;
           delay_ms(5);
PORTB=0xc9;                     // LED kolom 2,3,5,6 bergerak ke bawah
           PORTA=0x01;
           delay_ms(5);
           PORTA=0x02;
           delay_ms(5);
           PORTA=0x04;
           delay_ms(5);
           PORTA=0x08;
           delay_ms(5);
           PORTA=0x10;
           delay_ms(5);
PORTB=0xf7;                     // LED kolom 5 bergerak ke bawah
           PORTA=0x01;
           delay_ms(5);
           PORTA=0x02;
           delay_ms(5);
           PORTA=0x04;
           delay_ms(5);
           PORTA=0x08;
           delay_ms(5);
           PORTA=0x10;
           delay_ms(5);



}
}

5.Flow chart [Kembali]



6.Rangkayan Simulasi [Kembali]


7.Video simulasi [Kembali]




8.Link download [Kembali]

link projek + code disini



Minggu, 15 Oktober 2017

ADC




1. Tujuan [kembali]
        


2. Alat dan Bahan [kembali]


4.Program [Kembali]


#include "Includes.h"

/*
 * Function Name: InitADC
 * Purpose  :     To initialize ADC on PORTA and PORTE pins.
 * Input(s) :     none
 * Output(s):     none
 * Author:        M.Saeed Yasin   17-12-12
 */
void InitADC(void)
{
ADCON1  = 0x80;      // Make PORTA and PORTE analog pins
// Also, Vref+ = 5v and Vref- = GND
TRISA   = 0x2f;      // Make RA5, RA3, RA2, RA1, RA0 input
TRISE   = 0x07; // Make RE0, RE1 and RE2 input
ADCON0  = 0x81; // Turn on the A/D Converter
}


/*
 * Function Name: GetADCValue
 * Input(s) :     Channel name, it can be AN0, AN1, AN2, AN3, AN4
 *                AN5, AN6 or AN7 only. Channel is selected according
 *                to the pin you want to use in the ADC conversion. 
 *                For example, use AN0 for RA0 pin. Similarly for 
 *                RA1 pin use AN1 etc.
 * Output(s):     10 bit ADC value is read from the pin and returned.
 * Author:        M.Saeed Yasin   17-12-12
 */
unsigned int GetADCValue(unsigned char Channel)
{
ADCON0 &= 0xc7;         // Clear Channel selection bits
ADCON0 |= (Channel<<3); // Select channel pin as ADC input
    
    __delay_ms(10);         // Time for Acqusition capacitor 
// to charge up and show correct value
GO_nDONE  = 1;     // Enable Go/Done

while(GO_nDONE);        // Wait for conversion completion

return ((ADRESH<<8)+ADRESL);   // Return 10 bit ADC value
}



5.Flow chart [Kembali]




6.Rangkayan Simulasi [Kembali]


7.Video simulasi [Kembali]





8.Link download [Kembali]





Rabu, 11 Oktober 2017

calkulator




1. Tujuan [kembali]
        


2. Alat dan Bahan [kembali]


4.Program [Kembali]


5.Flow chart [Kembali]




6.Rangkayan Simulasi [Kembali]



7.Video simulasi [Kembali]


8.Link download [Kembali]




 

Copyright @ 2015