সুচিপত্র:

একটি CFA735/CFA835: 4 ধাপ হ্যাক করুন
একটি CFA735/CFA835: 4 ধাপ হ্যাক করুন

ভিডিও: একটি CFA735/CFA835: 4 ধাপ হ্যাক করুন

ভিডিও: একটি CFA735/CFA835: 4 ধাপ হ্যাক করুন
ভিডিও: Ekti Bangladesh | একটি বাংলাদেশ তুমি জাগ্রত জনতার | Sabina Yasmin | Lyrical Video | Anupam Music 2024, নভেম্বর
Anonim
একটি CFA735/CFA835 হ্যাক করুন
একটি CFA735/CFA835 হ্যাক করুন

আপনার কি এমন একটি প্রকল্প আছে যার জন্য একটি ডিসপ্লে, একটি কী প্যাড এবং কিছু মেমরি প্রয়োজন, কিন্তু ক্রিস্টালফন্টজ CFA735 বা CFA835 মডিউলের প্রিলোডেড ফার্মওয়্যারটি আপনি যা খুঁজছেন তা নয়? আপনি ভাগ্যবান - আপনি কাস্টম ফার্মওয়্যার লোড করতে এই মডিউলগুলি হ্যাক করতে পারেন।

CFA735 এবং CFA835 বহুমুখী বুদ্ধিমান LCD মডিউল। ক্রিস্টালফন্টজ CFA735 এবং CFA835 উভয়ই CFA10052 হার্ডওয়্যার মডিউলের উপর ভিত্তি করে, তাই এই টিউটোরিয়াল চলাকালীন CFA735 এবং/অথবা CFA835 কে CFA10052 হিসাবে উল্লেখ করা হবে। CFA10052 আপনার নিজস্ব কাস্টম ফার্মওয়্যার চালানোর জন্য পুনরায় প্রোগ্রাম করা যেতে পারে।

  • STMicroelectronics STM32F401 মাইক্রোকন্ট্রোলার
  • ARM 32-bit Cortex ™ -M4 CPU @ 84 MHz
  • 256K ফ্ল্যাশ, 64K RAM
  • 244 x 68 পিক্সেল ব্যাকলিট এলসিডি
  • Sitronix ST7529 32 গ্রেস্কেল গ্রাফিক LCD নিয়ামক
  • বক-বুস্ট সুইচিং সরবরাহ ব্যাপক সরবরাহ ভোল্টেজ পরিসীমা অনুমতি দেয়
  • কীপ্যাড এবং এলসিডি ব্যাকলাইটের জন্য পৃথক সুইচিং এলইডি ব্রাইটনেস কন্ট্রোলার
  • 6 বাটন ব্যাকলিট কীপ্যাড
  • 4x দ্বি-রঙ (লাল/সবুজ) LEDs
  • ইউএসবি 2 ইন্টারফেস
  • মাইক্রোএসডি কার্ড স্লট
  • 5 সাধারণ উদ্দেশ্য আইও পিন (GPIO এর)
  • একাধিক সিরিয়াল/SPI/I2C/CAN ইন্টারফেস (GPIO ব্যবহারের উপর নির্ভর করে)।

এই টিউটোরিয়ালটি আপনাকে দেখাবে যে কিভাবে একটি ফার্মওয়্যার প্রতিস্থাপন করা যায় যা একটি CFA10052 এ নতুন ফার্মওয়্যারের সাথে জাহাজ করে যা করবে:

  1. এলসিডিতে একটি বিকল্প গ্রিড প্রদর্শন করুন, বর্তমান ব্যাকলাইট, এলসিডি কনট্রাস্ট এবং কীপ্যাড স্থিতির তথ্য সহ;
  2. কীপ্যাড ব্যবহার করে ব্যাকলাইট এবং এলসিডি কনট্রাস্ট নিয়ন্ত্রণ করুন।
  3. ক্রম অনুসারে চারটি এলইডির রঙ লাল থেকে সবুজ করুন।
  4. হেডার -১ পিন 1 এবং 2 (115200 বড) -এ USART সিরিয়াল পোর্ট সক্ষম করুন এবং যেকোন প্রাপ্ত ডেটার প্রতিধ্বনি করুন।
  5. ইউএসবি ভার্চুয়াল সিরিয়াল পোর্ট সক্ষম করুন, এবং যেকোনো প্রাপ্ত ডেটা হোস্টে ফিরিয়ে দিন।
  6. অন্তর্ভুক্ত, কিন্তু প্রদর্শন করে না, ইউএসডি পড়া/লেখার ফাইল অ্যাক্সেস।

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

গুরুত্বপূর্ণ তথ্য:

