//********************************************************************** /* */ //********************************************************************** #define DATA1 PORTB.F1 #define DATA2 PORTB.F2 #define DATA3 PORTB.F3 #define SEGA PORTA.F0 #define SEGB PORTA.F6 #define SEGC PORTB.F5 #define SEGD PORTB.F7 #define SEGE PORTA.F1 #define SEGF PORTA.F7 #define SEGG PORTB.F4 #define SEGH PORTB.F6 void data_0() { SEGA = 1; SEGB = 1; SEGC = 1; SEGD = 1; SEGE = 1; SEGF = 1; SEGG = 0; SEGH = 0; } void data_1() { SEGA = 0; SEGB = 1; SEGC = 1; SEGD = 0; SEGE = 0; SEGF = 0; SEGG = 0; SEGH = 0; } void data_2() { SEGA = 1; SEGB = 1; SEGC = 0; SEGD = 1; SEGE = 1; SEGF = 0; SEGG = 1; SEGH = 0; } void data_3() { SEGA = 1; SEGB = 1; SEGC = 1; SEGD = 1; SEGE = 0; SEGF = 0; SEGG = 1; SEGH = 0; } void data_4() { SEGA = 0; SEGB = 1; SEGC = 1; SEGD = 0; SEGE = 0; SEGF = 1; SEGG = 1; SEGH = 0; } void data_5() { SEGA = 1; SEGB = 0; SEGC = 1; SEGD = 1; SEGE = 0; SEGF = 1; SEGG = 1; SEGH = 0; } void data_6() { SEGA = 1; SEGB = 0; SEGC = 1; SEGD = 1; SEGE = 1; SEGF = 1; SEGG = 1; SEGH = 0; } void data_7() { SEGA = 1; SEGB = 1; SEGC = 1; SEGD = 0; SEGE = 0; SEGF = 1; SEGG = 0; SEGH = 0; } void data_8() { SEGA = 1; SEGB = 1; SEGC = 1; SEGD = 1; SEGE = 1; SEGF = 1; SEGG = 1; SEGH = 0; } void data_9() { SEGA = 1; SEGB = 1; SEGC = 1; SEGD = 1; SEGE = 0; SEGF = 1; SEGG = 1; SEGH = 0; } void data_null() { SEGA = 0; SEGB = 0; SEGC = 0; SEGD = 0; SEGE = 0; SEGF = 0; SEGG = 0; SEGH = 0; } void data_set(char c) { switch (c) { case '0': data_0(); break; case '1': data_1(); break; case '2': data_2(); break; case '3': data_3(); break; case '4': data_4(); break; case '5': data_5(); break; case '6': data_6(); break; case '7': data_7(); break; case '8': data_8(); break; case '9': data_9(); break; default: data_null(); break; } } void main() { static unsigned int ad0, ad1, cnt; static char buf[10]; // CMCON = 0b00000111; ANSEL = 0b00000100; TRISA = 0b00000100; TRISB = 0b00000000; OSCCON = 0b01110000; // PORTA = 0b00000000; PORTB = 0b00000000; // while (1) { ad0 = 0; for (cnt = 0; cnt < 10; cnt++) { ad0 += Adc_Read(2); Delay_us(100); } ad0 = ad0 / 10; IntToStr(ad0, buf); // for (cnt = 0; cnt < 100; cnt++) { data_set(buf[3]); DATA1 = 1; Delay_ms(1); DATA1 = 0; // data_set(buf[4]); DATA2 = 1; Delay_ms(1); DATA2 = 0; // data_set(buf[5]); DATA3 = 1; Delay_ms(1); DATA3 = 0; } } } //**********************************************************************