สิ่งที่เกี่ยวข้อง

วันอังคารที่ ๓๑ กรกฎาคม พ.ศ. ๒๕๕๐

การกำหนดค่าต่างๆเพื่อจัดการProject และ Library

เนื่องจาก Library นี้ได้ถูกพัฒนาขึ้นมาสำหรับ MCU หลายๆรุ่น
ทำให้ต้องที่การจัดการ Library ที่ต่างกันด้วย

Include Section

ในนำ Library มาใช้งานเราจะทำการ Include ไฟล์เข้ามาซึ่งจะมีอยู่ีด้วยกันสองส่วน คือ
  1. ไฟล์ที่ทำ Define ค่าต่างๆ ของ MCU ที่เราจะใช้งาน และจัดการ Library (global.h)
  2. ไฟล์ที่เป็น Method หรือ Function ต่างๆ ที่ Library รองรับ (Ex uart.h เป็นต้น)
ซึ่งก็คล้ายๆกับ Library ทั่วๆไป แต่สิ่งที่ต่างออกไปคือ
Procyon Library ได้ทำการแยกไฟล์ที่ใช้ Define ออกเป็นสองส่วน ภายในไฟล์ global.h

1. ไฟล์ที่กำหนด Macro ต่างๆ (armlibdefs.h / avrlibdefs.h) เพื่อให้สื่อถึงความหมายของการกระทำ แทนรูปแบบเครื่องหมาย
[Ex] BIT(n) <=> (1 << (n)) เป็นต้น
2. ไฟล์ที่กำหนดรูปแบบของข้อมูล (armlibtypes.h / avrlibtypes.h) ซึ่งแสดงถึงขนาด และความหมายเฉพาะ เพื่อช่วยในการใช้งานข้อมูลในรูปแบบที่เหมาะสม
[Ex] unsigned char <=> u08, MAX_U08 <=> 255 เป็นต้น

ทั้งสองส่วนนี้จะเปลี่ยนแปลงตามโปรเจคที่ต่างกัน

นอกจากสองส่วนนี้ยังมีส่วนที่สำคัญอื่นๆ ภายใน global.h อีกนั้นคือ
ส่วนการกำหนดลักษณะทำงานของตัว Processor

MCU Base Define

โดยพื้นฐานแล้วการทำงานของ Processor นั้นจะมีลักษณะการทำงานที่ต่างกัน และ MMCU ช่วยกำหนด Platform [AVR และ ARM นั้นมีการกำหนดที่ต่างกัน]

ส่วนการทำงานพื้นฐานของ Processor ที่สามารถกำหนดได้ผ่าน global.h
  1. ARM ฺBase Function
    1. Phase Locked Loop [ส่งผลถึงความถี่ในการทำงาน]
    2. Peripheral Bus Bus Speed Divider [ส่งผลถึงการจัดการความเร็ว Bus ภายใน]
  2. AVR Base Function
    1. CPU Clock Speed [ความถี่ในการทำงาน]
ให้เราทำการแก้ไขการกำหนดค่าให้ตรงกับที่เราใช้งาน

เพิ่มเติม
นอกจากสองส่วนคือ Include Section และ MCU Base Define ยังมีส่วนเพิ่มเติมที่ช่วยในการพัฒนาอีกอย่างคือ
ในส่วนท้ายสุดได้มีการ Define เพื่อตรวจสอบการกำหนด MCU Base Define ผิดพลาดด้วย

ไม่มีความคิดเห็น:

ผู้สนับสนุน

จัดตามกลุ่ม