สนุกKidsสนกุ Code
กับ
STUDENT
HANDBOOK
บทที่ 2
สาระการเรยี นรู้
ความหมายของการเขียนโปรแกรม การเขียนโปรแกรมจะได้มาซ่ึงซ ร์ซโค้ดข งโปรแกรมนั้นๆ
โดยปกติแล้ จะ ยู่ในรูปแบบข งข้ ค ามธรรมดา ซ่ึงไม่
การเขยี นโปรแกรมค มพิ เต ร์ (Computer Programming) ามารถน�าไปใช้งานได้ จะต้ งผ่านโปรแกรมแปล
รื เรยี กใ ้ น้ั ลง า่ การเขียนโปรแกรม (Programming) โปรแกรม รื ค มไพเล ร์ (Compiler) เพื่ แปลงตั
รื การเขียนโค้ด (Coding) เป็นขั้นต นการเขียน ซ ร์ซโค้ดนั้นใ ้เป็นภา าเคร่ื ง (Machine Language)
ทด บ และดูแลร ั ต้นฉบับ รื ซ ร์ซโค้ด (Source เ ียก่ นจงึ จะไดเ้ ปน็ โปรแกรมท่ีพร้ มใชง้ าน
Code) ข งโปรแกรมค มพิ เต ร์ ซึ่งซ ร์ซโค้ดน้ันจะ
เขียนด้ ยภา าโปรแกรม ข้ันต นการเขียนโปรแกรม !
ต้ งการค ามรู้ใน ลายด้านด้ ยกัน เก่ีย กับโปรแกรมท่ี
ต้ งการจะเขียน และข้ันต น ิธีท่ีจะใช้ ซึ่งใน ิ กรรม การเขียนโปรแกรมถือวา่ เปน็ การผสมผสานกัน
ซ ฟต์แ ร์นั้น การเขียนโปรแกรมถื เป็นเพียงข้ัน น่ึงใน
งจรชี ติ ข งการพฒั นาซ ฟต์แ ร์ ระหว่างศาสตร ์ ของ ศิลปะ วิทยาศาสตร ์ คณิตศาสตร์
และวศิ วกรรม เขา้ ด้วยกัน
ภาพท ี่ 2.1 คอมไพเลอร์แปลงซอรซ์ โคด้ ภาษาซเี ป็นภาษาเคร่ือง
34
บทที่ 2
#include “DHT.h”
#define DHTPIN 2
#define DHTTYPE DHT11
int RELAY1 = 7;
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(9600);
dht.begin();
pinMode(RELAY1, OUTPUT);
}
void loop() {
float t = dht.readTemperature();
Serial.print(“Temperature:”);
Serial.print(t);
Serial.println(“ *C”);
if(t > 29){
digitalWrite(RELAY1, HIGH);
}
else{
digitalWrite(RELAY1, LOW);
}
delay(1000);
}
ภาพที ่ 2.2 โปรแกรมควบคมุ การรดนำ้าต้นไมอ้ ตั โนมัตโิ ดยใชภ้ าษาซี
การสรา้ งชุดคำาส่ังแบบบลอ็ ก ตั ย่างในภาพที่ 2.2 แ ดงการเขียนโปรแกรมภา าซี
เพื่ ท�าการ ่านค่าเซนเซ ร์ ุณ ภูมิ และน�าค่า ุณ ภูมิมา
การเขียนโปรแกรมค มพิ เต ร์โดยท่ั ไปผู้เขียนจ�าเป็น ค บคมุ การรดน�า้ ต้นไม้
ต้ งจดจ�าค�า ่ังและไ ยากรณ์ข งภา าค มพิ เต ร์ใ ้
แม่นย�าก่ น จึงจะ ามารถ ร้างชุดค�า ่ังท่ีต้ งการได้ ซ่ึง ถ้าน�าโปรแกรมในภาพท่ี 2.2 มาเขียนด้ ยภา าบล็ กโดย
ค�า ั่งเ ล่าน้ันเป็นภา า ังกฤ และมีรูปแบบที่แน่น น ใ ้ท�างานเ มื นกันจะ ามารถเขียนได้ดังภาพท่ี 2.3 จะ
ตายตั ถ้าเขียนค�า ั่งผิดพลาดเพียงเล็กน้ ยโปรแกรมจะ พบ ่าการใช้ภา าบล็ กเขียนโปรแกรมใ ้ท�างาน ย่าง
ไม่ ามารถทา� งานได้ ทา� ใ เ้ ปน็ ปุ รรค า� คญั ต่ การเรยี นรู้ เดีย กันกับโปรแกรมภา าซี ท�าได้ง่ายและใช้จ�าน น
ข งเดก็ โดยเฉพาะในระดบั ประถมและมัธยมตน้ ซึ่งมคี าม บล็ กเพยี งไมก่ ี่บล็ ก
นใจบทเรียนในช่ งเ ลาจ�ากัดและมักเกิดค ามเบ่ื น่าย
ต่ การต้ งจดจ�าคา� ง่ั เ ล่านัน้
เพ่ื ก้า ข้าม ุป รรคดังกล่า จึงเกิด ิธีการ ร้างชุดค�า ่ัง
แบบบล็ กขึ้น ท�าใ ้การ ร้างชุดค�า ั่งท�าได้ง่าย เพียงใช้
การลากบล็ กค�า ั่งที่ต้ งการมาเรียงต่ กัน ช่ ยใ ้ผู้เรียน
โฟกั ไปที่กระบ นการคิดมากก ่าการแก้ปัญ าเรื่ งการ
พิมพค์ �า ง่ั ผดิ
ภาพท ่ี 2.3 โปรแกรมควบคมุ การรดนาำ้ ตน้ ไมอ้ ตั โนมตั โิ ดยใชภ้ าษาบลอ็ ก
35
บทที่ 2
ภา าบล็ ก รื Blocky เป็นภา าใ ม่ที่ทาง Google ได้พัฒนาข้ึนมา โดยจะเป็น Visual Programming Language
รื ก็คื Graphical Programming Language ที่ใ ้ผู้ใช้ลากบล็ กมาต่ กัน โดยบล็ กแต่ละตั จะเป็นตั แทนค�า ่ัง
ที่แตกต่างกัน กไป เม่ื น�าบล็ กมาเรียงต่ กันเป็นล�าดับตามขั้นต นการท�างาน ก็ ามารถท�างานได้เ มื นกับโปรแกรม
ท่ั ๆ ไปไดเ้ ลย
เช่นเดีย กับโปรแกรมภา า ื่น ๆ ภา าบล็ กจะถูกแปลง
เปน็ ภา าเครื่ ง ผา่ นโปรแกรมแปลโปรแกรม รื ค มไพเล ร์
(Compiler) เ ียก่ นจึงจะได้เป็นโปรแกรมทีพ่ ร้ มใช้งาน
ภาพท ี่ 2.4 คอมไพเลอรแ์ ปลงซอรซ์ โค้ดภาษาบลอ็ กเป็นภาษาเคร่ือง
สว่ นประกอบของบอรด์ KidBright
KidBright เป็นบ ร์ด ม งกลฝังตั (Embedded Board) ามารถใช้เป็น ุปกรณ์ค บคุมขนาดจิ๋ ที่ประก บด้ ย
ไมโครค นโทรลเล ร์ (Microcontroller) จ แ ดงผล นา กิ าเรยี ลไทม์ ลา� โพง และเซนเซ รแ์ บบงา่ ย โดยบ รด์ KidBright
จะท�างานตามค�า ั่งท่ีผู้ใช้ ร้างข้ึนผ่านโปรแกรม ร้างชุดค�า ่ังแบบบล็ ก (Block Based Programming) ด้ ยเ ตุนี้เ ง
บ รด์ KidBright จึงถกู น�ามาใชเ้ ปน็ เครื่ งมื ในการ นเขยี นโปรแกรมค มพิ เต ร์ เน่ื งจากผ้เู รยี น ามารถ ร้างชุดคา� ่งั
โดยใชโ้ ปรแกรม ร้างชดุ ค�า งั่ KidBright IDE (Integrated Development Environment) ที่ ามารถใชง้ านไดบ้ นระบบ
ปฏิบัติการ Windows, Mac OS และ Ubuntu ชุดค�า ่ังท่ี ร้างข้ึนจะถูก ่งไปยังบ ร์ด KidBright เพื่ ใ ้บ ร์ดท�างาน
ตามค�า ง่ั ทา� ใ ผ้ ู้เรียนไดเ้ น็ การท�างานจรงิ ข งชดุ ค�า ัง่ ที่ ร้างขึ้นแบบเรียลไทม์ เพ่ื ใ เ้ ขา้ ใจบ ร์ด KidBright ได้ดยี ิ่งขึน้
จึงข ขยายค ามค�า ่า ม งกลฝงั ตั และคา� า่ ระบบปฏิบตั ิการ
36
บทที่ 2
สมองกลฝงั ตวั คืออะไร
ม งกลฝงั ตั คื ค มพิ เต รข์ นาดเลก็ ทน่ี า� ไปฝงั ไ ใ้ น ปุ กรณต์ า่ ง ๆ เพ่ื เพมิ่ ค ามฉลาดข ง ปุ กรณน์ นั้ ๆ ผา่ นซ ฟตแ์ ร์
ค บคุมการท�างานท่ีแตกต่างจากระบบประม ลผลในค มพิ เต ร์ ม งกลฝังตั ถูกใช้ ย่างแพร่ ลายในเคร่ื งใช้ไฟฟ้า
ยานพา นะ และ ปุ กรณ์ ่ื าร การที่ ามารถน�าไปฝงั ไ ้ใน ุปกรณ์นีเ้ ง ทา� ใ ม้ ชี ่ื เรยี ก า่ ม งกลฝังตั โดยการพฒั นา
ซ ฟตแ์ รค์ บคมุ การทา� งานบนระบบ ม งกลฝังตั ามารถพฒั นาโดยใช้ รื ไมใ่ ชร้ ะบบปฏิบตั กิ ารก็ได้
ภาพท ่ี 2.5 สมองกลฝังตวั
37
บทที่ 2
ระบบปฏบิ ัตกิ าร OS
(Operating System)
ระบบปฏิบัตกิ าร (Operating System) รื โ เ (OS) โดยทั่ ไประบบปฏิบัติการน้ัน ไม่ได้มีแต่เฉพาะใน
คื โปรแกรมท่ีท�า น้าท่ีเป็นตั กลางเชื่ มต่ ระ ่าง ค มพิ เต ร์เท่าน้ัน แต่มี ยู่ใน ุปกรณ์ ิเล็กทร นิก ์
ารด์ แ ร์ (Hardware) กบั ซ ฟตแ์ รป์ ระยกุ ต์ (Application) ลายชนิด เชน่ โทร พั ทม์ ื ถื ค มพิ เต ร์พกพา พดี เี
โดยจะท�า น้าท่ีค บคุมการแ ดงผล การท�างานข ง แท็บเล็ต และระบบ ม งกลฝงั ตั โดยจะท�า นา้ ที่ค บคุม
าร์ดแ ร์ ใ ้บริการกับซ ฟต์แ ร์ประยุกต์ทั่ ไปในการ การท�างานข ง ุปกรณ์ต่าง ๆ และติดต่ กับผู้ใช้ผ่าน
รับ ่งและจัดเก็บข้ มูลกับ าร์ดแ ร์ และจัด รรการใช้ ซ ฟต์แ ร์ประยุกต์ (Application) ตั ย่างข งระบบ
ทรัพยากรระบบ (Resources) ใ ้เป็นไป ย่างมี ปฏิบัตกิ ารในค มพิ เต ร์ ได้แก่ Windows, Linux, Mac
ประ ิทธภิ าพ OS, Solaris, Ubuntu ่ นตั ย่างข งระบบปฏบิ ตั กิ าร
ในมื ถื ได้แก่ Windows Mobile, iOS และ Android
เป็นต้น และตั ย่างข งระบบปฏิบัติการที่ใช้ในระบบ
ม งกลฝังตั ไดแ้ ก่ QNX และ FreeRTOS เป็นต้น
ภาพที่ 2.6 การทาำ งานของระบบปฏิบัติการ
38
หนา้ ที่ของระบบปฏิบตั ิการ บทท่ี 2
ตดิ ตอ่ กบั ผใู้ ช้ (User Interface) เนื่ งจาก OS ถกู รา้ งขน้ึ
ด้ ยจุดประ งค์ ลัก คื เพ่ื �าน ยค าม ะด กในการ
ท�างานแก่ผใู้ ช้ โดยทผ่ี ู้ใชไ้ ม่จา� เปน็ ต้ งทราบการทา� งานข ง
ารด์ แ ร์ ก็ ามารถทา� งานไดโ้ ดยงา่ ย ดงั นน้ั จึงต้ งมี ่ นที่
ทา� น้าทีต่ ดิ ต่ กบั ผู้ใชใ้ นลกั ณะที่ง่ายต่ การใช้งาน
ควบคุมการท�างานของคอมพิวเตอร์ OS เป็นตั กลางที่
เช่ื มต่ ระ ่างผู้ใช้งานกับ าร์ดแ ร์ โดยผู้ใช้ไม่จ�าเป็น
ต้ งเข้าใจในการท�างานข ง าร์ดแ ร์ ดังน้ัน OS จึงต้ ง
มี น้าที่ค บคุมการท�างานข ง าร์ดแ ร์ต่าง ๆ เ ล่านั้น
แทนผู้ใช้ผ่านทางดีไ ซ์ไดรเ ร์ (Device Driver) ข ง
ปุ กรณแ์ ตล่ ะชนิด
จัด รรทรัพยากรในระบบ ในการท�างานข งเครื่ ง
ค มพิ เต รน์ น้ั จา� เปน็ ต้ งใชท้ รพั ยากรตา่ ง ๆ เขา้ ช่ ย เชน่
น่ ยประม ลผล น่ ยค ามจ�า เป็นต้น และทรัพยากร
เ ล่าน้ีมีจ�ากัด จึงจ�าเป็นต้ งมีการจัด รรการใช้งานใ ้เกิด
ประโยชน์ ูง ุด ท�าใ ้การประม ลผลด�าเนินไป ย่างมี
ประ ิทธภิ าพ
โดยท่ั ไปการเขียนโปรแกรมค มพิ เต ร์ท่ีใช้ภา าต่าง ๆ รื การ ร้าง
ชุดค�า ่ังโดยใช้บล็ กใน KidBright เป็นการ ร้างซ ฟต์แ ร์ประยุกต์
นั่นเ ง ซ ฟต์แ ร์ประยุกต์ท่ี ร้างข้ึนจะติดต่ ื่ ารกับระบบปฏิบัติการ
ีกช้ัน นึ่ง เพื่ ติดต่ รื ใช้งาน าร์ดแ ร์ ซ ฟต์แ ร์ประยุกต์จึงต้ ง
ถกู แปลงใ ้ ยูใ่ นรปู ภา าเคร่ื งที่ระบบปฏิบัติการเข้าใจได้
39
บทท่ี 2
การทาำ งานของ KidBright
KidBright ประก บด้ ย 2 ่ น คื บ ร์ด ม งกลฝังตั KidBright และโปรแกรม รา้ งชดุ คา� งั่ KidBright IDE โดยผูเ้ รียน
ามารถ ร้างชดุ ค�า ั่งผา่ น KidBright IDE โดยการลากและ างบล็ กคา� งั่ ที่ต้ งการ จากนั้น KidBright IDE จะ Compile
และ ่งชดุ ค�า ั่งดงั กลา่ ไปท่บี รด์ KidBright เพื่ ใ ้บ ร์ดท�างานตามค�า ัง่ าทิ รดนา�้ ต้นไม้ตามระดบั ค ามช้ืนท่ีกา� นด
รื เปิดปดิ ไฟตามเ ลาทก่ี �า นด
สรา้ งชุดคาำ สง่ั ควบคุม ประยกุ ตก์ ารใชง้ าน
การทาำ งานบอรด์ ตามจินตนาการ
ภาพท ี่ 2.7 ภาพรวมการใชง้ าน KidBright
!
Compile คอื การแปลงโปรแกรมคอมพิวเตอร์ภาษาใด ๆ
ไปเปน็ ภาษาเครื่องหรือรหัสคาำ ส่งั ทส่ี ว่ นควบคุมการทาำ งาน
ของบอร์ดสมองกลฝงั ตัวสามารถนาำ ไปใช้งานได้
40
บทที่ 2
บอร์ดสมองกลฝงั ตวั
KidBright
บ รด์ KidBright ที่ใชใ้ นโครงการ Coding at School เปน็ ล�าโพง และเซนเซ ร์พื้นฐาน โดยบ ร์ดจะรับชุดค�า ่ังจาก
บ ร์ดที่พัฒนาขึ้นเป็นรุ่นที่ ง ภายใต้ชื่ KidBright32 โปรแกรม ร้างชุดค�า ่ัง KidBright IDE ผ่าน ายยูเ บี
โดยใช้ ุปกรณ์ค บคุมการท�างานขนาดเล็ก รื เรียก ่า (USB) บ ร์ด KidBright ามารถเชื่ มต่ เซนเซ ร์
ไมโครค นโทรลเล ร์ (เบ ร์ ESP32) เป็นตั ค บคุมการ ภายน กต่าง ๆ เพิ่มเติมได้ผ่านช่ ง ัญญาณ IN1-IN4
ทา� งานข งบ ร์ด พร้ มตดิ ตง้ั จ แ ดงผล นา ิกาเรยี ลไทม์ ดงั แ ดงในรปู ท่ี 2.8
ภาพท ี่ 2.8 องคป์ ระกอบต่าง ๆ
ของบอร์ด KidBright (ด้านหนา้ )
41
บทท่ี 2
!
KidBright32
เปน็ การนาำ เอาตวั KidBright ไปรวมกบั IoT (Internet of Things)
ชว่ ยใหม้ ีการสง่ ข้อมลู ผ่านระบบเครือขา่ ยไปควบคุมอปุ กรณต์ ่าง ๆ
ในระยะไกล ไมว่ า่ จะเปน็ การรดนำา้ ต้นไม้ผา่ นมือถือ หรอื การควบคุม
สิ่งตา่ ง ๆ ในระยะไกล
ภาพท่ี 2.9 องคป์ ระกอบตา่ ง ๆ
ของบอรด์ KidBright (ด้านหลงั )
42
บทที่ 2
การทาำ งานขององคป์ ระกอบต่างๆ
ในบอร์ด KidBright
43
บทที่ 2
โปรแกรมสร้างชุดคาำ ส่ัง
ภาพท ่ี 2.10 โปรแกรมสรา้ งชดุ คำาสัง่
ภาพท ี่ 2.11 การทำางานของโปรแกรมสรา้ งชุดคำาสั่ง โปรแกรม ร้างชุดค�า ั่ง KidBright IDE จะ ร้างชุดค�า ่ัง
โดยใช้ Block Based Programming ซึ่ง ามารถลาก
44 บล็ กชดุ คา� งั่ มาเรยี งต่ กนั เพ่ื ค บคมุ ใ บ้ รด์ KidBright
ท�างานตามล�าดับท่ีก�า นด จากนั้น KidBright IDE จะ
ท�าการแปลงชุดค�า ่ังเป็นโค้ด รื ร ั ค�า ั่งที่บ ร์ดเข้าใจ
และ ่งผ่าน ายยูเ บีไปยังบ ร์ด เม่ื บ รด์ ไดร้ บั คา� ่ังจะ
ท�างานตามขัน้ ต นที่ชดุ คา� ่งั ก�า นดไ ้
บทที่ 2
คณุ สมบัตขิ อง KidBright
โปรแกรม ร้างชุดค�า ่ัง KidBright ร งรับการท�างานแบบเชิงเ ตุการณ์
IDE ร งรบั การใชง้ านบนค มพิ เต ร์ (Event-Driven Programming)
ร งรับการทา� งานแบบมลั ติทา กงิ ร งรบั การเช่ื มต่ เซนเซ รท์ ี่
(Multitasking Programming) ลาก ลาย
ร งรับการเช่ื มต่ ระ ่าง ุปกรณ์
(Internet of Things)
!
Event-Driven Programming คอื วธิ กี ารเขยี นโปรแกรมคอมพิวเตอร์ทลี่ าำ ดับการทาำ งาน
ของโปรแกรมกาำ หนดโดยเหตกุ ารณ์ อาทิ ทาำ งานเมือ่ ผู้ใชก้ ดปุ่ม
Multitasking Programming คอื วธิ ีการเขียนโปรแกรมคอมพวิ เตอร์ให้ทำางานแบบขนาน
ทำาใหส้ ามารถทาำ งานไดม้ ากกว่าหนงึ่ งานโดยไมต่ อ้ งรอใหง้ านใดงานหนงึ่ เสร็จกอ่ น
45
บทท่ี 2
ขน้ั ตอนการใชง้ าน
อุปกรณท์ จี่ าำ เปน็
• ค มพิ เต ร์ ่ นบคุ คลระบบปฏบิ ัตกิ าร
Windows รื Mac OS
• บ รด์ ม งกลฝงั ตั KidBright
• ายไมโครยูเ บี
ภาพท ี่ 2.12 การเช่ือมต่อบอรด์ KidBright กบั คอมพวิ เตอร์
การติดต้ัง KidBright IDE เรม่ิ การใช้งาน
1. ทา� การ Download KidBright IDE จาก ขน้ั ตอนท่ี 1 เช่ื มต่ บ รด์ KidBright เข้ากบั ค มพิ เต ร์
www.kid-bright.org ดังภาพที่ 2.12 โดยน�า ายไมโครยูเ บีด้านท่ีเป็นยูเ บี
(ด้านที่มี ั ต่ ขนาดใ ญ่) เ ียบเข้ากับพ ร์ตยูเ บีข ง
2. ทา� การตดิ ต้ัง KidBright IDE ค มพิ เต ร์ และน�าด้านไมโครยูเ บี (ด้านที่มี ั ต่
กรณี Windows ขนาดเล็ก) เ ียบเข้ากับช่ งเ ียบ ายไมโครยูเ บีข ง
ใ ด้ บั เบ้ิลคลกิ ไฟล์ KidBrightIDE-setup.exe บ ร์ด KidBright (ช่ ง มายเลข 4 ในภาพท่ี 2.8)
กรณี Mac OS
ใ แ้ ตกไฟล์ KidBrightIDE.app.zip จากนัน้ คัดล ก
KidBrightIDE.app ไป างทีแ่ ปพลิเคชัน folder
46
บทที่ 2
ขั้นตอนท่ี 2 เปดิ โปรแกรม รา้ งชุดคา� ่งั KidBright IDE า� รบั ระบบปฏิบตั ิการ Mac OS
�า รับระบบปฏิบตั กิ าร Windows ดบั เบล้ิ คลกิ ไ ค นข ง KidBright IDE บน นา้ แ ปพลเิ คชนั
ดับเบิ้ลคลิกไ ค นข ง KidBright IDE บน น้าเด ก์ท ป (Applicaitons) ดังภาพที่ 2.14 และจะปรากฏ KidBright
(Desktop) ดังภาพที่ 2.13 และจะปรากฏ KidBright IDE IDE ดงั ภาพที่ 2.15
ดงั ภาพที่ 2.15
ภาพท ่ี 2.13 ไอคอน KidBright IDE บนหน้าเดสกท์ อป ภาพท ี่ 2.14 ไอคอน KidBright IDE บนหน้าแอปพลิเคชนั
ภาพท ี่ 2.15 โปรแกรมสร้างชดุ คำาสง่ั KidBright IDE
47
บทท่ี 2
ส่วนประกอบของโปรแกรมสร้างชุดคำาสั่ง KidBright IDE
ภาพท ี่ 2.16 ส่วนประกอบของโปรแกรมสร้างชุดคำาสงั่ KidBright IDE
48
บทที่ 2
คาำ สัง่ ควบคุมการทาำ งานของ
บอรด์ KidBright ในรปู ของบลอ็ ก
คำาสัง่ ควบคมุ การทาำ งานของบอรด์ KidBright
49
บทท่ี 2
พืน้ ฐาน (Basic Tab)
เป็นบล็ กค�า ่ังท่ใี ช้งานบ่ ย ๆ เชน่ การแ ดงตั กั รบนจ แ ดงผล การ น่ งเ ลา และการ นร บ
ภาพท ่ี 2.17 บลอ็ กในแถบพ้ืนฐาน
50
บทที่ 2
คณติ ศาสตร์ (Math)
เป็นบล็ กคา� ่งั ท่ีใช้ก�า นดค่าคงท่ี กา� นดตั แปร รื ค�าน ณทางคณิต า ตร์
ภาพท ี่ 2.18 บลอ็ กในแถบคณติ ศาสตร์
51
บทท่ี 2
ตรรกะ (Logic Tab)
เป็นบล็ กค�า ง่ั ท่ใี ชก้ า� นดเงื่ นไข และการตร จ บ ถานะข ง ติ ช์ 1 และ ติ ช์ 2
ภาพท ี่ 2.19 บล็อกในแถบตรรกะ
52
บทที่ 2
วนรอบ (Loop Tab)
เป็นบล็ กคา� ัง่ ทใี่ ้ท�างาน นร บ
ภาพท ่ี 2.20 บลอ็ กในแถบวนรอบ
รอ (Wait Tab)
เปน็ บล็ กคา� ่งั ใ ้ ยุดการท�างานชั่ ครา เพื่ ร ถานการณ์ เชน่ ยุดร จนกระท่งั มีการกด ิตช์ 1
ภาพท ี่ 2.21 บล็อกในแถบรอ
53
บทที่ 2
เสียงดนตรี (Music Tab)
เปน็ บล็ กค�า งั่ ใ ล้ �าโพง ง่ เ ยี งตามตั โน้ตทกี่ า� นด า่ นและต้งั ระดบั ค ามดังเ ียง
ภาพท ่ี 2.22 บลอ็ กในแถบเสียงดนตรี
เซนเซอร์ (Sensor Tab)
เป็นบล็ กค�า ง่ั การเรยี กใช้งานเซนเซ ร์ ดั แ งและเซนเซ ร์ ดั ุณ ภมู ิ ร มถงึ ตร จ บ ถานะ ติ ช์
ภาพท ่ี 2.23 บล็อกในแถบเซนเซอร ์
54
บทที่ 2
เวลา (Real-time Clock Tab)
เปน็ บล็ กคา� งั่ ที่เกี่ย ข้ งกับนา ิกาเรยี ลไทม์ เชน่ นั เดื น ปี และเ ลา
ภาพท ี่ 2.24 บลอ็ กในแถบเวลา
55
บทที่ 2
ไอโอ (Comm Tab)
เป็นบล็ กค�า ่งั ท่ี ่านและค บคุม ถานะข งยูเ บี
ภาพท ่ี 2.25 บล็อกในแถบไอโอ
ขั้นสูง (Advance Tab)
เปน็ บล็ กค�า ั่งทเ่ี กย่ี ข้ งกบั การท�างานแบบมลั ตทิ า กงิ
ภาพท ่ี 2.26 บลอ็ กในแถบขั้นสูง
56
บทที่ 2
ทดลองเขียนโปรแกรม
เขียนโปรแกรมเพ่ื แ ดงภาพเลข น่งึ บนจ แ ดงผลข งบ ร์ด KidBright
ขนั้ ตอนที่ 1 ที่ KidBright IDE ในแถบเคร่ื งมื ดา้ นซา้ ย ลากบล็ กแ ล ดี ี 16x8 จากแถบพนื้ ฐาน (บล็ กในกร บ เี ลื ง)
ดังภาพท่ี 2.27 และ างบนพื้นท่ี ร้างชุดค�า ่ังดังภาพที่ 2.28 แต่ละจุดเล็ก ๆ ที่เรียงต่ กันเป็นเมทริกซ์บนบล็ กแ ล ีดี
16x8 คื ตั แทนข งจดุ แตล่ ะจดุ บนจ แ ดงผลข งบ รด์ KidBright
ภาพท่ี 2.27 เลือกบลอ็ กแอลอดี ี 16x8 จากแถบพ้นื ฐาน
ภาพที่ 2.28 วางบลอ็ กแอลอดี ี 16x8 บนพืน้ ทสี่ รา้ งชดุ คำาสงั่
57
บทท่ี 2
ขน้ั ตอนที่ 2 เลื กช่ งเล็ก ๆ ในบล็ กแ ล ีดี 16x8 ใ เ้ ปน็ จดุ ีแดงในตา� แ น่งทีแ่ ดงตั เลข น่ึงดังภาพ 2.29 จดุ ท่เี ลื ก
เป็น ีแดงบนบล็ กแ ล ดี ี 16x8 เป็นการ ง่ั ใ ้จ แ ดงผลบนบ รด์ KidBright แ ดงเป็น ีแดงด้ ย
ภาพท ี่ 2.29 เลือกจุดสีแดงในตำาแหนง่ ทแี่ สดงตัวเลขหนงึ่
ขัน้ ตอนที่ 3 กดปุ่ม รา้ งโปรแกรม ดังแ ดงในภาพท่ี 2.30
ภาพท ่ี 2.30 กดปมุ่ สร้างโปรแกรม ภาพท่ ี 2.31 รปู เลขหน่งึ แสดงบนหนา้ จอ
ขั้นตอนท่ี 4 โปรแกรม รา้ งชดุ คา� ่ังจะท�าการแปลงบล็ ก
ไปเป็นร ั ค�า ่ัง เมื่ เรียบร้ ยแล้ จะ ่งร ั ค�า ่ังไปยัง
บ รด์ KidBright ผา่ น ายยูเ บี และจะปรากฏเลข นึ่งท่ี
จ แ ดงผลข งบ ร์ด KidBright
58
99.-