วันจันทร์ที่ 14 มกราคม พ.ศ. 2562

T7



#line 1 "C:/Users/bunthit/Desktop/TEST 1/T7.c"
void main()
{
 unsigned char clock[4];
 unsigned char sec;
 TRISC=0;
 Lcd_Init(&PORTC);
 Lcd_Cmd(LCD_CURSOR_OFF);
 Lcd_Cmd(LCD_CLEAR);
 T0CON=0x05;
 TMR0H=0xC2;
 TMR0L=0xF7;
 INTCON.TMR0IF=0;
 T0CON.TMR0ON=1;
 while(1)
 {
 Lcd_Chr(1,6,clock[0]+48);
 Lcd_Chr(1,7,clock[1]+48);
 Lcd_Chr(1,8,':');
 Lcd_Chr(1,9,clock[2]+48);
 Lcd_Chr(1,10,clock[3]+48);
 while(!INTCON.TMR0IF);
 T0CON.TMR0ON=0;
 sec++;
 if(sec>59)
 {
 sec=0;
 clock[3]++;
 }
 if(clock[3]>9)
 {
 clock[3]=0;
 clock[2]++;
 }
 if(clock[2]>5)
 {
 clock[2]=0;
 clock[1]++;
 }
 if(clock[1]>9)
 {
 clock[1]=0;
 clock[0]++;
 }
 if(clock[0]==2&&clock[1]>3)
 {
 clock[0]=0;
 clock[1]=0;
 }
 TMR0H=0xC2;
 TMR0L=0xF7;
 INTCON.TMR0IF=0;
 T0CON.TMR0ON=1;
 Lcd_Cmd(LCD_CLEAR);
 }
}

T6




#line 1 "C:/Users/bunthit/Desktop/TEST 1/T6.c"
void main()
{
 TRISB=0xFF;
 TRISC=0;
 Lcd_Init(&PORTC);
 Lcd_Cmd(LCD_CURSOR_OFF);
 Lcd_Cmd(LCD_CLEAR);
 Lcd_Out(1,2,"                SMART LEARNING");
 Lcd_Out(2,1,"                ADVANCE PIC BY C");
 while(1)
 {
 RETURN:if(PORTB.F0==0)
 {
 Lcd_Cmd(LCD_SHIFT_RIGHT);
 while(PORTB.F0==0);
 }
 if(PORTB.F1==0)
 {
 Lcd_Cmd(LCD_SHIFT_LEFT);
 while(PORTB.F1==0);
 }
 if(PORTB.F2==0)
 {
 while(1)
 {
 Lcd_Cmd(LCD_SHIFT_RIGHT);
 delay_ms(100);
 if(PORTB.F0==0||PORTB.F1==0)goto RETURN;
 }
 }
 }
}

T5



