এনটিপিতে স্ট্রং ক্লক

আমি জিওভানি,

আমি জিওভানি’ আমি জিওভানি. আমি জিওভানি. আমি জিওভানি (আমি জিওভানি) আমি জিওভানি, কিন্তু সামাজিক দৃষ্টিকোণ থেকে আমি একটি শিল্প পরিমাণ হবে. বসবাস 1000 একটি দেশে মিটার যা একটি পর্যটন গন্তব্য হওয়া উচিত: কিন্তু এই সময়ে গ্রামে ঘুরে বেড়ানো মরুভূমিতে থাকার মতো. সত্যিই হয়তো মরুভূমি আরও জীবন্ত.

তবে আসুন এটি একা ছেড়ে এই নিবন্ধটির উদ্দেশ্য আসা যাক. এতক্ষণে আপনি জানেন যে আমি ঘড়ির প্রতি আচ্ছন্ন হয়ে পড়েছি এবং আমার মনে হয় আমি সেগুলির মধ্যে কয়েক ডজন তৈরি করেছি, যার মধ্যে বর্তমান এবং অন্যগুলি রয়েছে যা আরও প্রাচীন এবং পরিত্যক্ত।.
এইবার আমি এমন একটি ঘড়ি তৈরি করেছি যা শুধুমাত্র ঘন্টা রাখে. এবং মিনিট ?. হ্যাঁ যারা খুব কিন্তু প্রত্যেক 5 মিনিট.
এই ছবিটি সমাপ্ত পণ্য প্রতিনিধিত্ব করে (তাই কথা বলতে: নান্দনিকতার প্রতি দয়া করুন): আমি জন্য একটি ভিত্তি হিসাবে ব্যবহার 12 ঘন্টা প্রতিনিধিত্বকারী LEDs, একটি ব্যর্থ Hard_Disk দ্বারা cannibalized একটি ডিস্ক. প্রতিটি এলইডি সমস্ত ঘড়ির মুখের ক্লাসিক বিন্যাস অনুসারে এক ঘন্টা প্রতিনিধিত্ব করে.

নিম্নলিখিত ফটো: ঘড়ির মুখ এবং অভ্যন্তরীণ হার্ডওয়্যার:

এবং মিনিট ??. তারা খুব প্রতিনিধিত্ব করা হয় কিন্তু পিচ সঙ্গে 5 ঘন্টার LEDs ব্যবহার করে এবং তাদের জন্য অবিকল ফ্ল্যাশ করা 5 মিনিট. দুটি কেন্দ্রীয় LED AM/PM সংজ্ঞায়িত করে.
একটা উদাহরণ নেওয়া যাক: আকরিক 10 ই 17 মিনিট: ঘন্টা LED আলো আপ 10 এবং ঘন্টা LED "3" যা মিনিট পেরিয়ে না যাওয়া পর্যন্ত জ্বলে 20 যার ফলে “4” বাজে এলইডি ফ্ল্যাশ হয় এবং আরও অনেক কিছু. আপাতত কি হবে (উদাহরণস্বরূপ) তাদের মত 10,10. শুধুমাত্র "10" LED ইঙ্গিত করতে ফ্ল্যাশ হবে 10 ই 10 মিনিট. এবং এই সিস্টেমটি ঘন্টার সাথে মিলে যাওয়া সমস্ত মিনিটের জন্য বৈধ.

