লিনাক্স / ম্যাক এভিআর প্রোগ্রামিং স্যুট?


11

আমি বেশ কিছুদিন ধরে আরডুইনোসকে কোডিং করছি এবং ব্যবহার করছি। তবে আমি আরডুইনো বুটলোডার ছাড়াই স্ট্রেট এভিআর চিপগুলি ব্যবহার করতে এগিয়ে যেতে প্রস্তুত। আমার প্রশ্ন হ'ল এটি করার জন্য কি সংস্থান আছে?

আমি লিনাক্স / ম্যাক ব্যবহার করতে চাই তাই উইনাভর যেমন অ্যাভারস্টুডিও তেমন চিত্রের বাইরে থাকে। উইন্ডোজ ভার্চুয়াল মেশিনের জন্য স্থির করে নেওয়ার পরে আমি যা যাচ্ছি তার মতো কোনও জিনিস না থাকলে। তবে আমি যতক্ষণ না জানি। আমি যা চাই তা হ'ল এক ধরণের আইডিই যা avr-gcc ব্যবহার করে।

এই প্রশ্নের বোনাস হিসাবে কারও সাথে অ্যাওয়ারের জন্য সি শেখার কোনও ভাল সংস্থান রয়েছে? বিশেষত কিভাবে বিভিন্ন বিভিন্ন চিপের জন্য মেকফিলস ইত্যাদি কনফিগার করবেন?

উত্তর:


7

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

 int ledPin =  13;    // LED connected to digital pin 13
 // The setup() method runs once, when the sketch starts
 void setup()   {                
   // initialize the digital pin as an output:
   pinMode(ledPin, OUTPUT);     
 }
 // the loop() method runs over and over again,
 // as long as the Arduino has power
 void loop()                     
 {
   digitalWrite(ledPin, HIGH);   // set the LED on
   delay(1000);                  // wait for a second
   digitalWrite(ledPin, LOW);    // set the LED off
   delay(1000);                  // wait for a second
 }

নিম্নলিখিত সি এর সাথে প্রায় একই রকম (পরীক্ষিত নয়):

int main(void) {
    // I just randomly picked pin 6 on PORTB, this may not be the same on an arduino
    DDRB = (1<<6); // set pin to output in data direction register
    int i; // have to do this outside the for loop because of C standard

    while(1) {
        PORTB |= (1<<6); // send pin 6 high and leave other pins in their current state
        for (i=0; i<10000; i++); // delay

        PORTB &= ~(1<<6); // send pin 6 low
        for (i=0; i<10000; i++); // delay
    }
}

অবশ্যই, কিছু লাইব্রেরিতে বিলম্বের ফাংশন রয়েছে এবং অন্যগুলিতে আউটপুট ফাংশন থাকতে পারে তবে কোডটি লেখার অভ্যাস করুন। এই সমস্ত পোর্টবি এবং ডিডিআরবি স্টাফ মানে কী তা আপনি সম্ভবত জানতে পারবেন ডেটাশিটটি পড়া। আমি এ সম্পর্কে ড্রোন নিয়ে দুঃখিত, তবে পর্যাপ্ত লোকেরা বুঝতে পারে না যে ডেটাশিট তথ্যের জন্য একটি সোনার খনি।


আমি আপনার কোডটিতে একটি সংশোধন করব, যখন আপনি ডিডিআরবি সেট করেন আপনার ডিডিআরবি | = (1 << 6) ব্যবহার করা উচিত যাতে অন্য বিটগুলিকে প্রভাবিত না করে।
zklapow

এছাড়াও একটি delay_ms () ফাংশন উপলব্ধ। তবে সাধারণভাবে, আরও জটিল প্রোগ্রামগুলিতে আপনি সাধারণত আপনার অ্যাপ্লিকেশনটিতে হার্ড কোডিং বিলম্বিত হতে চান না।
davr

7

আপনার C / C ++ এবং AVR-Eclipse প্লাগইনের জন্য Eclipse টিও পরীক্ষা করা উচিত আমার জন্য নির্দোষভাবে কাজ করে, বিশেষত ক্রসপ্যাকের সাথে। আমি এখন এটি প্রায় এক বছরের জন্য ব্যবহার করি এবং আমি এটি সত্যিই পছন্দ করি।


