A Simplified Robot Controlling Software Coe 2005-15
ทีมงาน นายจักรี วิญญาณ รหัส 453040635-4 นายนฤนารถ อออิงทรัพย์ รหัส 453040773-2
Agenda ผลงานที่ผ่านมา ทบทวนลักษณะงานที่ทำ ชุดคำสั่งของ “ภาษาไทยบอท” Compiler “ภาษาไทยบอท” Interpreter “ภาษาไทยบอท” ปํญหา คำถาม
ผลงานที่ผ่านมา ออกแบบชุดของคำสั่งของ ภาษา ”ไทยบอท” พัฒนา Compiler ภาษา “ไทยบอท” (อยู่ระหว่างการพัฒนา) พัฒนา Interpreter ภาษา “ไทยบอท” สำหรับ PIC Microcontroller (อยู่ระหว่างการพัฒนา) พัฒนา EEPROM Programmer โดยใช้ Infrared ในการติดต่อ (อยู่ระหว่างการพัฒนา)
ลักษณะงานที่ทำ
ชุดคำสั่งของ “ภาษาไทยบอท” แบ่งเป็น 6 กลุ่มคำสั่ง รวมทั้งหมด 24 คำสั่ง คือ คำสั่งเกี่ยวกับการสร้างโปรแกรม 2 คำสั่ง คำสั่งเกี่ยวกับการควบคุมมอเตอร์ 5 คำสั่ง คำสั่งเกี่ยวกับสวิตช์และเซนเซอร์ 2 คำสั่ง คำสั่งเกี่ยวกับการสร้างตัวแปร 1 คำสั่ง คำสั่งเกี่ยวกับการคำนวนทางคณิตศาสตร์ 11 คำสั่ง คำสั่งเกี่ยวกับโครงสร้าง 3 คำสั่ง
คำสั่งเกี่ยวกับการสร้างโปรแกรม 2 คำสั่ง Byte Code (Hex) Size (Byte) จำนวน Argument คำอธิบาย เริ่ม 01 1 คำสั่งเพื่อเริ่มการทำงานของโปรแกรม จบ 02 คำสั่งเพื่อจบการทำงานของโปรแกรม
คำสั่งเกี่ยวกับการควบคุมมอเตอร์ 5 คำสั่ง Byte Code (Hex) Size (Byte) จำนวน Argument คำอธิบาย เดินหน้า 03 2 1 ใช้ควบคุมให้มอเตอร์หมุนไปในทิศทางหนึ่ง ถอยหลัง 04 ใช้ควบคุมให้มอเตอร์หมุนไปในทิศทางตรงข้าม หยุด 05 หยุดการควบคุมมอเตอร์ เบรค 06 ควบคุมไม่ให้มอเตอร์หมุนได้ หน่วงเวลา 07 / หน่วงเวลาตามค่าที่กำหนด
คำสั่งเกี่ยวกับสวิตช์และเซนเซอร์ 2 คำสั่ง Byte Code (Hex) Size (Byte) จำนวน Argument คำอธิบาย สวิตช์ 08 2 1 อ่านสถานะของสวิตช์ว่าถูกกดหรือไม่ เซนเซอร์ 09 อ่านค่าเซนเซอร์ในการตรวจจับต่างๆ เช่น แสงสว่าง
คำสั่งเกี่ยวกับการสร้างตัวแปร 1 คำสั่ง Byte Code (Hex) Size (Byte) จำนวน Argument คำอธิบาย ตัวแปร 0A 2 1 คำสั่งใช้ในการสร้างตัวแปร
คำสั่งเกี่ยวกับการคำนวนทางคณิตศาสตร์ 11 คำสั่ง Byte Code (Hex) Size (Byte) จำนวน Argument คำอธิบาย + 0B 3 2 แสดงค่าตัวเลขที่ได้จากการบวก - 0C แสดงค่าตัวเลขที่ได้จากการลบ * 0D แสดงค่าตัวเลขที่ได้จากการคูณ / 0E แสดงค่าตัวเลขที่ได้จากการหาร = 0F แสดงค่าตัวเลขที่ได้จากการเปรียบเทียบการเท่ากับ == 18 การกำหนดค่า > 10 แสดงค่าตัวเลขที่ได้จากการเปรียบเทียบความมากกว่า
คำสั่งเกี่ยวกับการคำนวนทางคณิตศาสตร์ 11 คำสั่ง ต่อ Byte Code (Hex) Size (Byte) จำนวน Argument คำอธิบาย < 11 3 2 แสดงค่าตัวเลขที่ได้จากการเปรียบเทียบความน้อยกว่า และ 12 แสดงค่าตัวเลขที่ได้จากการหาค่าตรรกะ (และ) หรือ 13 แสดงค่าตัวเลขที่ได้จากการหาค่าตรรกะ (หรือ) ไม่ 14 1 แสดงค่าตัวเลขที่ได้จากการหาค่าตรรกะ (ไม่)
คำสั่งเกี่ยวกับโครงสร้าง 3 คำสั่ง Byte Code (Hex) Size (Byte) จำนวน Argument คำอธิบาย ถ้า 15 5 2 เงื่อนไขถูก จะทำงานตามคำสั่ง ถ้าไม่ก็ 16 6 3 เงื่อนไขถูก จะทำงานตามคำสั่ง 1, ไม่ถูก จะทำงานตามคำสั่ง 2 วนรอบ 17 ทำงานซ้ำคำสั่งเดิม จนกว่าเงื่อนไขไม่ถูกต้อง
Compiler ภาษา “ไทยบอท” จะทำการ Compile file ที่มี นามสกุลเป็น “.thb” เช่น test.thb Compile ภาษาไทยบอท แล้วสร้าง Hex File สำหรับ ThaiBot Interpreter
ตัวอย่าง Compiler ภาษา “ไทยบอท”
Interpreter “ภาษาไทยบอท” สำหรับ PIC Microcontroller
ปัญหาที่พบ ThaiBot Compiler มีจุดบกพร่อง, ทำงานผิดพลาด ThaiBot Interpreter มีจุดบกพร่อง, ทำงานผิดพลาด เนื้อที่ในหน่วยความจำของ MCU ไม่เพียงพอ
เนื้อที่ในหน่วยความจำของ MCU ไม่เพียงพอ การแก้ไข เปลี่ยน PIC16F872 เป็น PIC16F876 Features PIC16F872 PIC16F873 PIC16F876 FLASH Memory 2K 4K 8K Data Memory 128 192 368 EEPROM 64 256 I/O Ports Ports A, B, C
คำถาม