ควบคุมไมโครคอนโทรลเลอร์ด้วยภาษา C

จากประสบการณ์ที่ผ่านมาการเขียนโปรแกรมให้ไมโครคอนโทรลเลอร์ด้วยภาษาแอสเซมบลีมีการทำงานที่รวดเร็วดี แต่กว่าจะเขียนได้แต่ละโปรแกรมนั้นลำบากลำบนพอตัว อีกทั้งยังไม่สามารถเขียนภาษาแอสเซมบลีในระบบใหญ่ๆได้อีกด้วย เพราะมันจะยุ่งยาก เมื่อลองศึกษาดูแล้วมีโปรแกรมที่ช่วยแปลงภาษา C เป็น HEX code ได้เลย โปรแกรมที่ว่านี้คือ KEIL C51 ซึ่งสามารถดาวน์โหลดได้ที่ http://www.keil.com เป็นเวอร์ชั่นทดลองใช้ หลายคนสงสัยว่าจะทำไงถึงจะแปลงภาษา C เป็น HEX code ได้ เอาละมาลองเขียนกันเลยดีกว่าครับ

สร้างโปรเจค

  • เปิดโปรแกรม u Vision2, สร้างไฟล์โปรเจคและเลือก CPU ที่จะใช้จาก device database
  • เขียน source code และเพิ่มเข้าไปใน source file ของโปรเจค
  • ตั้งค่า tool option สำหรับฮาร์ดแวร์ปลายทาง
  • สร้างโปรเจคและ HEX ไฟล์สำหรับ PROM

อ่านดูอาจจะงงลองมาทำ step-by-step ดีกว่าครับผมจะบอกขั้นตอนอย่างละเอียด

เปิด u Vision2 และ สร้างไฟล์โปรเจค

เมื่อเปิดโปรแกรมมาแล้วถ้าต้องการสร้างโปรเจคให้คลิกที่เมนู Project - New Project... มันจะมีหน้าต่างถามชื่อโปรเจค ตัวอย่างนี้จะตั้งชื่อว่า test.uv2 ซึ่งคุณอาจจะตั้งชื่ออื่นก็ได้ เมื่อ OK ไปแล้วจะมีหน้าต่าง Select Device for Target ให้คุณเลือก CPU สำหรับโปรเจคของคุณ ในตัวอย่างนี้ผมเลือก Atmel - 89C51

รูปภาพทางขวามือด้านล่างจะมี File,Regs,Books เราเรียกว่า Project Window คุณสามารถดูคู่มือ CPU ได้จากหน้าต่าง Project Windows - Books

เขียนโปรแกรม

คุณสามารถสร้างโปรแกรมขึ้นใหมได้โดยคลิกที่เมนู File - New หลังจากนั้นจะมีหน้าต่างว่างๆ ไว้ให้คุณพิมพ์โปรแกรมภาษา C ใส่ลงไป โปรแกรม u Vision จะมีสีบ่งบอกคำสั่งในโปรแกรม เมื่อต้องการ save โปรแกรม ให้ไปที่ File - Save As... ไฟล์ที่บันทึกจะมีนามสกุลเป็น *.C. สมมติผมตั้งชื่อว่า main.c จะได้

หลังจากนั้นให้เราเอา source file ใส่ลงไปในโปรเจค ให้คุณเข้าไปคลิกที่เครื่องหมาย + หน้า Target 1 ในหน้าต่าง Project window - Files มันจะแตกย่อยออกมาเป็น Source Group 1 ให้คลิกขวาที่ตรงนี้ แล้วเลือก Add Files to Group 'Source Group 1' เลือก main.c ที่คุณเพิ่งสร้างไป

สร้าง Startup Code

ไฟล์ STARTUP.A51 เป็นไฟล์ Startup Code สำหรับ CPU ตระกูล 8051 ไฟล์นี้มีไว้สำหรับเคลียร์หน่วยความจำต่างๆ และตั้งค่าเริ่มต้น (Initial) ให้กับฮาร์ดแวร์ ไฟล์ STARTUP.A51 จะอยู่ที่โฟลเดอร์ C:\KEIL\C51\LIB

เพื่อป้องกันข้อผิดพลาดจากข้อมูลที่ค้างอยู่ใน CPU เราควรจะใส่ตัว Startup ไว้ด้วย ขั้นตอนมีดังนี้ ให้คุณไปที่ Project Window - File แล้วคลิกขวาที่ main.c เลือก Targets,Groups,Files... แล้วพิมพ์ System Files ในหน้าต่าง Groups/Add File แล้วกด Add จากนั้นเลิอกที่ System Files แล้วกด Add Files to Group เลือก STARTUP.A51

การตั้งค่าอุปกรณ์ต่างๆ

u Vision 2 ให้คุณได้สามารถตั้งค่าฮาร์แวร์ปลายทางได้โดยคลิกที่ปุ่ม Options for Target คุณสามารถตั้งค่าหน่วยความจำได้ใหม่

สร้างโปรเจคและ HEX ไฟล์

มาถึงขั้นตอนสุดท้ายแล้วครับ ให้เช็คดูว่าโปรแกรมถูกต้องหรือเปล่าจากนั้นให้กดปุ่ม Build Target ถ้าไม่มีอะไรผิดพลาดก็จะปรากฎหน้าต่างแบบนี้ขึ้นมาแสดงว่าโปรเจคที่เราสร้างมาใช้ได้แล้ว ให้ทดสอบดูโดยการ Simulate ดูว่าทำงานถูกต้องหรือเปล่า

ถ้าต้องการ HEX ไฟล์ไปใช้งานให้กด Option for Target - Output แล้วคลิกที่ Creat HEX file แล้วกดที่ Build Target อีกทีคุณจะได้ HEX ไฟล์ไปใช้งานตัว HEX ไฟล์นี้จะอยู่ในโฟลเดอร์ที่คุณเซฟ ลองทำดูนะครับ : )

มีข้อแนะนำอะไรเมลมาที่ E-mail:[email protected]

 

 

 

 


Copyright © 2003 Aon micro. All rights reserved

E-mail:[email protected]

 

 

 

Hosted by www.Geocities.ws

1