তাহলে বলা যাক ঘড়ি কখনই সুনির্দিষ্ট সময় রাখে না !. তবে কৌশলটি জেনে আমরা সর্বদা বলতে পারি যে এটি X ঘন্টা স্ট্র্যাডলিং 5 মিনিট. কিন্তু ঘড়িটি সঠিক. কেন ?.
কারণ আমি বিভিন্ন DS1307 টাইপের আরটিসিতে বিরক্ত হয়ে গেছি, DS3231 এবং অন্যান্য যেগুলি কখনই সঠিক নয় এবং সর্বদা কিছু সমন্বয়ের প্রয়োজন হয়৷. সঠিক সময় টাইমিং পেতে অন্যান্য উপায় আছে: উদাহরণস্বরূপ 220V নেটওয়ার্ক থেকে প্রাপ্ত i 50 Hz একটি খুব সাধারণ সার্কিটের সাথে পাওয়া যায় এবং একটি উপযুক্ত ডিভাইডার সার্কিটের সাহায্যে এর ফ্রিকোয়েন্সি পাওয়া সম্ভব 1 HZ সেকেন্ড থেকে শুরু করে গণনা সার্কিটগুলিকে পাইলট করতে সক্ষম. কিন্তু এই সমাধান কয়েক দশক আগে ঠিক ছিল: আমি নিজেই প্রথম ডিজিটাল ঘড়ি তৈরি করতে এটি ব্যবহার করেছি. এটা স্পষ্ট যে এই পথটি বিভিন্ন কারণে আজ কার্যকর নয়: 1) টান 220 এটা বিপদজনক, 2) এটি সব ঘটতে আপনার বেশ কয়েকটি আইসি প্রয়োজন, 3) এটা সুবিধাজনক নয়. তাই এই প্রজেক্টে আমি ইন্টারনেটের সময় নির্ভর করেছিলাম. অর্থাৎ, NTP সার্ভার থেকে সময় এবং তারিখ পুনরুদ্ধার করা যা সময় পরিচালনা করে. আমি ইতিমধ্যে একটি ঘড়ি তৈরি করেছি যা একটি এলসিডির মাধ্যমে এনটিপি সার্ভার থেকে নেওয়া সম্পূর্ণ তারিখ এবং সময় প্রদর্শন করে।.

তো চলুন দেখে নেই নির্মাণ বৈশিষ্ট্য:

ব্যবহৃত হার্ডওয়্যার:
• মাইক্রো যাও Arduino ন্যানো 328 ঘড়ি পরিচালনার জন্য প্রধান ইঞ্জিন হিসাবে
• মাইক্রো ESP8266_1 NTP সার্ভার পরিচালনার জন্য
MAX7219 LED ব্যবস্থাপনার জন্য. মহান: সঙ্গে 3 তারের নিজেদের চালনা 64 সিরিজের অন্যান্য চিপগুলিকে সংযুক্ত করার সম্ভাবনা সহ শুধুমাত্র একটি চিপ দিয়ে নেতৃত্বে.
12 এলইডি (সিলিন্ডার মডেল উচ্চ উজ্জ্বলতা ঠান্ডা সাদা).
• N.1 দ্বিমুখী স্তরের রূপান্তরকারী 3আরডুইনোর সাথে ESP-এর মাত্রা সামঞ্জস্য করতে V/5V
• N.1 মডিউল AMS1117 নিয়ন্ত্রক (da 5V a 3V) মাইক্রো ইএসপি পাওয়ার জন্য

লেভেল কনভার্টারটি প্রয়োজনীয় কারণ ESP শুধুমাত্র 3V এ কাজ করে এবং তাই সমস্ত পিন লেভেল এই লেভেলের সাহায্যে পরিচালিত হয়. 3V থাকা ভোল্টেজ রেগুলেটরটি মাইক্রো Arduino_Nano থেকে স্বাধীনভাবে ESP কে পাওয়ার জন্য ব্যবহার করা হয় (যার ফলে একটি 3V আউটপুট রয়েছে).

সফটওয়্যার:

ARDUINO এর IDE এনটিপি সার্ভারের ব্যবস্থাপনা সম্পর্কিত স্কেচের সংকলন এবং প্রোগ্রামিংয়ের জন্য. কার্যকারিতা এবং পিনের উপস্থিতির ক্ষেত্রে ক্ষুদ্রতম থেকে বহুমুখী ইএসপি সিরিজকে চিনতে আইডিইকে অবশ্যই সঠিকভাবে কনফিগার করতে হবে।. এর তালিকা আপডেট করা প্রয়োজনতাস"এবং"বুকশেলভস". ব্যবস্থাপনার জন্য প্রধান স্কেচ আরডিইনো আইডিই দ্বারা পরিচালিত হতে পারে: ব্যক্তিগতভাবে আমি অন্য IDE ব্যবহার করতে পছন্দ করি: কোড:ব্লক. এটি স্ট্যান্ডার্ড লাইব্রেরি সহ প্রায় সমস্ত ARDUINO সংস্করণের জন্য পুরোপুরি কাজ করে. এটি খুব দ্রুত এবং প্রতিটি ফাংশন/নির্দেশের জন্য এটি একটি ব্যবহারিক "স্বয়ংসম্পূর্ণ" আছে. আর এরর মেসেজগুলো Arduino IDE এর চেয়ে অনেক বেশি পরিষ্কার. এটি WIFI লাইব্রেরির সাথে পুরানো. এবং যদি স্কেচের জন্য প্রয়োজনীয় লাইব্রেরিগুলি বিদ্যমান না থাকে, তাহলে কেবল সেগুলিকে .h এবং .cpp ফাইল হিসাবে "প্রকল্প"-এ ঢোকান.

