>> อยากสร้างเป็น Library ไว้ใช้งานเองน่ะครับ

  • 17 Replies
  • 7253 Views
ตอนเอา file เข้ามาใน ใน mplabX ให้คลิ๊กขวาที่ file เลือก properties แล้วเลือก exclude from build เพราะว่าหาเราไม่เลือก ตัว IDE จะ include ให้เราอีกทีนึง

*

Offline TaoTao

  • ***
  • 239
    • View Profile
ได้ แว้วววววว 

โอ้วว จอร์จ มันยอดมากกกกกกก ทำตามแว้ว ได้ทันทีเลย
ไม่ได้ทำ Exclude from build นี่เอง ที่ทำให้ Complies ไม่ผ่าน

ขอบคุณมากคร๊าบบบบ
    ___/|\___

ชีวิตที่ง่ายยยย ขึ้น  อิอิ

ตอนเอา file เข้ามาใน ใน mplabX ให้คลิ๊กขวาที่ file เลือก properties แล้วเลือก exclude from build เพราะว่าหาเราไม่เลือก ตัว IDE จะ include ให้เราอีกทีนึง

น่าสนใจดีครับ ท่านพี่ 'ผมขอลองมั่งนะ ;D

*

Offline TaoTao

  • ***
  • 239
    • View Profile
ตอนเอา file เข้ามาใน ใน mplabX ให้คลิ๊กขวาที่ file เลือก properties แล้วเลือก exclude from build เพราะว่าหาเราไม่เลือก ตัว IDE จะ include ให้เราอีกทีนึง

น่าสนใจดีครับ ท่านพี่ 'ผมขอลองมั่งนะ ;D

มานั่งยันอีกรอบก๊าบบบ
วิธีนี้ ยอดเยี่ยมกระเทียมดอง

เดิม เอกสารเดียว เป็นพันบรรทัด  @_@!
พอกระจายออก เป็น หมวดหมู่ต่างๆ.C

ชีวิตง่ายขึ้นมากเลยยยยย
มาขอบคุณอีกครั้งกับน้ำใจอันงดงามทั้งสองท่านนะครับ

:-)

*

Offline wlasoi

  • *****
  • 757
    • View Profile
ผม ยังนิยมแบบ Include หูดับ ตับใหม้อยู่ ครับ ....  พอดีส่วนมากจะพัฒนา  *.c , *.h  เองเป็นหลัก เลยมักจะไม่ค่อยมี ความงงเท่าไหร่ ... ปกติก็เขียน gcc AVR เป็นหลักอยู่แล้ว ชิวมาก สำหรับ PIC ..  ซึ่งการทำแบบนี้ มันมีเทคนิคอยู่ ครับ .. จะวางตัวแปรยังไง ประกาศตัวแปรยังไง extern ออกนอก function ยังไง .. การสร้าง function ต้องมีลำดับการ สร้าง .. function ไหนจะ in/out นอก files ต้องวางแผน ทำมั่วซั่วๆ stack overflow โดยเฉพาะพวก interrupt .. แต่ทำทำบ่อยๆ คุ้นเอง .. มันจะช่วยให้งานง่ายขึ้นเยอะ copy pase ในไม่กี่นาทีก็เสร็จ แต่มือใหม่นี่ มีหงายหลัง ... ก็ต้องใช้เวลาและประสบการณ์  หลังๆมาเริ่ม บ้า #define บ้าเลือดก ;D เหมือน Microchip Libary ซ่ะด้วย ... ใช้ง่ายสบายดี แต่จะเสียเวลาตอรทำ libary ปวด หัว สุดๆ ...

ลองเขียนพวก RTOS หรือ STack TCP ครับ ....เยอะแยะ หูดับตับใหม้ .. เวลาย้ายเครื่องทีปวดหัว folder ไม่ตรง files หาย .. ผมเลยเริ่มทำวิธีการ pack project file พวกนี้ เข้ารวมกัน .. ย้ายเครื่องเปิด project file มา compile เลย .. แต่ล่ะ IDE ทำไม่เหมือนกัน บางตวต้องแก้ Include กันใหม่ ...แก้ part บางตัวก็ไม่ต้องตั้งทีเดียว เจอหมดก็มี ..  ;D

ตอนนี้ Microchiip Application Library ตัว 2013 ล่าสุด จัด file กับ folder ใหม่ดูง่ายขึ้นมาก หากใครต้องการดูการจัดระเบียบ library ให้ลองโหลดมาเปิดตัวอย่างดูครับ 

*

Offline TaoTao

  • ***
  • 239
    • View Profile
เอ...
ล่าสุด แปลกมากครับ

ผม สร้าง header.h เพื่อเก็บ global
จากนั้น สร้าง Function1.c, F2.c, F3.c, ...
ปรากฏว่า ไม่ต้องคลิกขวา มันก็คอมไพล์ผ่านน่ะครับ
Debug ก็ผ่าน ทีนี้ ยิ่ง งง ใหญ่เลย

@_@!
แต่ก็ไม่เป็นไร ใช้งานได้

แต่ก็ยัง งงงง ในหลักการที่ถูกต้องน่ะครับ

ขอบคุณทุกๆท่าน ที่เข้ามาตอบน่ะครับ

หลักการมันก็คือ
ถ้าเรา include file.c ใดๆ เข้ามาใน code หลักการมันก็จะเป็นเหมือนเอา text มาต่อๆ กันเป็น file เดียว ดังนั้นการ include หากไม่ต้องการบอก main ว่าจะใช้ ก็ประกาศ include ก่อน function main ไปเลย ที่นี้มันจะมีปัญหาว่า เกิดตัว function ย่อย ของอีก file หนึ่ง ต้องการใช้ function ของ อีก file หนึ่ง มันจะยุ่งยากที่จะมานั้งลำดับการ include ซึ่งจะทำไม่ได้เลย ถ้า สอง file เรียกใช้ function แบบ ไขว้กันไปมา จึงเป็นที่มาของ function protype ต่อไป  ซึงจะนิยมประกาศไว้ใน header file ครับ หรือ file.h
   รบกวน เจ้าของกระทู้หาข้อมูลของ file .h เพิ่มครับ เพราะผมก็ไม่แม่นเหมือนกันครับ ทุกวันนี้ผมยังสับสนอยู่เลย เพราะว่าตัว IDE เองมีการจัดการตรงนี้ด้วย แต่ผมไม่นิยมให้ ide จัดการ ผมจะใส่ไว้ใน code ทั้งหมดเพื่อความชัว แม้แต่ file.h ผมก็ใส่ใน code
    รบกวนลองเขียน code ใน file.h เป็น code C เต็มๆเลยครับ ที่ไม่ได้มีเฉพาะ function prototype หรือ global variable ผมว่าจะให้ผลที่แตกต่างกันด้วยครับ