এভিআর-ইক্লিপস প্লাগইনটি পান, এটি অর্ডুড এবং এভিআর-গিসিটির সাথে দুর্দান্তভাবে সংহত করে যাতে আপনি একটি ভাল, ফ্রি কম্পাইলারের শীর্ষে একটি দুর্দান্ত আইডিই দিয়ে শেষ করেন।
dren.dk

অ্যালিপস মাইক্রোকন্ট্রোলার সেটআপটি পাশাপাশি এআরএম মাইক্রোকন্ট্রোলার ব্যবহার করার জন্য একটি ভাল প্রবেশদ্বার হবে। শুধুমাত্র একটি এভিআর আইডিই পাওয়ার চেয়ে আরও ভাল বিকল্প।
লিনকাস

4

আমি ওবডিভের ক্রসপ্যাকটিও ব্যবহার করি । এটিআভিআর-জিসিসি সি কোড লেখার জন্য প্রয়োজনীয় সমস্ত সরঞ্জামের দুর্দান্ত বান্ডিলিং। তারা স্ট্যান্ডার্ড আরডুইনো ইনস্টলেশনতে একই সরঞ্জাম উপস্থিত, তাই মাঝে মাঝে আমি প্লেইন এভিআর-জিসিসি কোড লেখার জন্য আরডুইনো বিল্ড সিস্টেমের সাহসী ব্যবহার করেছি।

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

% emacs foo.c [ফাইল সম্পাদনা করুন]
% তৈরি করুন [কোডটি সংকলন করুন]
% ফ্ল্যাশ করুন [চিপে আপলোড করুন]
% স্ক্রিন / দেবদেবী / চিট.উসেসরিয়াল 9600 [চিপের সাথে কথা বলুন]
... এবং তারপরে প্রয়োজন অনুসারে পুনরাবৃত্তি করুন ...

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


3

আপনি যদি ক্রসপ্যাক ইনস্টল করেন তবে আপনি ম্যাকের জন্য অ্যাপলের এক্সকোড ব্যবহার করতে পারেন যা দুর্দান্ত আইডিই। আপনি যদি এভিআরের জন্য সি শিখতে চান তবে এভিআর ফ্রিক্সের টিউটোরিয়াল ফোরামটি পরীক্ষা করে দেখুন । লিনাক্স হিসাবে এই প্রশ্নটি দেখুন


3

যেহেতু আপনি আরডুইনো ব্যবহার করছেন আপনার প্রয়োজনীয় সমস্ত কিছু ইতিমধ্যে ইনস্টল করা আছে। আমি একটি মেকফিল ব্যবহার করে কমান্ড লাইন থেকে আরডুইনো স্কেচগুলি সংকলন করি। আমি আরডুইনো বুটলোডার ছাড়াই কোডও সংকলন করি।

আমার বোর্ডগুলির জন্য আরডুইনো বুটলোডার সংকলন করার জন্য আমি যে মেকফিলটি ব্যবহার করি তা http://wiblocks.luciani.org/docs/app-notes/bootloader.html এ এটিএমগাবিওএক্সএক্সএক্স ফাইলের পরিবর্তে আপনার প্রোগ্রামটি সংকলন করতে আপনি এটি পরিবর্তন করতে পারেন।

এই সাইটটিতে আমার পাওয়া ফাইলটি থেকে আমার মেকফিল পরিবর্তন করা হয়েছে - http://mjo.tc/ateyer/2009/02/arduino-cli.html

টুইটারে এই একই প্রশ্নের (ঠিক গতকাল;) উত্তর দেওয়ার সময় আমি ডরবটপিডিএক্স-এ একটি মেকফাইল পেরিয়ে এসেছি। Http://dorkbotpdx.org/blog/ax/arduino_0017_makefile দেখুন

Http://arkku.com/misc/arduino_make.sh এ একটি ভাল নথিভুক্ত শেল স্ক্রিপ্টও রয়েছে

আমি সম্ভবত শেল স্ক্রিপ্টের চেয়ে একটি মেকফিল ব্যবহার করব। এই স্ক্রিপ্টটি সহকারী যে প্রবাহটি করেছে তা প্রবাহকে মন্তব্য করার জন্য দুর্দান্ত কাজ করেছে। এটি কেবল প্রবাহটি বোঝার জন্য এক নজর কাজ।


আমি আরডুইনো_মেক.শ কাজ ডব্লু / ওএসএক্স 10.6 তৈরি করতে সক্ষম হইনি কারণ 'ওভ্যাক-ভি' ওএসএক্স-তে প্রত্যাশা অনুযায়ী কাজ করে না এবং সে এটি সর্বত্র ব্যবহার করে।
টেরেস 21

