[ บทความ : DnRx051 LAB #1 ติดต่อกับ LED ] |
หลังจากได้วงจรของบอร์ดไปแล้ว [DnRX051 MicroBoard] คราวนี้เราก็มาทำการทดสอบดูว่า ที่เราได้ทำไปนั้น มีความถูกต้องเพียงใด ... ผมจะใช้วงจรทดสอบเป็น ขับหลอด LED จำนวน 1 ดวงล่ะกันครับ (ตอนที่ผมเขียนบทความ ทั้งเนื้อทั้งตัวผมเหลือ LED 2 หลอด ... อีกหลอดนึงกะเอาไว้ว่าจะใช้ กับบอร์ด DnR6811 ที่ผมจะทำขึ้นมา เลยใช้แบบหลอดเดียวล่ะกัน) ... ซึ่งเราสามารถที่จะประยุกต์ใช้กับแบบ 8 หลอดก็ได้ โดยการเพิ่มจำนวน อุปกรณ์ให้เป็น 8 ชุดเท่านั้นเองครับ ... เรามาดูวงจรกัน
อุปกรณ์มีดังนี้ครับ
1. ตัวต้านทาน 1K จำนวน 1 ตัว
2. LED สีเหลือง (สีอื่นๆ ก็ได้ครับ) จำนวน 1 ตัว
นอกจากอุปกรณ์ด้านบนแล้ว อย่าลืมนะครับว่า จะต้องมี บอร์ดควบคุมด้วย พร้อมทั้งเครื่องมือโปรแกรมชิพ ... เมื่อมีครบแล้ว ... มาลองเขียนโปรแกรมกัน ... ตัวอย่างโปรแกรม ผมจะเขียนเป็นภาษาC โดยจะใช้ Micro-C51 (ใครที่ไม่มีก็พยายามหาเอาล่ะกันครับ)
/* * Filename : LEDSinkC.c * Author : Supachai Budsaratij * e-mail : raek@se-ed.net * compiler : Micro-C51 * cc51 LEDSinkC -piof m=t * Note : Test send data to p1.0. Please connect LED Circuit (SINK current) to P1.0 (Bit-0). */ #include <8051io.h> #include <8051reg.h> delay() { int i,o; for (o=0;o<50;o++) for (i=0; i<255; i++); } main() { while (1) { P1 = 0x01; delay(); P1 = 0x00; delay(); } }เสร็จแล้วก็ทำการคอมไพล์ แล้วโหลดโปรแกรมลงตัวชิพ พร้อมทั้งทดสอบการทำงานได้เลยครับ ... ผลลัพธ์ที่ได้ก็คือ หลอด LED จะกระพริบ และ ดับสลับกันไป... ด้านล่างเป็นรูปตอนที่ทดลองการทำงาน ...