গ্রহণ + জিএনইউ আর্ম + এসটিএম 32 - এইচএল বা এসপিএল


10

আমি এআরএম বিকাশ দিয়ে শুরু করতে যাচ্ছি (2 বছর পরে এভিআর) এবং এটিতে stm32f4 মাইক্রোপ্রসেসরের সাহায্যে এসটিএম ডিসকভারি বোর্ড তুলেছি।

আমি কেইলে কোড সীমা পছন্দ করি না এবং পেইড সংস্করণ পাওয়ার জন্য আমার কাছে টাকা নেই বলে আমি গ্রহন + এআরএম জিসিসি নিয়ে যাব।

টিউটোরিয়ালগুলি অনুসরণ করে আমি জিসিসি এআরএম সরঞ্জামগুলি + ওপেনকডি + মেক ইউটিস ইত্যাদির সাথে গ্রহনটি ইনস্টল করেছি Following

আমার প্রশ্নটি 'প্যাকেজগুলি' প্লাগইন সম্পর্কে। প্রতিটি শিক্ষানবিদের মতো, আমি নতুন এসটিএম এইচএল বা পুরানো এসপিএল ব্যবহার করব কিনা তা নিয়ে আমি বিভ্রান্ত।

আমার বোধগম্যতা হল যে এইচএএল একটি স্তরে বিমূর্তি প্রয়োগ করেছে যেখানে এটি আর্মুডিনো সমতুল্য হিসাবে উল্লেখ করা যেতে পারে। অন্যদিকে এসপিএল কোডিং দ্রুত করার জন্য পর্যাপ্ত বিমূর্ততা সরবরাহ করে তবে আপনাকে এখনও চিপ স্তরের উপর ডিল করতে হবে।

এই বোঝার সাথে আমি এইচএল ব্যবহার না করে জিনিসগুলি আরও ভালভাবে বুঝতে এসপিএলের সাথে লেগে থাকতে চাই।

আমি যা জানতে চাই তা হ'ল, এসটিএমের জন্য প্যাকেজগুলি কী স্পষ্টভাবে এইচএল ব্যবহার করতে বাধ্য করে? যদি তা হয় তবে কেউ কীভাবে আমার সেটআপ দিয়ে এসপিএল ব্যবহার করবেন সে সম্পর্কে আমাকে নির্দেশ করতে পারে?


1
"টিউটোরিয়ালগুলি" কিছুটা অস্পষ্ট, তাই আমি "'প্যাকেজগুলি' প্লাগইন" সম্পর্কে জানি না এবং এসপিএল (এসটিএম পেরিফেরিয়াল লাইব্রেরি?) বা এসপিসিএল কী তা আমার কোনও ধারণা নেই। হয়তো আমি এই প্রশ্নের জন্য কেবল যোগ্য নই, তবে এসটিএম 32 এর সাথে দু'বছরের বেশি সময় ধরে কাজ করা আমাকে অবাক করে দিয়েছে ...
আর্সেনাল

2
এসপিএল হ'ল স্ট্যান্ডার্ড পেরিফেরাল লাইব্রেরি , অন্যদিকে আমি এসপিসিএলকেও জানি না।
বেনস কৌলিকস

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

1
যদিও এটি অন্যান্য এসটিএম 32 প্রসেসর এসপিএল সংস্করণগুলির সাথে বেশিরভাগভাবে সামঞ্জস্যপূর্ণ হওয়া উচিত তবে আমি বিশ্বাস করি না যে এসটিটির এসটিএম 32 এফ 7 এর জন্য এসপিএল রয়েছে।
টুট

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

উত্তর:


6

এসপিএল, যেমন আমি দেখতে পাচ্ছি আপনি কী আইডিই ব্যবহার করছেন তার সাথে কিছুই করার নেই। আপনি কেবল আপনার প্রকল্পে প্রাসঙ্গিক মডিউলগুলি (যেমন stmf4xx_dma.c এবং stmf4xx_dma.h) অন্তর্ভুক্ত করতে পারেন এবং .c এবং .h ফাইলে উন্মুক্ত ফাংশনগুলি (এবং খুব ভালভাবে বর্ণিত) ব্যবহার করতে পারেন। বাস্তবে আমি স্ট্রিমফ 411 নিউক্লিওতে সিসি জিসিসি, ওপেনোকড এবং এসপিএল দিয়ে উইন্ডোজ কমান্ড প্রম্পটটি ব্যবহার করে শিখছি; কোনও আইডিই নেই। গ্রহের প্যাকেজগুলি সম্ভবত আপনাকে এইচএল ব্যবহার করতে বাধ্য করবে (যেহেতু গ্রহণের জন্য ডাউনলোড করা 'প্যাকেজগুলি' ফোল্ডারের অভ্যন্তরে আমি কেবল এইচএল মডিউলগুলি দেখি)।