#line 1 "C:/Users/bunthit/Desktop/TEST 1/T5.c"
unsigned char segment[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
unsigned char i1,i2,i3,i4,i5,i6;

void interrupt()
{
 i6++;
 if(i6>9)
 {
 i6=0;
 i5++;
 }
 if(i5>9)
 {
 i5=0;
 i4++;
 }
 if(i4>9)
 {
 i4=0;
 i3++;
 }
 if(i3>9)
 {
 i3=0;
 i2++;
 }
 if(i2>9)
 {
 i2=0;
 i1++;
 }
 if(i1>9)i1=0;
 INTCON.INT0IF=0;
}

void main()
{
 TRISB=0xFF;
 TRISC=0;
 TRISD=0;
 INTCON.INT0IE=1;
 INTCON.INT0IF=0;
 INTCON2.INTEDG0=0;
 INTCON.GIE=1;
 while(1)
 {
 PORTD=0xDF;
 PORTC=segment[i1];
 delay_ms(10);
 PORTD=0xEF;
 PORTC=segment[i2];
 delay_ms(10);
 PORTD=0xF7;
 PORTC=segment[i3];
 delay_ms(10);
 PORTD=0xFB;
 PORTC=segment[i4];
 delay_ms(10);
 PORTD=0xFD;
 PORTC=segment[i5];
 delay_ms(10);
 PORTD=0xFE;
 PORTC=segment[i6];
 delay_ms(10);
 }
}

T4


#line 1 "C:/Users/bunthit/Desktop/TEST 1/T4.c"



unsigned char segment[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
int i=6,j=0;

void interrupt()
{
 j--;
 if(j<0)
 {
 j=9;
 i--;
 }
 if(i==0&&j==0)
 {
 T0CON.TMR0ON=0;
 PORTB.F5=1;
 }
 TMR0H=0xC2;
 TMR0L=0xF7;
 INTCON.TMR0IF=0;
}

void main()
{
 TRISB=0x01;
 TRISC=0;
 PORTB.F5=0;
 T0CON=0x05;
 TMR0H=0xC2;
 TMR0L=0xF7;
 INTCON.TMR0IE=1;
 INTCON.TMR0IF=0;
 INTCON.GIE=1;
 while(1)
 {
 if(PORTB.F0==0)T0CON.TMR0ON=1;
  PORTB.F6 =0; PORTB.F7 =1;
 PORTC=segment[i];
 delay_ms(50);
  PORTB.F6 =1; PORTB.F7 =0;
 PORTC=segment[j];
 delay_ms(50);
 }
}

T3



 #line 1 "C:/Users/bunthit/Desktop/TEST 1/T3.c"



unsigned char segment[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
unsigned char i1,i2,i3,i4,i5,i6;

void interrupt()
{
 i6++;
 if(i6>9)
 {
 i6=0;
 i5++;
 }
 if(i5>9)
 {
 i5=0;
 i4++;
 }
 if(i4>9)
 {
 i4=0;
 i3++;
 }
 if(i3>5)
 {
 i3=0;
 i2++;
 }
 if(i2>9)
 {
 i2=0;
 i1++;
 }
 if(i1>5)i1=0;
 TMR3H=0xD8;
 TMR3L=0xF0;
 PIR2.TMR3IF=0;
}

void main()
{
 TRISB=0;
 TRISC=0;
 TRISD=0;
 TRISE=0;
 T3CON=0x80;
 TMR3H=0xD8;
 TMR3L=0xF0;
 PIE2.TMR3IE=1;
 PIR2.TMR3IF=0;
 INTCON.PEIE=1;
 INTCON.GIE=1;
 T3CON.TMR3ON=1;
 while(1)
 {
  PORTE.F0 =0; PORTE.F1 =1;
 PORTC=segment[i1];
 PORTD=segment[i3];
 PORTB=segment[i5];
 delay_ms(25);
  PORTE.F0 =1; PORTE.F1 =0;
 PORTC=segment[i2];
 PORTD=segment[i4];
 PORTB=segment[i6];
 delay_ms(25);
 }
}

T2


  โค้ดภาษาซี

#line 1 "C:/Users/bunthit/Desktop/TEST 1/T2.c"




unsigned char segment[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
unsigned char i,j;

void interrupt()
{
 if(INTCON.INT0IF==1)
 {
 i++;
 if(i>9)i=0;
 INTCON.INT0IF=0;
 }
 if(INTCON3.INT1IF==1)
 {
 j++;
 if(j>9)j=0;
 INTCON3.INT1IF=0;
 }
}

void main()
{
 TRISB=0x03;
 TRISC=0;
 INTCON.INT0IE=1;
 INTCON.INT0IF=0;
 INTCON2.INTEDG0=0;
 INTCON3.INT1IE=1;
 INTCON3.INT1IF=0;
 INTCON2.INTEDG1=0;
 INTCON.GIE=1;
 while(1)
 {
  PORTB.F5 =0; PORTB.F6 =1; PORTB.F7 =1;
 PORTC=segment[i];
 delay_ms(25);
  PORTB.F5 =1; PORTB.F6 =0; PORTB.F7 =1;
 PORTC=~0x3F;
 delay_ms(25);
  PORTB.F5 =1; PORTB.F6 =1; PORTB.F7 =0;
 PORTC=segment[j];
 delay_ms(25);
 }

}

T1

\
                     
                                                                     
    โค้ดภาษาซี


#line 1 "C:/Users/bunthit/Desktop/TEST 1/T1.c"
 void main()
{
 unsigned char dice[]={0x08,0x22,0x2A,0x55,0x5D,0x77};
 unsigned char i;
 TRISC=0;
 TRISB=0x01;
 PORTC=0;
 while(1)
 {
 if(PORTB.F0==0)
 {
 PORTC=dice[i];
 delay_ms(3000);
 PORTC=0;
 }
 i++;
 if(i>5)i=0;
 }
}