Crystalfontz CFA10052 হার্ডওয়্যার মডিউল জাহাজ একটি বুটলোডার এবং CFA735/CFA835 ফার্মওয়্যার দিয়ে প্রোগ্রাম করা হয়েছে। বুটলোডার এবং CFA735/CFA835 ফার্মওয়্যার ওপেন সোর্স নয়, এবং ব্যবহারকারীর দ্বারা CFA10052 থেকে অনুলিপি করা যাবে না, এবং ব্যবহারকারীর দ্বারা সেগুলি CFA10052 এ প্রোগ্রাম করা যাবে না। যদি আপনি CFA735/CFA835 ফার্মওয়্যারে ফিরে যেতে চান, তাহলে আপনাকে এটি পুনরায় প্রোগ্রাম করার জন্য Crystalfontz- এ ফেরত পাঠাতে হবে।

সরবরাহ

  • Crystalfontz CFA10052 (হার্ডওয়্যার v1.1 বা পরবর্তী) মডিউল (CFA735 / CFA835)
  • STM32CubeIDE এবং STM32 ST-LINK ইউটিলিটি ইনস্টল করা পিসি (উইন্ডোজ/লিনাক্স/ওএসএক্স)
  • STMicroelectronics ST-LINK (V2 বা V3) প্রোগ্রামিং ইন্টারফেস
  • CFA10052 প্রোগ্রামিং কেবল (বিস্তারিত নিচে)
  • কাস্টম ফার্মওয়্যার (অথবা আমাদের এখানে ব্যবহার করুন)
  • আপনি যদি উইন্ডোজ 7/8/8.1/10 (বা সমতুল্য সার্ভার সংস্করণ) ব্যবহার করেন এবং ইউএসবি ভার্চুয়াল সিরিয়াল পোর্ট পরীক্ষা করতে চান, তাহলে আপনাকে এখান থেকে ড্রাইভার ডাউনলোড করতে হবে। ইউএসবি সিরিয়াল পোর্ট উইন্ডোজ 10+, লিনাক্স, ওএস-এক্স-এ অতিরিক্ত ড্রাইভার প্রয়োজন ছাড়াই কাজ করবে।

ধাপ 1: সরবরাহ সংগ্রহ/তৈরি করুন

সরবরাহ সংগ্রহ করুন/তৈরি করুন
সরবরাহ সংগ্রহ করুন/তৈরি করুন

এই উদাহরণ ফার্মওয়্যার প্রকল্পটি লোড এবং ব্যবহার করতে আমরা STM32CubeIDE ব্যবহার করার পরামর্শ দিই। STM32CubeIDE হল Eclipse- এর উপর ভিত্তি করে একটি ফ্রি IDE যা STMicroelectronics দ্বারা STM32 সুনির্দিষ্ট সরঞ্জাম অন্তর্ভুক্ত করার জন্য পরিবর্তন করা হয়েছে। STM32CubeIDE ওয়েবপেজে IDE ডাউনলোড করা যাবে।

এসটিএম ডিভাইস কনফিগারেশন টুলের সঠিক অপারেশন বজায় রাখার জন্য, আপনাকে অবশ্যই ডিভাইস কনফিগারেশন টুলটি তৈরি করতে হবে যার সাথে মিলিত "ইউজার কোড BEGIN xxx" এবং "USER CODE END xxx" মন্তব্য ব্লকের মধ্যে তৈরি সোর্স-কোড।

এরপরে, সিএফএ 10052 প্রোগ্রামিং কেবলটির জন্য আমাদের সাথে যোগাযোগ করবেন বা আপনার নিজের তৈরি করবেন তা সিদ্ধান্ত নিন। আমরা এই টিউটোরিয়ালে বিস্তারিতভাবে ক্যাবল তৈরী করতে যাচ্ছি না, কিন্তু আপনি যদি নিজের CFA10052 প্রোগ্রামিং ক্যাবল বানাতে চান, তাহলে আপনি GitHub পৃষ্ঠায় সংযোগগুলি খুঁজে পেতে পারেন, এটি করার সর্বোত্তম উপায় হল একটি দিয়ে শুরু করা ষোলো পিন রিবন ক্যাবল এবং এসটি লিঙ্কের জন্য তারের সাথে এটি স্প্লাইস করুন।

ধাপ 2: বিদ্যমান ফার্মওয়্যার মুছুন

বিদ্যমান ফার্মওয়্যার মুছুন
বিদ্যমান ফার্মওয়্যার মুছুন
বিদ্যমান ফার্মওয়্যার মুছুন
বিদ্যমান ফার্মওয়্যার মুছুন