পরিচালনার জন্য MAX7219 আমি মূল লাইব্রেরির তুলনায় নিজের দ্বারা প্রসারিত এবং পরিবর্তিত একটি "কাস্টম" লাইব্রেরি ব্যবহার করি (নেটওয়ার্কে উপস্থিত). এটিতে একটি স্ট্যান্ডার্ড লাইব্রেরির বৈশিষ্ট্য এবং আকার নেই (এটিতে .h এবং .cpp ফাইল নেই) কিন্তু এটি একটি .ino ফাইল. এটি যে কোনো ধরনের LED পরিচালনা করতে সক্ষম, প্রতিটি ধরনের প্রদর্শন 7 সেগমেন্ট এবং ম্যাট্রিক্স ডিসপ্লে মডিউল 8×8 ই 7×5. প্রতি আমি প্রদর্শন ক 7 সেগমেন্ট টাইপ a প্রদান করা হয় COMMON_ANODE: এর কারণ হল চিপ শুধুমাত্র ডিভাইসগুলি পরিচালনা করে a COMMON_CATHODE. এই ক্ষেত্রে একটি ছোট হার্ডওয়্যার সংযোজন প্রয়োজন. কেউ এখন ভাববে কেন দুটি মাইক্রো ব্যবহার করে একটি ঘড়ি তৈরি করতে যা কখনই "নির্দিষ্ট" নয়. প্রকল্পে ব্যবহৃত ডিভাইসগুলি চালানোর জন্য পর্যাপ্ত পিনের চেয়ে বেশি পিনের সাথে আসা একটি ESP32 ব্যবহার করা আরও সহজ হত. কিন্তু সেই সময়ে আমার বেশ কয়েকটি ESP8266 কেনা আছে এবং ESP32 পাওয়ার এবং বৈশিষ্ট্যগুলি পুনরায় আবিষ্কার করতে আমার কোন আগ্রহ ছিল না.

মা, আমি আবারো বলছি, তারা ব্যক্তিগত পছন্দ.

এখন দেখা যাক কিভাবে সব ম্যানেজমেন্ট সফটওয়্যার তৈরি করা হয়েছে:

ESP পাশ: এই মাইক্রো পণ্য "থেকেএসপ্রেসিফ” WEB পৃষ্ঠাগুলির বিকাশের জন্য একটি ইন্টারনেট সংযোগের সম্পূর্ণ পরিচালনার অনুমতি দেয়৷ (ওয়াইফাই এর মাধ্যমে) একটি সাধারণ ট্যাবলেট বা পিসিতে দেখা হবে. আমি বিভিন্ন আকার এবং মাত্রায় WEB পৃষ্ঠাগুলি তৈরি করার চেষ্টা করার জন্য বেশ কয়েকটি স্কেচ তৈরি করেছি. আমার "ইলেক্ট্রনিক স্লিপার" প্রকল্পে, রিলেগুলির পরিচালনা একটি ওয়েব পৃষ্ঠা থেকে করা হয় যেখানে 5 রিলে.

দুর্ভাগ্যবশত এই ইএসপি পিনগুলির সাথে খুব কৃপণ: বাস্তবে তারা একা 2 ব্যবহারযোগ্য GPIO/0 এবং GPIO/2. আমি পিন হয়েছে RX / টেক্সাস সিরিয়াল ইন্টারফেস হিসাবে ব্যবহৃত হয়. প্রোগ্রামিং এর জন্য arduino IDE এবং একই মাইক্রো এর মধ্যে একটি ইন্টারফেস থাকা খুবই গুরুত্বপূর্ণ: যদি এর মাত্রা GPIO/0, তারা সঠিক অবস্থায় নেই আপনি এটি প্রোগ্রাম করতে সক্ষম হবে না: IDE সংযুক্ত থাকলেও সিরিয়াল পোর্ট চিনতে পারে না.
যখন আমি প্রথম ইএসপি কিনি তখন আমি একটি মডিউলও কিনেছিলাম”ডিবাগার". এই মডিউলটিকে সিরিয়াল পোর্ট হিসাবে দেখা হয়. সংযোগকারী মধ্যে ESP সন্নিবেশ দ্বারা, IDE পোর্ট এবং প্রোগ্রামিংকে স্বীকৃতি দেয় (GPIO/0 স্বয়ংক্রিয়ভাবে মাটিতে নিয়ে আসে) সঠিকভাবে করা হয়. ইএসপি পুনরায় চালু করতে মডিউলটিতে একটি রিসেট বোতামও রয়েছে.

