কেন সিরিয়াল মনিটর শুরু করে স্কেচটি পুনরায় চালু করবেন?


31

আমি যদি সিরিয়াল ডেটা প্রেরণকারী কোনও স্কেচ আপলোড করি তবে আমি স্কেচ আপলোড হয়ে গেলে তাত্ক্ষণিকভাবে TX / RX LEDs ফ্ল্যাশ দেখতে পাচ্ছি। আমি যদি তখন সিরিয়াল মনিটর শুরু করি, স্কেচটি পুনরায় আরম্ভ হবে বলে মনে হচ্ছে।

একটি খালি ন্যূনতম স্কেচ যা এই আচরণটি দেখায়:

void setup()
{
    Serial.begin(9600);
    Serial.println("Setup");
}

void loop()
{
  Serial.println("Loop");
  delay(1000);
}

বেশ কয়েকটি বোর্ড এবং ম্যাক এবং আইডিইর উইন্ডোজ সংস্করণ দিয়ে পরীক্ষিত।

আউটপুট উদাহরণ - আমি সিরিয়াল মনিটর খুললে এটি "সেটআপ" এ ফিরে যায়:

আবার শুরু

কেন?


5
আমি এমন স্কেচ কখনও দেখিনি যা সিরিয়াল ব্যবহার করে এটি করে না, আক্ষরিক অর্থে কোনও স্কেচ।
সাইবারবিবন্স



আমি একটি পৃথক সমস্যা পেয়েছি। আরডুইনো লেস্টিক (এবং অন্যান্য) আর স্বতঃসংশ্লিষ্ট হয় না। আমি কীভাবে এটি ভাড়া করব?
সিএমসিডিগ্রাগনকাই

উত্তর:


33

আরডুইনো আরটিএস ( প্রেরণের অনুরোধ) ব্যবহার করে (এবং আমি মনে করি ডিটিআর (ডেটা টার্মিনাল প্রস্তুত) ) স্বতঃ-পুনঃস্থাপনের জন্য সংকেতগুলি। আপনি যদি একটি সিরিয়াল টার্মিনাল পান যা আপনাকে প্রবাহ নিয়ন্ত্রণ সেটিংস পরিবর্তন করতে দেয় তবে আপনি এই কার্যকারিতাটি পরিবর্তন করতে পারবেন।

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

অটো রিসেটটি অক্ষম করার আরেকটি উপায় হ'ল রিসেট পিনটিতে একটি পুল আপ রেজিস্টার লাগানো।

সিরিয়াল সংযোগে অটো রিসেট অক্ষম করা হচ্ছে


2
আরডুইনো ইউনোসকে RESET এবং GND জুড়ে 10 µF ক্যাপাসিটার দিয়ে স্থির করা যেতে পারে। এটি এখন পর্যন্ত এটির জন্য একটি ইনস্টলেশন হিসাবে ব্যবহার করেছে ...
স্ক্রস করুন

1
আমি ব্যবহার করার চেষ্টা পুটিং , এর COM পোর্ট যাও Arduino (আমার ক্ষেত্রে COM16) এ প্রদর্শিত হবে সাথে সংযুক্ত হচ্ছে। সংযোগ / সিরিয়ালে "ফ্লো কন্ট্রোল" "কিছুই নেই" এ সেট করা থাকলে এটি আরডুইনোটিকে পুনরায় সেট করছে (অন্য বিকল্পগুলি হ'ল "এক্সন / এক্সএফএফ", "আরটিএস / সিটিএস" এবং "ডিএসআর / ডিটিআর")। আমি পিটিটিওয়াইয়ের 0.60 সংস্করণ ব্যবহার করেছি।
পিটার মর্টেনসেন

-কন্ট: এটি একটি আরডিনো ইউনো আর 3-তে চেষ্টা করা হয়েছিল।
পিটার মর্টেনসেন

ডিউডিমানোভ এবং ইউনোর "EN RESET" লেবেলযুক্ত একটি ট্রেস রয়েছে যা এই আচরণটি নিয়ন্ত্রণ করে। স্বয়ংক্রিয় পুনরায় সেটটি অক্ষম করতে সেই ট্রেসটি স্ক্র্যাচ বন্ধ করুন। এটি পুনরায় সক্ষম করতে প্যাডগুলি জুড়ে একটি তারের সোল্ডার করুন।
mhopeng

12

সত্যতা সর্বদা ডেটাশিট, স্কিমেটিক্স এবং কোডে থাকে:

আরডুইনো ইউএনও আসলে /DTRরিসেট ট্রিগার করতে লাইনটি ব্যবহার করে , যেমন আপনি নীচের ডাটাশিটে দেখতে পারেন:

স্কিম্যাটিক পুনরায় সেট করুন


আপনার স্কিম্যাটিক চিত্রটির লিঙ্কটি নষ্ট হয়ে গেছে।
linhartr22

1
আপনাকে ধন্যবাদ, আমি এটি স্থির! আমি আসলে ভেবেছিলাম যে এসও ইমেজগুলি ক্যাচ করছে, তবে দেখে মনে হচ্ছে এটি নেই, তাই আমি এটি সর্বদা চালু রাখার বিষয়টি নিশ্চিত করব।
zmo

আবার, এটি ভেঙে গেছে। সম্ভবত আপনি এটি স্ট্যাকএক্সচেঞ্জের ইমগুর বিকল্পটি ব্যবহার করে একটি চিত্র হিসাবে যুক্ত করতে পারেন? সম্পাদকের সরঞ্জামদণ্ডে কেবল 'চিত্র' বিকল্পটি ক্লিক করুন।

সম্পন্ন হয়েছে, টিপটির জন্য ধন্যবাদ (আমার নিজের সাইটটি 10 ​​দিনের জন্য নিচে ছিল কারণ আমি কিছু রক্ষণাবেক্ষণ করছিলাম যা সাময়িক ছিল)
zmo

1
হ্যাঁ, তবে আসলে কী ঘটে? এটিএমগা 16 ইউ 2 প্রোগ্রাম করার উপায়ের কারণে (কোনও সিওএম পোর্ট যখন কোনও প্রোগ্রাম দ্বারা খোলা হয় তখন PD7 কম জোর দিয়ে বলছে?)? বা ডিটিআরের জন্য কিছু মান অনুসরণ করছেন?)। এবং সি 5 এর অর্থ কী? - এটি উভয় স্থানান্তরের জন্য মূল প্রসেসরটিকে পুনরায় সেট করবে (নিম্ন থেকে উচ্চ এবং নিম্ন থেকে নীচে)? মূল প্রসেসরের রিসেট পিনে আনুমানিক ডাল প্রস্থ (মাইক্রোসেকেন্ডে) কত এবং এটি দেখতে কেমন?
পিটার মর্টেনসেন

1

এটি সমস্যার সমাধান করে

import os
import sys
import termios
import fcntl

        self.fd = sys.stdin.fileno()

        # Stop resetting the arduino on serial connect

        self.newattr = termios.tcgetattr(self.fd)
        self.newattr[2] = self.newattr[2] & ~termios.HUPCL
        termios.tcsetattr(self.fd, termios.TCSANOW, self.newattr)
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.