যদি আপনার CFA10052 মডিউল সরবরাহকৃত CFA735 বা CFA835 ফার্মওয়্যারের সাথে লোড করা হয় তবে আপনাকে নতুন ফার্মওয়্যার ইনস্টল করার আগে প্রথমে প্রস্থানকারী ফার্মওয়্যার মুছে ফেলতে হবে। ফ্ল্যাশ মেমরি পড়া এবং লেখা সুরক্ষিত এবং কাস্টম ফার্মওয়্যার লোড হওয়ার আগে অবশ্যই তা সরিয়ে ফেলতে হবে।

ইনস্টল করা ফার্মওয়্যার অপসারণের জন্য দুটি পদ্ধতি রয়েছে:

  1. CFA10052 মডিউল থেকে USB তারের (বা বিদ্যুৎ সরবরাহ) সংযোগ বিচ্ছিন্ন করুন।
  2. প্রোগ্রামিং কেবল ব্যবহার করে CFA10052 কে ST-LINK এর সাথে সংযুক্ত করুন (উপরে দেখুন), এবং ST-LINK হোস্ট পিসিতে সংযুক্ত করুন।
  3. CFA10052 (বা পাওয়ার সাপ্লাই) -এ USB তারের প্লাগিং করার সময় CFA10052 এ আপ এবং ডাউন কী ধরে রাখুন CFA10052 এখন ক্রিস্টালফন্টজ বুটলোডার স্ক্রিন দেখাবে।
  4. STM32 ST-LINK ইউটিলিটি চালান। "টার্গেট" মেনুতে, "বিকল্প বাইট" উইন্ডোটি খুলুন। "রিড আউট সুরক্ষা" বাক্সে, "লেভেল 0" নির্বাচন করুন। প্রয়োগ করুন ক্লিক করুন ক্রিস্টালফন্টজ ফার্মওয়্যার এখন সরানো হয়েছে এবং কোন কাস্টম ফার্মওয়্যার এখন প্রোগ্রাম করা যেতে পারে।

বিকল্প পদ্ধতি (যদি আপনি কী ধরে ক্রিস্টালফন্টজ বুটলোডারে প্রবেশ করতে না পারেন):

  1. CFA10052 মডিউল থেকে USB তারের (বা বিদ্যুৎ সরবরাহ) সংযোগ বিচ্ছিন্ন করুন।
  2. 3.3V বা 5V এর সাথে BOOT0 টেস্ট-পয়েন্ট (CFA10052 মডিউলের পিছনে একটি ছোট প্যাড, H1 সংযোগকারীর কাছে) সংযুক্ত করুন।
  3. প্রোগ্রামিং কেবল ব্যবহার করে CFA10052 কে ST-LINK এর সাথে সংযুক্ত করুন (উপরে দেখুন), এবং ST-LINK হোস্ট পিসিতে সংযুক্ত করুন।
  4. CFA10052 তে পাওয়ার (অথবা এটি USB পাওয়ারের সাথে সংযুক্ত করুন)। প্রদর্শন ফাঁকা হওয়া উচিত।
  5. STM32 ST-LINK ইউটিলিটি চালান "টার্গেট" মেনুতে, "অপশন বাইটস" উইন্ডো খুলুন "রিড আউট প্রোটেকশন" বক্সে, "লেভেল 0" নির্বাচন করুন। প্রয়োগ করুন ক্লিক করুন ক্রিস্টালফন্টজ ফার্মওয়্যার এখন সরানো হয়েছে এবং কোন কাস্টম ফার্মওয়্যার এখন প্রোগ্রাম করা যেতে পারে।
  6. 3.3V/5V এর BOOT0 পিনের সংযোগের আর প্রয়োজন নেই।

ধাপ 3: CFA10052 এ আপনার ফার্মওয়্যার কম্পাইল করুন এবং লোড করুন

CFA10052 এ আপনার ফার্মওয়্যার কম্পাইল এবং লোড করুন
CFA10052 এ আপনার ফার্মওয়্যার কম্পাইল এবং লোড করুন

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

ফার্মওয়্যার কম্পাইল করতে:

  1. STM32CubeIDE খুলুন
  2. ফাইল মেনুতে, আমদানি নির্বাচন করুন, তারপরে "ওয়ার্কস্পেসে বিদ্যমান প্রকল্পগুলি আমদানি করুন"।
  3. রুট ডিরেক্টরি বাক্সে, এই উদাহরণ ফার্মওয়্যারের ডিরেক্টরি নির্বাচন করুন।
  4. Finish বাটনে ক্লিক করুন।
  5. প্রকল্প এক্সপ্লোরারে, cfa10052_example প্রকল্প নির্বাচন করুন, তারপর Src এবং "main.c" ফাইলটি খুলুন।
  6. প্রকল্প মেনুতে, "বিল্ড প্রকল্প" নির্বাচন করুন।