এইচএএল নিজেই আইএমও প্রয়োজনের চেয়ে অনেক বেশি স্তরযুক্ত বলে মনে হয়। যেখানে নিবন্ধগুলি অ্যাক্সেস করা সরাসরি ক্লান্তিকর হয়ে ওঠে এবং খুব কমই পঠনযোগ্য। এসপিএলটি ঠিক ঠিক বলে মনে হচ্ছে। st.com ফোরামে গুরু ক্লাইভ 1, এইচএল এর চেয়ে এসপিএলকেও পছন্দ করে। এই ফোরামে আমার প্রশ্ন এখানে ... সহায়ক হতে পারে।

নিউক্লিও stmf411 এ ইউএসআর্টের সহায়তা প্রয়োজন


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

1

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

GPIO_A->PIN &= ~(1 << 15);

প্রতি

LED_On(1)

এলইডি চালু করার জন্য এবং তারা মূলত কী করছে তা জানতে চান। তারপরে যদি আপনার এই গ্রুপে থাকে এবং আপনার এমসিইউর রেফারেন্স ম্যানুয়াল এবং প্রোগ্রামিং ম্যানুয়ালটি পড়ার জন্য পর্যাপ্ত সময় থাকতে পারে তবে রেজিস্ট্রেশন লেভেল প্রোগ্রামিং অন্য পছন্দ। তবে আপনি যদি কেবল 2 টির উপরে বিকল্পের মধ্যে সিদ্ধান্ত নিতে চান: এসটি'র সমর্থনের কারণে এইচএল একটি ভাল ভবিষ্যত রয়েছে তবে এসপিএল একটি নতুন স্টার্টারকে বোঝার সহজ উপায়। হতে পারে এটি http://www.eevblog.com/forum/microcontrollers/stm32-and-their-hal-library/ কে সহায়তা করতে পারে


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

1

এই আইডিইটি পান: এসটিএম 32 এর জন্য সিস্টেম ওয়ার্কবেঞ্চ - এটি নিখরচায়, ইক্লিপসের উপর ভিত্তি করে এবং একটি প্যাকেজে আর্ম-জিসিসি এবং ওপেনকড উভয়ই রয়েছে।

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

  • এসপিএল: পুরাতন, জটিল, অতিরিক্ত রামের ব্যবহার নয়, নমনীয়
  • এইচএএল: আসল, জটিল, অতিরিক্ত রামের ব্যবহার, নমনীয় নয়
  • LL: আসল, ligtweigth, অতিরিক্ত রামের ব্যবহার নয়, নমনীয়

আমার গ্রেডগুলির জন্য সংক্ষিপ্ত বিবরণ:

  • জটিল - বড় ফ্ল্যাশ ব্যবহার, পরিধি সঙ্গে কাজের জন্য "সুপার" সর্বজনীন ফাংশন functions
  • অতিরিক্ত ম্যামের ব্যবহার - এটি এইচএল সম্পর্কিত, এটি রাম অবস্থিত স্ট্রাক্টগুলিতে পেরিফেরিয়াল রাষ্ট্রের অনুলিপি রয়েছে এবং এটিকে সর্বত্র এবং সর্বদা ব্যবহার করুন
  • নমনীয় নয় - এবং আবার এইচএল সম্পর্কিত, এর বিভিন্ন ক্ষেত্রে বিভিন্ন ফাংশন রয়েছে, তবে! তাদের বেশিরভাগই বাস্তব ডিভাইসের জন্য ব্যবহারযোগ্য নয় (লোকেরা এএসএএলটিকে বাইআর বাইট বাই স্টার্ট থেকে পুনর্নির্মাণের চেষ্টা করে >_<, টিআইএম + ডিএমএর জন্য সমস্ত ফাংশন টিআইএম রেজিস্ট্রার পুনর্লিখনের জন্য প্রয়োগ করা হয় এবং অন্য কোনও ...)

সামান্য পুনর্বাসনের জন্য এইচএল: নবজাতকের পক্ষে এটির একটি বড় সুবিধা রয়েছে - এটি এসটিএমকিউবিএমএক্স দ্বারা সমর্থিত।

সম্পাদনা করুন:

আমি লাইবোপেনসিএম 3 সম্পর্কে ভুলে গেছি - এটি বিকল্প লাইব্রেরি। আমি এটি ব্যবহার করি নি

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