তার প্রশ্ন আরডিনো নিয়ে নয়, লিনাক্স
আরআরসি

2

আমি কোডলাইট (www.codelite.org) আইডিই পেয়েছি সুন্দর এবং পূর্ণ বৈশিষ্ট্যযুক্ত; তবুও, এভিআর মাইক্রোচিপগুলি প্রোগ্রাম করার জন্য আপনার নিজের মেকফিল তৈরি করতে হবে।

আপনি বিআরটিস উইজার্ড চেষ্টা করতে পারেন, যা একটি বিআরটিওএস প্রকল্প এবং সম্পর্কিত মেকফিল তৈরি করবে, যা আপনি কোডলাইটের সাহায্যে ব্যবহার করতে পারেন। আপনার লক্ষ্যটিকে ফ্ল্যাশ করতে, কেবল "মেক ফ্ল্যাশ" ব্যবহার করুন এবং আপনার কাজ শেষ। আমরা প্রতিদিন লিনাক্সে কাজ করি, আপনার যদি আরও প্রশ্ন থাকে তবে দয়া করে এগুলি মেলিং তালিকায় পোস্ট করুন। দাবি অস্বীকার: আমি একজন বিআরটিওএস বিকাশকারী।

শুভেচ্ছা, লুকা


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


2

আপনি যদি আপনার প্যাকেজ সিস্টেমকে avr-libc ইনস্টল করতে বলেন, তবে এটি আপনার প্রয়োজনীয় সমস্ত বিষয় সরবরাহ করবে। আমি আমার আইডিই হিসাবে ইম্যাকগুলি ব্যবহার করি, ভাল, ব্যবহারকারীর নাম দেখুন।

আপনি যদি কোনও টেম্পলেট মেকফিল চান, তবে আমার গিথুব সম্পর্কিত একটি প্রকল্প দেখুন, যেমন https://github.com/unixbigot/pir-lite

সেই রেপোতে avr-tmpl.mk একটি অফ-শেল্ফ মেকফিল লাইব্রেরি (আমার লেখা নয়)। আপনি এটি আপনার প্রধান মেকফাইল থেকে অন্তর্ভুক্ত করেছেন এবং আপনাকে কেবল কোন চিপটি আছে তা নির্ধারণ করতে হবে, ঘড়ির গতি এবং আপনার ফাইলগুলি। আমার কাছে এর একটি অনুলিপি রয়েছে এবং এটি আমার সমস্ত প্রকল্পের মেকফিলগুলি থেকে অন্তর্ভুক্ত করে।

"মেক প্রোগ্রাম" কোডটি ডাউনলোড করার জন্য অর্ডডকে কল করবে। মেকফাইলটি শেষে কোডের আকারও ছাপায়, তাই আপনি জানেন যে আপনি কতটা জায়গা রেখেছেন।


0

আমি এই নিবন্ধটির সহায়তায় আমার 'পুরাতন' ডিউডম্যানিলোভ 'কে আইএসপি হিসাবে প্রোগ্রাম করেছি: http://arduino.cc/en/Tutorial/ArdinoISP এটি এটিটিনি'র সমানভাবে কাজ করে: http://hlt.media.mit.edu/? P = 1229

মনে মনে, আরডুইনো আইডিই 0022 ব্যবহার করার সময়, আপনাকে আরডুইনোআইএসপি স্কেচটি আরও সাম্প্রতিক সংস্করণে আপগ্রেড করতে হবে, স্প্যাম প্রতিরোধের কারণে আমি সেই লিঙ্কটি নীচের মন্তব্যে সরিয়ে নিয়েছি।

আমি একটি পাঠ্য সম্পাদক (vi) এ প্রোগ্রামিং করেছি এবং আমার সংযুক্ত mit.edu নিবন্ধে বর্ণিত avr-gcc ব্যবহার করে সংকলন করেছি।


স্প্যাম প্রতিরোধ আমাকে মন্তব্যগুলি থেকে সাম্প্রতিক আরডুইনোআইএসপির লিঙ্কটি উল্লেখ করতে বাধ্য করেছে: কোড. google.com/p/mega-isp/downloads/…
জিপ্পি

0

ওহে বন্ধু আপনি এখনও উবুন্টুতে আর্স্টুডিয়ো ব্যবহার করতে পারেন। আপনি কীভাবে এটি করতে পারেন তা ভেবে .....

