1
ARM Processors / การเขียนProgram ระดับLOW Level ของ SAM3X8E (Arduino DUE)โดยผ่าน Arduino IDE
« on: April 01, 2013, 09:18:41 pm »
สวัสดีครับ ผมเคยกล่าวถึงวิธีการเขียนโปรแกรมลงบน Arduino DUE ผ่าน Atmel Studio 6 แล้วอัดโปรแกรมลง SAM-BA แล้ว
วันนี้ผมจะมานำเสนอวิธีการเขียนโปรแกรมโดยเรียกใช้ Atmel software Framework ผ่าน Arduino IDE(Sketch)ครับ
ก่อนอื่นเลยที่Sketch
ไปที่ Sketch Tab bar ด้านบน เลือก Add File
จากนั้น เลือก ไปที่ Arduino -> hardware -> arduino -> sam -> system ->libsam->include
จากนั้นเลือก File libraryที่ต้องการเลือกเลยครับ
ในที่นี้ผมเลือก sam3x8e.h pio.h และ pio_sam3x8e.h ครับ
มาที่ไฟล์หลักของ Sketch ลองพิมพ์Code ตามนี้เลยครับ จะเป็นการทำไฟกระพริพที่ LED on board ของ Arduino Due (ขา PB27 ของ sam)
#define DISIBLE 0
#define ENABLE 1
#define LED0_GPIO_MASK (1u<<27) // or #define LED0_GPIO_MASK PIOB_PB27
void setup()
{
pmc_enable_periph_clk(ID_PIOA);
PIO_SetOutput(PIOB, PIO_PB27, LOW, DISIBLE, ENABLE);
}
void loop()
{
PIOB->PIO_SODR = LED0_GPIO_MASK ;
delay(1000);
PIOB->PIO_CODR = LED0_GPIO_MASK ;
delay(1000);
}
ข้อดีกว่าการเขียนบน Atmel studio แล้วอัดผ่าน SAM-BA
1. ใช้ Arduino IDE จึงเร็วกว่า Atmel studio
2. สามารถ Burn โปรแกรมได้ง่ายไม่ยุกยาก
3. พัฒนาควบคู่กับlibrary ของ Arduino.cc ได้
ข้อด้อยกว่า
1. เช็คค่าฟังก์ชั่น Add library ค่อนข้างวุ่นวาย
2. ไม่รองรับการDebug
วันนี้ผมจะมานำเสนอวิธีการเขียนโปรแกรมโดยเรียกใช้ Atmel software Framework ผ่าน Arduino IDE(Sketch)ครับ
ก่อนอื่นเลยที่Sketch
ไปที่ Sketch Tab bar ด้านบน เลือก Add File
จากนั้น เลือก ไปที่ Arduino -> hardware -> arduino -> sam -> system ->libsam->include
จากนั้นเลือก File libraryที่ต้องการเลือกเลยครับ
ในที่นี้ผมเลือก sam3x8e.h pio.h และ pio_sam3x8e.h ครับ
มาที่ไฟล์หลักของ Sketch ลองพิมพ์Code ตามนี้เลยครับ จะเป็นการทำไฟกระพริพที่ LED on board ของ Arduino Due (ขา PB27 ของ sam)
#define DISIBLE 0
#define ENABLE 1
#define LED0_GPIO_MASK (1u<<27) // or #define LED0_GPIO_MASK PIOB_PB27
void setup()
{
pmc_enable_periph_clk(ID_PIOA);
PIO_SetOutput(PIOB, PIO_PB27, LOW, DISIBLE, ENABLE);
}
void loop()
{
PIOB->PIO_SODR = LED0_GPIO_MASK ;
delay(1000);
PIOB->PIO_CODR = LED0_GPIO_MASK ;
delay(1000);
}
ข้อดีกว่าการเขียนบน Atmel studio แล้วอัดผ่าน SAM-BA
1. ใช้ Arduino IDE จึงเร็วกว่า Atmel studio
2. สามารถ Burn โปรแกรมได้ง่ายไม่ยุกยาก
3. พัฒนาควบคู่กับlibrary ของ Arduino.cc ได้
ข้อด้อยกว่า
1. เช็คค่าฟังก์ชั่น Add library ค่อนข้างวุ่นวาย
2. ไม่รองรับการDebug