`.Ino` ফাইলটি কেন একই নামের একটি ফোল্ডারে থাকতে হবে?


12

আমি একটি খুব জটিল প্রকল্পটি সংগঠিত করার চেষ্টা করছি এবং আমি সমস্ত srcউত্স কোডটি (উত্স) নামে একটি ফোল্ডারে রাখতে চাই, তবে আমি মূল .inoফাইলটি main.ino(এটিতেও থাকবে src) হিসাবে রাখতে চাই । তারপরে যখন আমি কোডটি খোলার চেষ্টা করি তখন আইডিই বলে যে main.inoনামক কোনও ফোল্ডারে থাকতে হবে main

কেন?

আমি ত্রুটি বার্তাটি পুরোপুরি বুঝতে পেরেছি, তবে আরডুইনোতে ফাইলের নামকরণ কেন এমন হতে হবে। যে পরিবর্তন করার কোন উপায় আছে?

উত্তর:


6

আফাইক, এটি আর্দুইনো আইডিইতে নির্মিত একটি কোলাহল। আমি যে সর্বোত্তম কাজের কথা ভাবতে পারি তা হ'ল ফাইল কাঠামোর মতো কিছু:

ArduinoWorkspace --- /myproj/ ----+ /src/ --------+ myproj.cpp
                                  + myproj.ino    + sensor.h
                                                  + sensor.cpp
                                                  + (more files)

, যেখানে myproj.cpp স্রেফ #includeমেনসিপিপি। এটি আপনার প্রকল্প ফাইলগুলিকে "পরিষ্কার" ছেড়ে দেবে যাতে এগুলি আরও সাধারণ পরিবেশে কাজ করা উচিত।

হালনাগাদ:

আমি আপনার প্রশ্ন থেকে "মেইন" নামটি ধার নিয়েছি, তবে প্রতিবিম্বের ভিত্তিতে, "মেইন" একটি সংরক্ষিত নাম, বিশেষত, প্রতিটি সি বা সি ++ প্রোগ্রামের শীর্ষ স্তরের কোড হিসাবে একটি মেইন.সি. বা মেইন.সি.পি থাকে সিস্টেম দ্বারা সরবরাহ করা হয় যদি আপনি একটি সরবরাহ না। সুতরাং আমি এটিকে ফোল্ডার- এবং প্রকল্পের নাম হিসাবে ব্যবহার করা এড়িয়ে গিয়েছি (তবে এটি ব্যবহার করে নির্দ্বিধায়) এবং আমি চিত্রটি আপডেট করেছি। আপনার যা দরকার তা হ'ল একই নামের একটি প্রকল্প ফোল্ডার এবং এর মধ্যে একটি .ino ফাইল। .Ino ফাইল পারে

#include <src/anything-else-you-like>

উদাহরণস্বরূপ, আপনার শীর্ষ স্তরের কোড ফাইল, এভাবে সমস্ত কিছু টানছে। ফোল্ডারের #includeপ্রতিটি ফাইলের জন্য আপনার .ino এর দরকার হতে পারে src, যদি এটি সংকলকটি নিজে থেকে খুঁজে না পায়, তবে এটি আপনার অন্যান্য ফাইলগুলি।

বিটিডাব্লু, আপনি যদি আপনার শীর্ষ ফাইলের জন্য নাম মেইন সিপিপি ব্যবহার করেন তবে এটির জন্য সেটআপ () এবং লুপ () ফাংশনগুলি (এবং সিরিয়াল ইভেন্ট ফাংশন, যদি আপনি এটি ব্যবহার করেন) কল করতে হবে। 'মেইন' নামটি একা রেখে যাওয়া সবচেয়ে ভাল, প্রতিটি আরডুইনো প্রোগ্রামটি ডিফল্টরূপে সিস্টেমটিকে একই প্রধান সরবরাহ করতে দেয় এবং আপনার প্রকল্প কোডটি সাধারণত আরডুইনো পদ্ধতিতে লিখুন - সেটআপ () এবং লুপ () দিয়ে শুরু হয়।


myproj.cpp, মানে myproj.ino? কারণ আমি দেখতে পাচ্ছি না কোথায় myproj.cpp!
ডেটা হা

ঠিক আছে, কিছুটা সমস্যা, যদি আমি এটি করি, সেন্সর.সি.পি. তে থাকা কিছু প্রাথমিক আড়ডিনো ফাংশন (যেমন মানচিত্র () এবং এনালগরিড ()) সংকলক দ্বারা স্বীকৃত হবে না।
ডেটা হা

বিকল্পভাবে, যদি উইন্ডোজ বাক্সে কাজ করা হয় তবে জাংশন কমান্ডটি ব্যবহার করুন এবং আরও ভাল নাম সহ ডিরেক্টরিতে একটি সঠিক নাম ডিরেক্টরি "লিঙ্ক" ব্যবহার করুন। অথবা, যদি লিনাক্স বাক্সে কাজ করা হয় তবে এটি করতে প্রতীকী লিঙ্ক কমান্ডটি ব্যবহার করুন।
st2000

(আমার আপডেট দেখুন - আপনার .ino ফাইলটিতে অন্য প্রতিটি ফাইল অন্তর্ভুক্ত থাকতে পারে)।
জারউবার্ট

3

যখন আপনার কাছে বেশ কয়েকটি .INOফাইল নিয়ে একটি প্রকল্প তৈরি করা হয়, তখন আইডিই কীভাবে "প্রধান" এক তা জানতে হবে? সংকলনের সময় আইডিই সমস্ত .INOফাইলকে একত্রে এক একাকী ফাইলের সাথে সংযুক্ত করে। এটি "মূল" এক দিয়ে শুরু করে এবং এরপরে একে অপরকে বর্ণমালায় অন্তর্ভুক্ত করে।

এটি এমনভাবে করা হয়েছে যাতে আপনার অন্তর্ভুক্ত এবং বিশ্বব্যাপী ভেরিয়েবলগুলি, যা আপনার "প্রধান" .INOফাইলটিতে রাখা উচিত , সমাপ্ত প্রোগ্রামের শুরুতে।

এটি করতে আইডিইতে ফাইলগুলির মধ্যে কোনটি "মূল" একটি তা জানতে হবে। এবং এটি যেভাবে কাজ করে তা হ'ল স্কেচটি ফোল্ডারে যে ফোল্ডারটি রয়েছে তার নাম অনুসারে একটিটিকে সন্ধান করা।

ইন UECIDE আমি এটি একটি ধাপ গ্রহণ করা এবং একটি মধ্যে পুরো ফোল্ডারের চালু কম্পাউন্ড ডকুমেন্ট যাতে আপনি আর একটি ফোল্ডার লিখুন ও একটি খোলা আছে .INOএকটি স্কেচ খোলার জন্য ফাইল - প্রকৃত ফোল্ডারের নিজেই পুরো স্কেচ প্রকল্প। আবার এই ধরণের ফোল্ডারটির .INOমধ্যে একটি ফাইল থাকা হিসাবে চিহ্নিত করা হয় যা ফোল্ডারটির নাম অনুসারে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.