প্রজেক্টের ভৌত কাঠামোতে যাওয়ার আগে, আসুন দেখি যে যুক্তি দিয়ে স্কেচগুলি তৈরি করা হয়েছিল:

ESP8266_1 এর স্কেচ:
এর সাথে সম্পর্কিত স্বাভাবিক সেটিংস পরে ওয়াইফাই (রাউটারের সাথে সংযোগ এবং গতিশীল আইপি ঠিকানার নিয়োগের সাথে) একটি সিরিয়াল পোর্ট খোলা হয় (বড হার 19200) স্ট্যান্ডার্ড লাইব্রেরি দ্বারা পরিচালিত "Software_Serial” পিন ব্যবহার করে GPIO/0 এবং GPIO/1 আসা হয়েছে RX / টেক্সাস যা লেভেল কনভার্টার মডিউলের মাধ্যমে আরডুইনোর দুটি পিনের সাথে সংযুক্ত থাকে. একটি সাক্ষাৎকার যেমন "হ্যান্ড_শেক" ঐটাই বলতে হবে "আমি আপনাকে ডেটা পাঠাচ্ছি, আপনি উত্তর দিয়েছেন যে আপনি তাদের পেয়েছেন” সংজ্ঞায়িত RX/TX ব্যবহার করে. এই প্রথম সাক্ষাৎকারটি সৌর/গ্রীষ্মকালীন সময় পরিচালনা করতে ব্যবহৃত হয়: স্কেচটি Arduino থেকে কোড পাওয়ার আশা করে36"প্রমিত সময়ের জন্য বা"72"ডেলাইট সেভিং সময়ের জন্য. এর কারণ হল NTP সার্ভার শুধুমাত্র সৌর সময়ে সময় প্রেরণ করে কিন্তু লাইব্রেরি যা এটি পরিচালনা করে "সেটটাইমঅফসেট” মান সেট করে ডেলাইট সেভিং টাইমে সময় আপডেট করে 7200. এই সমস্ত "সেটআপ" এ পরিচালিত হয়.

লুপে: এটি আরডুইনোর একটি নির্দিষ্ট অক্ষর পাওয়ার জন্য অপেক্ষা করে যাতে বোঝা যায় যে Arduino নিজেই ঘড়ি আপডেট করার জন্য প্রয়োজনীয় HOUR এবং MINUTE মানগুলি পেতে প্রস্তুত. এই অক্ষরটি পাওয়ার পরে, ESP NTP সার্ভারকে ঘন্টার মান পাঠাতে বলে এবং সেগুলি গৃহীত হয় 8 আকারে অক্ষর এইচ:এম এম:এস এস এবং একটি স্ট্রিং মধ্যে সংরক্ষণ করা হয়. NTP সার্ভার তারিখের মানও পাঠাতে পারে যা এই ক্ষেত্রে প্রয়োজন হয় না. সতর্ক থাকুন যে বেশ কয়েকটি লাইব্রেরি রয়েছে যেগুলি এনটিপি সার্ভারগুলি পরিচালনা করে তবে তাদের সবগুলি তারিখ এবং সময় উভয় মানই পরিচালনা করে না. পরিবর্তে ব্যবহৃত লাইব্রেরি সম্পূর্ণ. তারপরে আমরা ঘন্টা এবং মিনিটের মান দুটি বাইট প্রাপ্ত করে বাইনারি বিন্যাসে রূপান্তর করতে এগিয়ে যাই: এটা বাইট না (থেকে মান 00 একটি 23) এবং MINUTES পরিবর্তন করুন (এর গ্রুপে মান 5) একটি সাধারণ দশমিক/বাইনারী রূপান্তরের পরে. এই দুটি বাইট ক্রমানুসারে ARDUINO-তে সিরিয়ালের মাধ্যমে পাঠানো হয় যা তাদের ঘড়ি আপডেট করতে ব্যবহার করবে. চক্র তারপর শুরু থেকে পুনরায় আরম্ভ হয়.