উত্তরটি কেবল ওয়াইন অ্যাপ্লিকেশন ইনস্টল করুন এবং সেই উইন্ডো সফটওয়্যারগুলি ওয়াইন দিয়ে চালিত করুন।

অভ স্টুডিও, প্রোটাস ... এমনকি উইন্ডোজের গেমগুলি ওয়াইন দিয়ে উবুন্টুতে চালানো যেতে পারে।

এমনকি আপনি মেকফাইলস ব্লাহ ব্লাহের সাথেও ঝামেলা করতে হবে না ((শুধু ওয়াইন দিয়ে ইনস্টল করুন এবং শুরু করুন)।

প্রচুর পরিমাণে এমসিইউর মতো চূড়ান্ত চক্র, এভিআর টিউটোরিয়াল ইত্যাদি দিয়ে শুরু করার জন্য অনেকগুলি সাইট রয়েছে Just কেবল একটি গুগল অনুসন্ধান দিন।

আমি কীভাবে আর্স্টুডিয়ো 4 ওয়াইনে ওয়াইনে ইনস্টল করতে হবে তা বিশদে বলব যেহেতু অ্যাভারস্টুডিও 5 এবং 6 এর সাথে কাজ করে না তবে আপনি ভার্চুয়াল বাক্সের উইন্ডোতে এমনকি এড্রির স্টাড 5 এবং 6 চালাতে লিনাক্সে ভার্চুয়াল বক্স ব্যবহার করতে পারেন।

  1. উবুন্টু সফ্টওয়্যার কেন্দ্রটি খুলুন এবং অনুসন্ধানে ওয়াইন টাইপ করুন এবং তারপরে এটি ইনস্টল করুন।

  2. তারপরে avrstudio4 এর জন্য সেটআপ পাবেন এবং আপনার উইন অ্যাওয়ারও ইনস্টল করতে হবে

    এই লিঙ্কগুলির জন্য চেষ্টা করুন

ক। এভিআর স্টুডিও 4 http://mycomsats.com/blogs/download-atmel-avr-studio-4-free/

খ। জয় এআর http://sourceforge.net/projects/winavr/files/WinAVR/20100110/WINAVR-20100110-install.exe/download?use_mirror=kaz&r=http%3A%2F%2Fsourceforge.net%2Fproavr%2Ffiles% 2F & use_mirror = Kaz

৩. এএস (এভিআর স্টুডিও ৪) এর ফোল্ডারটি খুলুন এবং তারপরে ডান ক্লিক করুন এবং তারপরে এটি "উইন্ডোজ ওয়াইন প্রোগ্রাম লোডার" বা "একটি ওয়াইন অ্যাপ্লিকেশন" দিয়ে খুলুন।

4. তারপরে আপনার উইন্ডোতে এটি করার মতো পরবর্তী বোতামগুলিতে ক্লিক করতে হবে।

৫.পরে আবার ওয়াইন দিয়ে একইভাবে উইন অ্যাওয়ার ইনস্টল করুন (উইন অ্যাভর সেটআপে যান ....)।

U. উবুন্টু সফ্টওয়্যার কেন্দ্র থেকে ক্লাসিক মেনু সূচকটি ডাউনলোড করুন। আপনি মাত্র পাঁচ মিনিটের মধ্যে এটি সম্পর্কে জানতে পারবেন।

7. ক্লাসিক মেনু থেকে -> ওয়াইন -> প্রোগ্রাম -> অ্যাভিআর সরঞ্জাম

ষষ্ঠ ধাপটি একটি অতিরিক্ত পদক্ষেপ যাতে আপনি আর্স্টুডিও 4 এক্সিকিউটেবল বিকল্পটি ওয়াইন ফোল্ডারে যেখানে থাকবেন তা নিয়ে আপনাকে গোলমাল করতে হবে না।


এই উত্তরটিতে আরও কার্যকর হতে পারে যদি এতে ওয়াইন এর অধীনে এটি কীভাবে চালানো যায় সে সম্পর্কে বিশদ / লিঙ্ক থাকে। সর্বশেষতম আতেল স্টুডিওটি মাইক্রোসফ্ট ভিজ্যুয়াল স্টুডিও ভিত্তিক যা আমার বিশ্বাস ওয়ানের অধীনে ভাল কাজ করে না তবে আমি ভুল হতে পারি।
পিটারজে

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