আমার একটি এসটিএম 32 আবিষ্কার বোর্ড রয়েছে এবং এটি লিনাক্সে প্রোগ্রাম করতে সক্ষম হতে চাই।
এই কাজ করতে সবচেয়ে সহজ পদ্ধিতি হল উপায় কি?
আমার একটি এসটিএম 32 আবিষ্কার বোর্ড রয়েছে এবং এটি লিনাক্সে প্রোগ্রাম করতে সক্ষম হতে চাই।
এই কাজ করতে সবচেয়ে সহজ পদ্ধিতি হল উপায় কি?
উত্তর:
STM32 ডিসকভারি বোর্ডকে প্রোগ্রাম করার এবং ডিবাগ করার একটি সহজ উপায় (বা কোনও এসটিএম 32 কোনও এসটি-লিংক প্রোগ্রামার ব্যবহার করে) হল 'স্টলিংক' প্রকল্পটি https://github.com/texane/stlink ব্যবহার করা (তবে ওপেনওসিডিও জনপ্রিয় বলে মনে হচ্ছে))
এসটি নিউকলিও বোর্ডগুলি একটি ইউএসবি ফ্ল্যাশ ডিভাইস হিসাবে উপস্থিত হয়, সুতরাং এমনকি প্রয়োজন হয় না stlink
- কেবল তাদের কাছে ফাইলটি অনুলিপি করুন।
লিনাক্সে এসটিএম 32 আবিষ্কারের জন্য কীভাবে বিকাশ করা যায় সে সম্পর্কে কয়েকটি ভাল পৃষ্ঠা রয়েছে যেমন: http://gpio.kaltpost.de/?page_id=131 এবং http://torrentula.to.funpic.de/2012/03/22/ stm32f4- আর্ম-ডেভলপমেন্ট-টুলচেইন সেট আপ- এবং http://jethomson.wordpress.com/2011/11/17/getting-st সূত্র- সাথে- stm32f4discovery-in-linux/
তবে আমি শেষ লিঙ্কটি সবচেয়ে দরকারী বলে মনে করি। এটি দেখায় যে কীভাবে এসটি-র এসটিএম 32 প্রকল্পগুলি তৈরি করা যায় - একমাত্র পরিবর্তনটি হ'ল তার মেকফিল যুক্ত করা, যা একটি নিখুঁত সমাধান বলে মনে হয়।
উবুন্টুর সাম্প্রতিক সংস্করণগুলিতে, আপনি ইনস্টল করতে পারেন এমন একটি প্যাকেজ রয়েছে যা একটি এআরএম সংকলক ধারণ করে:
sudo apt-get install gcc-arm-none-eabi
নোট করুন যে প্রসেসরগুলি সমস্ত কিছু আলাদা। STM32F0..4 এর জন্য সবার আলাদা আলাদা সংকলক পতাকা লাগবে এবং লিঙ্কার স্ক্রিপ্ট প্রতিটিটির জন্য কিছুটা আলাদা হবে (যদিও এটি কেবলমাত্র পরিবর্তিত র্যাম এবং ফ্ল্যাশ আকারের কারণে)।
সম্পাদনা করুন: আপনি যদি খুব দ্রুত শুরু করতে চান তবে আপনি http://www.espruino.com এও দেখতে পারেন । এটি একটি জাভাস্ক্রিপ্ট ইন্টারপ্রেটার যা নিজে নিজেই এসটিএম 32 এ চলে, সুতরাং একবার আপনি 'স্টলিংক' ইনস্টল হয়ে গেলে বোর্ডের কাছে ফ্ল্যাশ করতে পারবেন আপনি সেই সাইট থেকে কোনও চিত্র ডাউনলোড করতে পারবেন, এটি ফ্ল্যাশ করতে পারবেন, এবং তারপরে টার্মিনাল অ্যাপ্লিকেশনটির সাথে সংযুক্ত করতে পারেন এবং প্রোগ্রামিং শুরু করুন।
আপনি যদি GUI ব্যবহার না করে পাঠ্য সম্পাদক এবং মেকফিলগুলিতে আরও বেশি থাকেন তবে আপনি এটি করতে পারেন:
আপনার প্রকল্প বোর্ডে পান। হয় ব্যবহার
একটি পাঠ্য সম্পাদকের কোড এবং কমান্ড লাইন সরঞ্জাম ব্যবহার করুন। এই টিউটোরিয়ালটি প্রচুর টিপস সরবরাহ করবে।
উপভোগ করুন
গ্রহন , জিসিসি এবং ওপেনওসিডি হ'ল একটি সরঞ্জামচেন cha এটি EMCU-IT দ্বারা প্রস্তাবিত এবং এখানে অতিরিক্ত তথ্য রয়েছে । সেই পৃষ্ঠাগুলি এছাড়াও মতো RTOS ব্যবহার করার প্রস্তাব FreeRTOS.org , কিন্তু যে আপনার উপরে নির্ভর করে।
এবং লিনাক্সের এসটিএম 32 উদাহরণগুলি সংকলন করতে সহায়তার জন্য এখানে যান । সেই লিঙ্কটি উদাহরণগুলির জন্য একটি মেকফিলের দিকে ইঙ্গিত করে যা সাহায্য করতে পারে
git clone git://github.com/snowcap-electronics/stm32-examples.git
cd stm32-examples
wget http://www.st.com/internet/com/SOFTWARE_RESOURCES/SW_COMPONENT/FIRMWARE/stm32_f105-07_f2xx_usb-host-device_lib.zip
unzip stm32_f105-07_f2xx_usb-host-device_lib.zip
বেশ কয়েকটি ছোটখাটো কোড ফিক্সও ডকুমেন্টেড, তবে বেশিরভাগ প্রকল্পের সাথে কাজ করা উচিত
make CROSS_COMPILE=/path/to/arm-2011.03/bin/arm-none-eabi-
আমি https://github.com/JorgeAparicio/bareCortexM (লিঙ্কযুক্ত ব্লগ পোস্টগুলিও দেখুন) দিয়ে সাফল্য পেয়েছি । আমি মেঝেতে রয়েছি যে আমি আমার কোডে ডিবাগিং স্টেটমেন্ট সন্নিবেশ করা বা চিপের ভিতরে কী চলছে তা অনুমান করার পরিবর্তে কোডের মাধ্যমে কেবল একক পদক্ষেপ বা ডিভাইস মেমরিটি ব্রাউজ করতে পারি।
বেয়ারকোর্টেক্স এম প্রকল্পটি কোনও ওএস ছাড়াই সি ++ তে কর্টেক্স এম সিরিজ, বিশেষত এসটিএম 32 এর সাথে বিকাশের জন্য একটি গ্রহন টেম্পলেট। এটি ওপোনকডি, জিসিসি ব্যবহারের জন্য কনফিগার করা হয়েছে এবং এটি আবিষ্কারের বোর্ড সহ কয়েকটি লক্ষ্যবস্তুতে ফ্ল্যাশ এবং ডিবাগ করার জন্য স্ক্রিপ্ট রয়েছে। নির্দেশাবলী অনুসরণ করে এবং প্রস্তাবিত Eclipse প্লাগইনগুলি ইনস্টল করে আমি উবুন্টুতে আমার STM32VLDISCOVERY ব্যবহার করতে সক্ষম হয়েছি।
প্রস্তাবিত হিসাবে আমি একই লেখকের লাইবস্টেম 32 পি সি ++ টেমপ্লেট লাইব্রেরির সাথে গ্রাহক টেম্পলেটটি এসটিএম 32 হার্ডওয়ারের সাথে একত্রিত করেছি। libstm32pp একটি প্রোগ্রামিং মডেল দিয়ে সিএমএসআইএস এবং প্রায়শই সমালোচিত এসটিএম 32 ড্রাইভারের জন্য একটি আশ্চর্যজনকভাবে সম্পূর্ণ প্রতিস্থাপন সরবরাহ করে যা আপনাকে সি ++ টেমপ্লেটগুলির কারণে PB10::setMode(gpio::cr::GP_OPEN_DRAIN_2MHZ)
এবং PINB::setLow()
বা PINB::setHigh()
বেশিরভাগই প্রায়শই ইনলাইন সংকলন করতে দেয়। সেটআপটি খুব সুন্দর।
হতে পারে এটি কারওর জন্য কার্যকর হবে: আমার সংক্ষিপ্ত নিবন্ধ (রাশিয়ান ভাষায়) এবং সহজ প্রকল্প । সব কিছুই লিনাক্সে এবং গ্রহণের মতো অপ্রয়োজনীয় জিনিস ছাড়াই।
ইন্টারনেটের অনেক জিপিএল উদাহরণগুলির মধ্যে একটি থেকে এসটি ওয়েবসাইট, মেকফিল - থেকে গ্রন্থাগারগুলি নেওয়া হয়েছিল।
লিনাক্স বা অন্য কোনও OS এর অধীনে STM32F0 ডিসকভারি বোর্ডটি দ্রুত ব্যবহারের জন্য এখানে একটি ছোট তবে উদ্ভাবনী টেম্পলেট প্রকল্প রয়েছে:
https://github.com/dobromyslov/stm32f0-chibios-template
নোট করুন যে প্রকল্পটি ChibiOS ব্যবহার করে - একটি নিখরচায় এবং ওপেন সোর্স রিয়েল টাইম অপারেটিং সিস্টেম যাতে এটি স্ক্র্যাচ থেকে একেবারে খালি হাড় প্রয়োগ নয়।
প্ল্যাটফর্মিও বিবেচনা করুন । আপনি যদি কমান্ড-লাইনের সাথে কিছুটা স্বাচ্ছন্দ্য বোধ করেন তবে আপনি দেখতে পাবেন যে প্ল্যাটফর্মিও উন্নয়ন প্রক্রিয়াটিকে যথেষ্ট পরিমাণে সহজ করে দেয়। pio init
একটি প্রকল্প সেট আপ করতে ব্যবহার করা যেতে পারে। pio run
সংকলনের জন্য সরঞ্জামচেইনের সুবিধা দেয়। pio run --target upload
ডিভাইসে কোডটি প্রেরণ করে। প্ল্যাটফর্মিও প্রয়োজনীয় হিসাবে সরঞ্জামচেনের উপাদানগুলি, গ্রন্থাগারগুলি ইত্যাদি ডাউনলোড করার যত্ন নেয়।