উল্লেখ্য: এইমাত্র বর্ণিত সিস্টেমটি পরীক্ষার একটি সিরিজের সর্বশেষতম: প্রাথমিকভাবে ESP স্ট্রিং HH পাঠায়:এম এম:সম্পূর্ণ SS যা আরডুইনো পেয়েছে এবং একই স্ট্রিংয়ে সংরক্ষণ করেছে তারপরে রূপান্তর করতে এবং সময় আপডেট করতে. এই সিস্টেমটি একটি নির্দিষ্ট বিন্দু পর্যন্ত সঠিকভাবে কাজ করে: তারপর এটি "পাগল হয়ে গেল" এই অর্থে যে প্রাপ্ত স্ট্রিংটি একেবারে নিয়ন্ত্রণের বাইরের মানগুলির সাথে "ময়লা" ছিল. যা মূল্যবোধের সঠিকতাকে হুমকির মুখে ফেলেছে. আমি স্বাভাবিক "ডিবাগ" সিস্টেমের মাধ্যমে এই সব সনাক্ত করতে সক্ষম হয়েছি, su সিরিয়াল মনিটর, আরডুইনো আসলে কী পেয়েছে তা যাচাই করার জন্য বার্তাগুলির. এবং ESP সঠিক মান পাঠিয়েছে !.

স্কেচ হল Arduino (মাইক্রো ব্যবহৃত Arduino_Nano):

এছাড়াও এই স্কেচটিতে সাধারণ পোর্ট সেটিংস তৈরি করা হয়েছিল, যার মধ্যে স্ট্যান্ডার্ড সিরিয়ালগুলি এবং এর সাথে সম্পর্কিত একটি “Software_Serial” এবং MAX719 এবং সম্পর্কিত LEDs পরিচালনার জন্য লাইব্রেরি চালু করেছে, গ্রীষ্ম/শীতের সময় নির্ধারণের জন্য ESP-তে "36" বা "72" কোড পাঠানোর প্রথম অপারেশনটি করা হয়।. এই পছন্দটি একটি আরডুইনো পিনের উপর একটি জাম্পার থেকে ভূমিতে আনা হয় বা বিনামূল্যে রেখে দেওয়া হয়. ESP দ্বারা এই প্রেরণ এবং নিশ্চিতকরণের পরে, সেটআপ চক্র শেষ হয়.

ধারা লুপ এটা আপনি কল্পনা করতে পারেন তুলনায় সহজ: ক্রমানুসারে চালু করা হয় 3 ফাংশন: সময় মান প্রাপ্ত প্রথম (ESP দ্বারা পাঠানো হয় যে দুটি বাইট), দ্বিতীয়টি ঘন্টার লেড আপডেট করতে এবং তৃতীয়টি মিনিটের নেতৃত্ব আপডেট করতে. এবং চক্র আবার শুরু হয়.
সিংহের ভাগ হল রুটিন যা অবশ্যই ESP থেকে "HH" এবং "MM" মানগুলি গ্রহণ করবে: এছাড়াও এই ক্ষেত্রে কৌশল "হ্যান্ড_শেক": ESP-কে সতর্ক করার জন্য একটি অক্ষর পাঠানো হয়. ESP দুটি রূপান্তরিত বাই পাঠিয়ে প্রতিক্রিয়া জানায়. ঘন্টার মান পরীক্ষা করার ফলে ঘড়ির সামনের AM/PM LED গুলি আলোকিত হয়. অন্য দুটি রুটিন HH এবং MM মান পরীক্ষা করে এবং তাদের LED চালু করে.

এর যুক্তি দেখা যাক যা দিয়ে ঘন্টার LED আলোকিত হয়, তাই মিনিটের জন্যও:
MAX7219 পৃথকভাবে পর্যন্ত পরিচালনা করতে পারে 64 নেতৃত্বাধীন বা একটি ম্যাট্রিক্স 8×8 (64 এলইডি). একটি রেজিস্টার পৃথক চেইন সম্বোধন করে (D0/D7) অন্য রেজিস্টার সংজ্ঞায়িত করে যা নেতৃত্বে (বা ম্যাট্রিক্সের বিন্দু) চালু করা (বা বন্ধ করুন) নিম্নলিখিত কনফিগারেশন অনুযায়ী অন্য রেজিস্টার কিভাবে সেট করা হয় তার উপর নির্ভর করে:

