সুচিপত্র:
- সরবরাহ
- ধাপ 1: উপাদান তালিকা
- পদক্ষেপ 2: সংযোগগুলি তৈরি করুন
- ধাপ 3: Keil UVision IDE খুলুন
- ধাপ 4: ডিভাইস নির্বাচন করুন
- ধাপ 5: রান-টাইম পরিবেশ পরিচালনা করুন
- ধাপ 6: প্রজেক্ট ফোল্ডারে ড্রাইভার ফাইল Int কপি করুন
- ধাপ 7: আপনার প্রকল্পে ড্রাইভার ফাইল যুক্ত করুন
- ধাপ 8: হেডার ফাইলের পথ কনফিগার করুন
- ধাপ 9: আপনার STM32F407 ডিসকভারি কিটকে আপনার পিসি/ল্যাপটপে সংযুক্ত করুন
- ধাপ 10: কম্পাইলার কনফিগারেশনে ST-Link ডিবাগার নির্বাচন করুন
- ধাপ 11: ST-Link ডিবাগার কনফিগার করুন
- ধাপ 12: কোডটি তৈরি করুন এবং আপলোড করুন
- ধাপ 13: এটা !!! শুধু STM32F407 MCU রিসেট করুন এবং মোবাইল ফোন ব্যবহার করুন
- ধাপ 14: দ্রুত নোট এবং ডিবাগ তথ্য
ভিডিও: STM32F407 ডিসকভারি কিট এবং GSM A6 মডিউল ব্যবহার করে বেসিক মোবাইল ফোন: 14 টি ধাপ (ছবি সহ)
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 08:00
আপনি কি কখনও একটি শীতল এমবেডেড প্রকল্প তৈরি করতে চেয়েছিলেন? যদি হ্যাঁ, তাহলে সবচেয়ে জনপ্রিয় এবং সবার প্রিয় গ্যাজেট যেমন মোবাইল ফোন !!! এই নির্দেশনায়, আমি আপনাকে STM32F407 ডিসকভারি কিট এবং GSM A6 মডিউল ব্যবহার করে কিভাবে একটি মৌলিক মোবাইল ফোন তৈরি করতে হয় সে বিষয়ে নির্দেশনা দেব।
এই প্রকল্পে 3 টি প্রধান মডিউল রয়েছে:
- GSM A6 মডিউল - এই মডিউলটি কল এবং রিসিভ করার জন্য দায়ী।
- LCD 16x02 Display - আউটপুট দেখতে
- হেক্স কীপ্যাড - ইনপুট দিতে
STM32F407 MCU GSM A6, LCD, এবং Keypad নিয়ন্ত্রণ করে। তাই প্রোগ্রামিংকে সহজ এবং সংগঠিত করার জন্য, আমি STM32F407 MCU- তে GSM A6 মডিউল, LCD এবং কীপ্যাড ইন্টারফেসিংয়ের জন্য পৃথক ড্রাইভার কোড তৈরি করেছি। তারপরে আমি কেবল এই ড্রাইভার ফাইলগুলিকে মূল প্রোগ্রামে অন্তর্ভুক্ত করেছি এবং সংশ্লিষ্ট API গুলি বলেছি। আপনি নীচের সরবরাহগুলিতে এই ড্রাইভার কোডগুলি খুঁজে পেতে পারেন।
সমগ্র Keil প্রকল্প ফাইল নীচে অন্তর্ভুক্ত করা হয়
সরবরাহ
- STM32F407 ডিসকভারি কিটের সম্পূর্ণ বিবরণ STM32F407 ডিসকভারি কিট দিয়ে শুরু করা
- GSM A6 মডিউল সম্পর্কে প্রাথমিক বিবরণ
- গিটহাব রিপোজিটরি বেসিক মোবাইল ফোন STM32F407 ডিসকভারি কিট এবং জিএসএম মডিউল A6 মডিউল ব্যবহার করে
- I2C মডিউল ব্যবহার করে STM32F407 ডিসকভারিতে 16x02 LCD ইন্টারফেস করা।
- STM32F407 ডিসকভারি কিটে 4X4 ম্যাট্রিক্স কীপ্যাড ইন্টারফেস করা
- STM32F407 ডিসকভারি কিটে GSM-A6 মডিউল ইন্টারফেসিং
ধাপ 1: উপাদান তালিকা
এই প্রকল্পের জন্য প্রয়োজনীয় হার্ডওয়্যার উপাদানগুলি হল:
- STM32F407 ডিসকভারি কিট
- GSM A6 মডিউল
- LCD 16x02
- I2C মডিউল
- হেক্স কীপ্যাড
- জাম্পার তারের একটি দম্পতি
- রুটি বোর্ড
- স্পিকার (8Ω)
- মাইক্রোফোন
পদক্ষেপ 2: সংযোগগুলি তৈরি করুন
উপরের ছবিতে দেওয়া উপাদানগুলি সংযুক্ত করুন। এই ছবি/ডায়াগ্রামটি আপনাকে সমস্ত উপাদানগুলিকে সংযুক্ত করার জন্য একটি খুব বাস্তবসম্মত এবং সহজ উপায় দেয়।:-)
দ্রষ্টব্য: জিএসএম এ 6 মডিউল একটি মাইক্রো ইউএসবি সংযোগকারী ব্যবহার করে চালিত। GSM A6 কে শক্তিশালী করার জন্য আপনি যেকোনো মোবাইল চার্জার ব্যবহার করতে পারেন।
ধাপ 3: Keil UVision IDE খুলুন
Keil uVision IDE খুলুন। একটি প্রকল্পের উপর ক্লিক করুন নির্বাচন করুন নতুন uVision প্রকল্প… তারপর আপনার কাজের ডিরেক্টরি নির্বাচন করুন এবং আপনার পছন্দের প্রকল্পের নাম দিন।
ধাপ 4: ডিভাইস নির্বাচন করুন
একবার আপনি প্রকল্পের একটি নাম দিলে, পরবর্তী ধাপে আপনাকে একটি ডিভাইস যুক্ত করতে হবে। এখানে আমরা STMicroelectronics থেকে STM32F407VG Micronconroller যোগ করছি। STM32F407VG নির্বাচন করুন, তারপর ঠিক আছে ক্লিক করুন।
ধাপ 5: রান-টাইম পরিবেশ পরিচালনা করুন
পরবর্তী ধাপ হল ম্যানেজ রান-টাইম এনভায়রনমেন্ট ট্যাবে লাইব্রেরি/ড্রাইভার কম্পোনেন্ট নির্বাচন করা। এখানে উপরের ছবিতে দেখানো সব উপাদান নির্বাচন করুন। একবার আপনি সমস্ত উপযুক্ত ক্ষেত্র চেক করুন সমাধান করুন ক্লিক করুন তারপর ঠিক আছে ক্লিক করুন।
ধাপ 6: প্রজেক্ট ফোল্ডারে ড্রাইভার ফাইল Int কপি করুন
এখন আপনাকে জিএসএম এ 6 মডিউল, এলসিডি এবং কীপ্যাডের জন্য ড্রাইভার ফাইল যুক্ত করতে হবে। ড্রাইভার ফাইলগুলি হল:
1. জিএসএম এ 6 মডিউল:
GSM_A6_Driver_STM32F407.c এবং GSM_A6_Driver_STM32F407.h
2. এলসিডি:
STM32F407_I2C_LCD16x02_Driver.c এবং STM32F407_I2C_LCD16x02_Driver.h
3. কীপ্যাড
STM32F407_KeypadDriver.c এবং STM32F407_KeypadDriver.h
আপনার প্রকল্প ফোল্ডারে এই সমস্ত 6 টি ফাইল অনুলিপি করুন। আমি নীচে এই ফাইলগুলি সংযুক্ত করেছি
ধাপ 7: আপনার প্রকল্পে ড্রাইভার ফাইল যুক্ত করুন
একবার আপনি আপনার প্রোজেক্ট ফোল্ডারের ভিতরে ড্রাইভার ফাইল কপি করলে, আপনাকে এই ফাইলগুলিকে আপনার প্রোজেক্টে যোগ করতে হবে।
Keil এ, Target1 নির্বাচন করুন, ডান ক্লিক করুন তারপর নতুন গ্রুপ যোগ করুন নির্বাচন করুন। New টি নতুন গ্রুপ তৈরি করুন এবং তাদের নাম পরিবর্তন করুন:
1) ব্যবহারকারীর আবেদন - এখানে নতুন "main.c" ফাইল যোগ করুন।
2) GSM_A6_Driver - বিদ্যমান "GSM_A6_Driver_STM32F407.c" এবং "GSM_A6_Driver_STM32F407.h" ফাইলগুলিকে এই গোষ্ঠীতে যুক্ত করুন।
3) LCD_Driver - এই গ্রুপে বিদ্যমান "STM32F407_I2C_LCD16x02_Driver.c" এবং "STM32F407_I2C_LCD16x02_Driver.h" ফাইল যোগ করুন
4) কীপ্যাড_ড্রাইভার - এই গ্রুপে বিদ্যমান "STM32F407_KeypadDriver.c" এবং "STM32F407_KeypadDriver.h" ফাইল যোগ করুন
দ্রষ্টব্য: আমি নীচে "main.c" ফাইলটি অন্তর্ভুক্ত করেছি, আপনি সরাসরি এই ফাইলটি যুক্ত করতে পারেন অথবা এর তৈরি বিষয়বস্তু নতুন তৈরি করা প্রধান ফাইলে অনুলিপি করতে পারেন।
ধাপ 8: হেডার ফাইলের পথ কনফিগার করুন
একবার আপনি ড্রাইভার ফাইল যোগ করলে, আপনাকে কম্পাইলারকে বলতে হবে যে সংশ্লিষ্ট হেডার ফাইলগুলি কোথায় অবস্থিত। অতএব আমাদের কম্পাইলার বিকল্পটি কনফিগার করতে হবে।
টার্গেট "টার্গেট 1.." সি/সি ++ অন্তর্ভুক্ত পথের জন্য টার্গেট 1 অপশনে ডান ক্লিক করুন। নিশ্চিত করুন যে আপনি আপনার প্রকল্প ফোল্ডারের পথটি অন্তর্ভুক্ত করেছেন যেহেতু আমরা সেখানে ড্রাইভার ফাইলগুলি অনুলিপি করেছি।
ধাপ 9: আপনার STM32F407 ডিসকভারি কিটকে আপনার পিসি/ল্যাপটপে সংযুক্ত করুন
ধাপ 10: কম্পাইলার কনফিগারেশনে ST-Link ডিবাগার নির্বাচন করুন
টার্গেট 1 এ ডান ক্লিক করুন, তারপরে টার্গেট "টার্গেট 1.." এর বিকল্পে ক্লিক করুন, তারপরে ডিবাগ ট্যাবে নেভিগেট করুন এবং উপরের ছবিতে দেখানো হিসাবে এসটি-লিঙ্ক-ডিবাগার নির্বাচন করুন
ধাপ 11: ST-Link ডিবাগার কনফিগার করুন
ধাপ 10 এ ST-Link ডিবাগার নির্বাচন করার পরে, সেটিংসে ক্লিক করুন তারপর ট্রেস নির্বাচন করুন এবং উপরের ছবিতে দেখানো সমস্ত ক্ষেত্র পরীক্ষা করুন।
ধাপ 12: কোডটি তৈরি করুন এবং আপলোড করুন
সমস্ত ধাপ সমাপ্ত করার পরে প্রকল্পটি তৈরি করুন এবং নিশ্চিত করুন যে কোডটিতে কোনও ত্রুটি নেই। সফল সংকলনের পরে, কোডটি আপনার ডিসকভারি কিটে আপলোড করুন।
ধাপ 13: এটা !!! শুধু STM32F407 MCU রিসেট করুন এবং মোবাইল ফোন ব্যবহার করুন
আমি এই প্রকল্পের একটি ডেমো ভিডিও অন্তর্ভুক্ত করেছি।
ধাপ 14: দ্রুত নোট এবং ডিবাগ তথ্য
- আমি আপনাকে প্রথমে জিএসএম মডিউল চালু করার পরামর্শ দিচ্ছি এবং এক মিনিট অপেক্ষা করুন। কারণ একবার আপনি জিএসএম মডিউল চালু করলে এটি নেটওয়ার্ক পরিষেবা প্রদানকারীর সাথে সংযোগ স্থাপন করতে হবে। গুণমান/সংকেত শক্তির উপর নির্ভর করে জিএসএম মডিউল সংযুক্ত হতে কিছু সময় নিতে পারে।
- আমি "ইন্ডিয়া" তে আউটপুট পরীক্ষা করেছি। সরলতার জন্য, আমি "GSM_A6_Driver_STM32F407.c" ড্রাইভার ফাইলে কাউন্টি কোড (ভারতের জন্য +91) হার্ডকোড করেছি। আপনি যদি অন্য দেশে থাকেন তাহলে উপরের ছবিতে হাইলাইট করা আপনার দেশের কোড যোগ করুন।
প্রস্তাবিত:
Arduino এর সাথে 2.4Ghz NRF24L01 মডিউল ব্যবহার করে ওয়্যারলেস রিমোট - Nrf24l01 4 চ্যানেল / 6 চ্যানেল ট্রান্সমিটার রিসিভার কোয়াডকপ্টার - আরসি হেলিকপ্টার - আরডুইনো ব্যবহার করে আরসি প্লেন: 5 টি ধাপ (ছবি সহ)
Arduino এর সাথে 2.4Ghz NRF24L01 মডিউল ব্যবহার করে ওয়্যারলেস রিমোট | Nrf24l01 4 চ্যানেল / 6 চ্যানেল ট্রান্সমিটার রিসিভার কোয়াডকপ্টার | আরসি হেলিকপ্টার | আরডুইনো ব্যবহার করে আরসি প্লেন: একটি আরসি গাড়ি চালানোর জন্য | চতুর্ভুজ | ড্রোন | আরসি প্লেন | RC নৌকা, আমাদের সবসময় একটি রিসিভার এবং ট্রান্সমিটার দরকার, ধরুন RC QUADCOPTER এর জন্য আমাদের একটি 6 টি চ্যানেল ট্রান্সমিটার এবং রিসিভার দরকার এবং সেই ধরনের TX এবং RX খুব ব্যয়বহুল, তাই আমরা আমাদের একটি তৈরি করতে যাচ্ছি
ব্লুটুথ মডিউল এবং স্বায়ত্তশাসিত রোবট মুভমেন্ট ব্যবহার করে ভয়েস দ্বারা নিয়ন্ত্রিত দূরত্ব, দিকনির্দেশনা এবং আবর্তনের ডিগ্রী (পূর্ব, পশ্চিম, উত্তর, দক্ষিণ) সহ আরডুইনো রোবট: 6 ধাপ
ব্লুটুথ মডিউল এবং স্বায়ত্তশাসিত রোবট মুভমেন্ট ব্যবহার করে ভয়েস দ্বারা নিয়ন্ত্রিত দূরত্ব, দিক এবং আবর্তনের ডিগ্রী (পূর্ব, পশ্চিম, উত্তর, দক্ষিণ) সহ আরডুইনো রোবট। , বাম, ডান, পূর্ব, পশ্চিম, উত্তর, দক্ষিণ) ভয়েস কমান্ড ব্যবহার করে সেন্টিমিটারে দূরত্ব প্রয়োজন। রোবটকে স্বয়ংক্রিয়ভাবেও সরানো যায়
ওয়াইফাই এবং আইআর রিমোট এবং অ্যান্ড্রয়েড অ্যাপ ব্যবহার করে নোডএমসিইউ এবং আইআর রিসিভারের সাথে রিলে কন্ট্রোল: 5 টি ধাপ (ছবি সহ)
ওয়াইফাই এবং আইআর রিমোট এবং অ্যান্ড্রয়েড অ্যাপ ব্যবহার করে নোডএমসিইউ এবং আইআর রিসিভারের সাথে 8 রিলে কন্ট্রোল: ওয়াইফাই এবং আইআর রিমোট এবং অ্যান্ড্রয়েড অ্যাপের মাধ্যমে নোডেমকু এবং আইআর রিসিভার ব্যবহার করে 8 রিলে সুইচ নিয়ন্ত্রণ করুন। এখানে
মাইক্রো উপলব্ধি করতে HC-05 ব্লুটুথ মডিউল ব্যবহার করুন: মোবাইল ফোনের সাথে বিট যোগাযোগ: 9 টি ধাপ (ছবি সহ)
মাইক্রোকে উপলব্ধি করতে HC-05 ব্লুটুথ মডিউল ব্যবহার করুন: মোবাইল ফোনের সাথে বিট যোগাযোগ: অধ্যায়ে মাইক্রোকে উপলব্ধি করতে HC-06 ব্লুটুথ মডিউল ব্যবহার করুন: মোবাইল ফোনের সাথে বিট কমিউনিকেশন, আমরা মাইক্রো-এর মধ্যে যোগাযোগ অনুধাবন করার জন্য HC-06 ব্যবহার করার পদ্ধতি সম্পর্কে কথা বলেছি: বিট এবং মোবাইল ফোন। HC-06 ব্যতীত, আরেকটি সাধারণ ব্লুটুথ মডিউল রয়েছে
একটি এনালগ ডিসকভারি 2 এবং ল্যাবভিউ ব্যবহার করে DIY ইসিজি: 8 টি ধাপ
একটি এনালগ ডিসকভারি 2 এবং ল্যাবভিউ ব্যবহার করে DIY ইসিজি: এই নির্দেশনায়, আমি আপনাকে দেখাব কিভাবে ঘরে তৈরি ইলেক্ট্রোকার্ডিওগ্রাফ (ইসিজি) তৈরি করতে হয়। এই যন্ত্রটির লক্ষ্য হল হৃদপিণ্ডের দ্বারা সৃষ্ট প্রাকৃতিক বৈদ্যুতিক সম্ভাবনাকে প্রশস্ত করা, পরিমাপ করা এবং রেকর্ড করা। একটি ইসিজি সম্পর্কে প্রচুর তথ্য প্রকাশ করতে পারে