প্রোগ্রাম এবং CFA10052 এ ফার্মওয়্যার চালানোর জন্য:

  1. CFA10052 মডিউল থেকে USB তারের (বা বিদ্যুৎ সরবরাহ) সংযোগ বিচ্ছিন্ন করুন।
  2. প্রোগ্রামিং কেবল ব্যবহার করে CFA10052 কে ST-LINK এর সাথে সংযুক্ত করুন (উপরে দেখুন), এবং ST-LINK হোস্ট পিসিতে সংযুক্ত করুন।
  3. ইউএসবি কেবল (বা পাওয়ার সাপ্লাই) CFA10052 এর সাথে সংযুক্ত করুন।
  4. নিশ্চিত করুন যে ফার্মওয়্যার প্রকল্পটি তৈরি করা হয়েছে (উপরের ধাপগুলি দেখুন), এবং প্রকল্প এক্সপ্লোরারে "cfa10052_example" এর অধীনে "বাইনারি" প্রদর্শিত হবে।
  5. যদি "বাইনারি" দৃশ্যমান না হয়, "cfa10052_example" প্রকল্পে ডান ক্লিক করুন এবং রিফ্রেশ নির্বাচন করুন।
  6. রান মেনু নির্বাচন করুন, তারপর "ডিবাগ কনফিগারেশন"।
  7. বামদিকে ডিবাগ টার্গেট টাইপস সিলেকশন বক্সে, "STM32 Cortex-M Application" এ রাইট-ক্লিক করুন এবং "নতুন কনফিগারেশন" নির্বাচন করুন।
  8. একটি কনফিগারেশন উইন্ডো দেখানো হবে। ডিফল্ট সেটিংস ঠিক আছে। প্রয়োগ করুন তারপর বন্ধ বোতামে ক্লিক করুন।
  9. রান মেনুতে, "ডিবাগ হিসাবে" নির্বাচন করুন, তারপর "STM32 কর্টেক্স অ্যাপ্লিকেশন"। STM32CubeIDE এখন ST-LINK এর সাথে সংযুক্ত হওয়া উচিত, এবং CFA10052 এ ফার্মওয়্যার আপলোড এবং চালানো উচিত।

STM32CubeIDE- এ প্রথমবারের মতো প্রকল্পটি লোড করার জন্য উপরের পদক্ষেপগুলি প্রয়োজন। ফার্মওয়্যার সোর্স-কোড পরিবর্তন করার পরে, কেবল প্রকল্পটি পুনরায় তৈরি করা (Ctrl-B শর্টকাট) এবং CFA10052 (F11 কী শর্টকাট) প্রোগ্রামিং প্রয়োজন।

ফার্মওয়্যার সাধারণ STM32 বুটলোডার পদ্ধতির মাধ্যমেও লোড করা যায় (ডিবাগিং শুধুমাত্র SWD ইন্টারফেস এবং একটি ST-LINK ব্যবহার করে পাওয়া যায়)। উদাহরণস্বরূপ, যদি সিরিয়াল সংযোগ ব্যবহার করা হয়, USART1 ব্যবহার করা যেতে পারে (RX = H1-Pin1 এবং TX = H1-Pin2)। STM32 বুটলোডার এবং ইন্টারফেস সম্পর্কে বিস্তারিত তথ্যের জন্য, এখানে পিডিএফ দেখুন।

ধাপ 4: লাইসেন্স

ক্রিস্টালফন্টজ-সরবরাহকৃত সোর্স-কোড দ্য আনলাইসেন্স ব্যবহার করে প্রদান করা হয়, লাইসেন্স কোন শর্ত ছাড়াই যেটি উৎসর্গ করা হয় তা পাবলিক ডোমেইনে কাজ করে। লাইসেন্সবিহীন কাজ, পরিবর্তন, এবং বড় কাজগুলি বিভিন্ন শর্তে এবং সোর্স কোড ছাড়াই বিতরণ করা যেতে পারে। বিস্তারিত জানার জন্য UNLICENCE ফাইল, অথবা unlicense.org দেখুন।

STM32CubeIDE সোর্স-কোড তৈরি করেছে এবং STMicroelectronics লাইব্রেরি হল কপিরাইট (c) 2019 STMicroelectronics। সমস্ত অধিকার সংরক্ষিত. সফটওয়্যার উপাদানটি এসটি দ্বারা BSD 3-Clause লাইসেন্স, "লাইসেন্স" এর অধীনে লাইসেন্সপ্রাপ্ত; আপনি লাইসেন্সের সাথে সম্মতি ব্যতীত এই ফাইলগুলি ব্যবহার করতে পারবেন না। আপনি লাইসেন্সের একটি অনুলিপি openource.org/licenses/BSD-3-Clause এ পেতে পারেন।

প্রস্তাবিত: