l2aider
Guest
|
|
« on: February 04, 2009, 10:05:32 AM » |
|
ผมอยากได้ Code Pic ตัวอย่างอะครับ เบอร์ PIC18F4550 ใช้ CCS C Compile พอดีผมไม่ได้เรียน PIC มานะครับ เรียนแต่ MSC51 แล้วใช้ Assambly แต่พอดีผมได้งานมาแล้วอยากใช้ PIC แต่ว่าอ่านแล้วงงครับ เลยอยากได้ Code ตัวอย่าง ของภาคส่งและภาครับนะครับ
ภาคส่ง เป็นการส่งจาก Dip Switch 8 pin ส่งออก port RA0-RA5 และ RE0-RE1 อันนี้เป็น Code ที่ผมรองเขียนเองนะครับ Error เยอะมาก #include <18F4550.h> #use delay(clock=20000000) #fuses XT,PUT,BROWNOUT,MCLR,NOWDT,NOPROTECT,NOLVP #define PIN_A0 #define PIN_A1 #define PIN_A2 #define PIN_A3 #define PIN_A4 #define PIN_A5 #define PIN_E0 #define PIN_E1 #define TxD=PIN_C6 #define RxD=PIN_C7 #use rs232(baud=9600,xmit=TxD,rcv=RxD,bit=8) /************************************************************/ void main(void) { set_tris_a(0xFF); set_tris_e(0xFF); do{ while(!input_a()) switch((input_a()){ case PIN_A0 : putc(PIN_A0); break; case PIN_A1 : putc(PIN_1); break; case PIN_A2 : putc(PIN_A2); break; case PIN_A3 : putc(PIN_A3); break; case PIN_A4 : putc(PIN_A4); break; case PIN_A5 : putc(PIN_A5); break; case PIN_E0 : putc(PIN_E0); break; case PIN_E1 : putc(PIN_E1); break; } //end switch }while(true); //end do } //end main
ภาครับ ขอผมทำการแสดงออกจอ LCD 16x4 #include <18F4550.h> #use delay(clock=20000000) #fuses XT,PUT,BROWNOUT,MCLR,NOWDT,NOPROTECT,NOLVP #define PIN_D0 #define PIN_D1 #define PIN_D2 #define PIN_D3 #define PIN_D4 #define PIN_D5 #define PIN_D6 #define PIN_D7 #define TxD=PIN_C6 #define RxD=PIN_C7 #use rs232(baud=9600,xmit=TxD,rcv=RxD,bit=8) /**************************************************************/ void main(void){ int i; set_tris_d(0x00); //Port D for output while(1){ if(kbhit(i)){ c=getc(); //Get data printf("%d",i); //Echo }// end if }//end while }//end main
ช่วยหน่อยนะครับ ขอบคุณมากครับ
|