ডিপি, এ/জি একটি ক্লাসিক ডিসপ্লে a এর অংশগুলির অবস্থান যথাক্রমে উল্লেখ করুন 7 অংশ + দশমিক বিন্দু (ডিপি). অপপুরে a 8 সংযুক্ত leds (সাধারণ ক্যাথোড) একইভাবে প্রত্যেককে বরাদ্দ করা ডিপি থেকে জি পর্যন্ত একটি অবস্থান নিয়ে গেছে. ঘড়ি আছে 12 এলইডি: তাদের সব সম্বোধন করতে সক্ষম হতে আমি প্রতিটি দুটি চেইন সংজ্ঞায়িত করেছি 6 এলইডি: এই ক্ষেত্রে: নিবন্ধনকর্মী "ডি 0” ঘন্টা থেকে LEDs ঠিকানা হবে 12(00) সব 5(17), যখন নিবন্ধন "D1থেকে ঘন্টা সম্বোধন করবে 6(18) সব 11(23). ঘন্টা বা মিনিট পরিবর্তন না হওয়া পর্যন্ত এলইডি চালু থাকবে. এর কারণ হল MAX7219 এছাড়াও মাল্টিপ্লেক্সিংয়ের যত্ন নেয়. এবং leds জন্য কোন সীমাবদ্ধ প্রতিরোধকের প্রয়োজন হয় না.

arduino_Nano-এর প্রধান স্কেচ-এ একটি বিশেষ টেবিল 12 উপাদানগুলি চালু বা বন্ধ করার জন্য বিটগুলির সাথে ডেটা রেজিস্টারের কোডিং ধারণ করে এবং ঘন্টা/মিনিট চালু করার জন্য কোন চেইনটি ব্যবহার করতে হবে তা বৈষম্য করতে DP বিট ব্যবহার করা হয়।. আপেক্ষিক অবস্থানটিকে "1" বা "0" তে এনে এটি বন্ধ করার জন্য এলইডি আলো দেয়. এই টেবিল:

বাইট Tab_Led_Ore [12] =
{
DPABCDEFG ORE MIN HEX Nota: "G" বিট কখনই ব্যবহার করা হয় না
B01000000, // অফসেট 0 আকরিক “0” “12” 00 0x40
B00100000, // অফসেট 1 আকরিক “1” “13” 5 0x20
B00010000, // অফসেট 2 আকরিক “2” “14” 10 0x10
B00001000, // অফসেট 3 আকরিক “3” “15” 15 0x08
B0000100, // অফসেট 4 আকরিক “4” “16” 20 0x04
B00000010, // অফসেট 5 আকরিক “5” “17” 25 0x02
B11000000, // অফসেট 6 আকরিক “6” “18” 30 0xC0
B10100000, // অফসেট 7 আকরিক “7” “19” 35 0xA0
B10010000, // অফসেট 8 আকরিক “8” “20” 40 0x90
B10001000, // অফসেট 9 আকরিক “9” “21” 45 0x88
B10000100, // অফসেট একটি আকরিক “10” “22” 50 0x84
B1000010 // অফসেট বি আকরিক “11” “23” 55 0x82
};

সতর্কতা বিশেষ: রেজিস্টার D0/D1 ব্যবহার করার কোনো বাধ্যবাধকতা নেই. D2 থেকে D7 পর্যন্ত অন্যগুলিও ব্যবহার করা যেতে পারে যদি সেগুলি অন্য উদ্দেশ্যে ব্যবহার না করা হয়. চিপের কোন নির্দিষ্ট পছন্দ নেই.

পিসিবি এবং সার্কিট উত্পাদন

বিশেষ সরঞ্জাম না থাকায়, আমাকে পদ্ধতিটি ব্যবহার করে ছোট পিসিবি তৈরি করতে হবে"PRESS_AND_PEEL". অভিজ্ঞতার একটি সিরিজের পরে, আমি এখনও একটি পর্যাপ্ত বৈধ চূড়ান্ত পণ্য আছে পরিচালিত. এই প্রকল্পের তিনটি পিসিবি: প্রথমটিতে মাইক্রো আরডুইনো ন্যানো এবং MAX7219 চিপ রয়েছে, দ্বিতীয়টি ESP এবং ইন্টারফেস ইলেকট্রনিক্স এবং তৃতীয় i 12 ঘড়ি নেতৃত্বে.

প্রাইম পিসিবি লেআউট:

ডানদিকে মাইক্রো আরডুইনো ন্যানো সন্নিবেশ করার জন্য সংযোগকারী, বাম দিকে MAX7219-এর হাউজিং. মাইক্রোর USB সকেট 5V 1/A আউটপুট সহ মোবাইল ফোন বা ট্যাবলেটগুলির জন্য যে কোনও ব্যাটারি চার্জারের সাথে সংযুক্ত থাকায় কোনও নির্দিষ্ট পাওয়ার সাপ্লাই নেই, এটা পুরো জিনিস সমর্থন করার জন্য যথেষ্ট. একটি ছোট বোতাম রিসেটের সাথে সংযুক্ত থাকে যা একই সময়ে ন্যানো এবং ইএসপি রিসেট করে. একটি সংযোগকারী রিসেট সংকেত বহন করে,V5, GND, টেক্সাস, পিসিবির দিকে আরএক্স যেখানে ইএসপি রয়েছে. AM/PM পিন দুটি AM/PM লেডের সাথে ছোট প্লেটের সাথে সংযুক্ত থাকে. অবশেষে একটি জাম্পার 36/72 তথাকথিত গ্রীষ্ম/শীতকালীন সময় সেট করতে.

দ্বিতীয় PCB এর বিন্যাস:

এই পিসিবি সমর্থন করে: 5V নিয়ন্ত্রক > 3ESP পাওয়ার জন্য V, লেভেল কনভার্টার 5v থেকে 3v লেভেল সামঞ্জস্য করতে, এবং পরিশেষে সংযোগকারী ইএসপি-এর ঘর. আমি 5 উপরের পিনগুলি যথাক্রমে সংযুক্ত করা হয় 5 পিন ডেল পিসিবি প্রধান. RX/TX ইনপুট সংকেত নিয়মিতভাবে ESP-এর TX/RX পিনের সাথে লেভেল কনভার্টারের মাধ্যমে সংযুক্ত থাকে।. উল্লেখ্য: এমনকি একটি ভোল্টেজ বিভাজক যথেষ্ট হবে.

তৃতীয় পিসিবি লেআউট:

ঘর i 12 দুই সংযোজক সঙ্গে নেতৃত্বে (A_F) সংশ্লিষ্ট চেইন এবং দুটি DG0/DG1 পিনের জন্য. A/F সংযোগগুলি সমান্তরালভাবে যুক্ত হয় (A এর সাথে A, বি কন বি, প্রভৃতি) তারপর MAX7219 এর সংশ্লিষ্ট পিনের সাথে সংযুক্ত হতে হবে. সেইসাথে DG0/DG1.

আমি এই শেষ পিসিবি ভুলে গেছি: এটি দুটি AM/PM LED এর সাথে সম্পর্কিত যা স্তর অনুসারে আলোকিত হয় 0/1 ইনপুট পিনে উপস্থিত.

.

 

সমাপ্তি:

আজ অবধি সমাধান করার একমাত্র সমস্যা হল একটি উপযুক্ত বাক্স বা অন্য কিছুতে সবকিছু আবদ্ধ করা. DIY ল্যান্ডস্লাইড হওয়ার কারণে আমি কখনই কিছু করতে পারি না, অন্তত নান্দনিকভাবে, বৈধ.

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

gvsoft মার্চ 2021

2 প্রত্যুত্তর
  1. Picmicro675
    Picmicro675 বলেছেন:

    কাজের জন্য অভিনন্দন.
    আমি একই রকম চেষ্টা করছি, 7SD সহ ma. ন্যানো ব্যবহার করা হয় না কারণ ইএসপি-03 (আমি কি ব্যবহার করি) এটি আমাকে একটি DS3231 এবং SPI কে MAX7912 এর সাথে ইন্টারফেস করতে দেয়.
    এই মুহূর্তে আমার কোন অবসর সময় নেই. হয়তো পরে তুলে নেব.

উত্তর দিন

আলোচনায় যোগ দিতে চান?
অবদান নির্দ্বিধায়!

উত্তর দিন