ترمینال پورت سریال و کار با نرم افزار Hercules

توسط | 9 خرداد, 1399 | AVR, lpc, STM32, آردوینو, میکروکنترلر, وبلاگ | 24 دیدگاه ها

ترمینال-پورت-سریال-آموزش-hercules

آموزش STM32 یوبرد

شروع بازی ST

آموزش های رایگان STM32

فیلم های آموزش STM32

آموزش خصوصی STM32

اخبار جدید یوبرد در اینستاگرام

ترمینال پورت سریال یا ترمینال سریال، به نرم افزارهایی برای کنترل و راه اندازی پورت سریال کامپیوتر گفته می شود. این نرم افزارها با راه اندازی پورت سریال، داده های دریافتی و ارسالی را نمایش نیز می دهند. همچنین دارای تنظیماتی برای تغییر و تعیین مشخصات ارتباط سریال هستند. پورت سریال (پورت COM) در گذشته برای اتصال موس، کیبورد، مودم و … به کامپیوتر کاربرد داشت. امروزه در اغلب لپ تاپ ها پورت سریال وجود ندارد و پورت های USB و اترنت و … جای آن را گرفته اند. اگر چه نوع ارتباط پورت های USB و اترنت نیز سریال است، اما «پورت سریال» به سخت افزار سازگار با استاندارد RS-232 گفته می شود. البته ممکن است «پورت سریال» به سخت افزارهایی با استاندارد RS485 و RS-422 نیز گفته شود. از جمله کانکتورهای پورت سریال می توان به کانکتورهای DB9 و DB25 و همچنین RJ45 و RJ50 و MMJ اشاره کرد.

یکی از ساده ترین و معمول ترین روش های ارتباط کامپیوتر با دستگاه ها و ادوات جانبی نظیر میکروکنترلرها، ماژول های SIM800، بردهای متن باز آردوینو، ماژول های وای فای ESP و بلوتوث و … ارتباط از طریق پورت سریال است. در لپ تاپ ها و کامپیوترهایی که پورت سریال سخت افزاری وجود ندارد، یک پورت Serial مجازی نصب می شود. در این صورت داده های ترمینال پورت سریال به داده هایی قابل ارسال و دریافت توسط پورت USB، پورت اترنت یا … تبدیل می شود. در ادامه پس از آشنایی با پورت Serial مجازی، به معرفی نرم افزارهای ترمینال پورت سریال می پردازیم. در پایان نیز روش کار با ترمینال پورت سریال Hercules را خواهیم دید. در تصویر زیر پورت های سریال کامپیوتر را روی دو کارت سریال مشاهده می کنید.

فیلم آموزش آردوینو مقدماتی

کارت-سریال-پورت-db9-db25

تصویر 1 – کارت سریال کامپیوتر و کانکتورهای DB9 و DB25 روی آنها

پورت سریال مجازی چیست؟

پورت Serial مجازی (Virtual Serial Port) یا پورت COM مجازی یک پورت شبیه سازی شدۀ نرم افزاری برای برقراری ارتباط سریال بین دستگاه های جانبی و کامپیوتر است. کاربرد پورت Serial مجازی، ایجاد امکان برقراری ارتباط سریال دستگاه های جانبی نظیر میکروکنترلرها با کامپیوترها و لپ تاپ هایی است که پورت سریال (COM) سخت افزاری ندارند. و یا تعداد پورت سریال آنها برای پیاده سازی یک پروژه کافی نیست. درایورها و نرم افزارهایی وجود دارند که پورت سریال کامپیوتر را به صورت مجازی شبیه سازی می کنند. با استفاده از شبیه سازی پورت سریال توسط این نرم افزارها، می توان دستگاه های متصل به درگاه هایی مانند USB، اترنت و … را به عنوان یک پورت سریال به کامپیوتر معرفی کرد. در واقع هنگام استفاده از یک شبیه ساز پورت سریال، داده های حاصل از یک نرم افزار یا دستگاه جانبی از داده های سریال به اطلاعاتی تبدیل می شوند که می توانند از طریق درگاه USB، اترنت و … منتقل شوند. به این صورت که داده های سریال از نرم افزار (یا دستگاه) خارج می شوند. سپس توسط پورت Serial مجازی (یا مبدل سخت افزاری) به داده های قابل انتقال از طریق درگاه های دیگر (USB، اترنت و …) تبدیل می شوند. در سمت دیگر، دوباره داده ها توسط یک مبدل سخت افزاری (یا پورت Serial مجازی) به داده های سریال تبدیل می شوند. بنابراین ارتباط با پورت سریال از طریق یک پورت Serial مجازی و یک مبدل سخت افزای شبیه سازی می شود. برای تفهیم بیشتر این موضوع، در ادامه مثالی را ذکر خواهیم کرد.

عملکرد-پورت-سریال-مجازی

تصویر 2 – عملکرد پورت Serial مجازی و مبدل سخت افزاری USB به سریال

نکته: این که «پورت مجازی چیست؟» مبحث دیگری است و بحث ما در این بخش پورت Serial مجازی است.

نکته: ترمینال پورت سریال با پورت Serial مجازی متفاوت است. تفاوت آنها از تعریفشان مشخص است.

مثالی از عملکرد پورت سریال مجازی

فرض کنید یک ارتباط سریال بین کامپیوتر و یک میکروکنترلر AVR با استفاده از یک مبدل USB به سریال CP2102 برقرار باشد. همچنین داده ها در کامپیوتر با استفاده از نرم افزار Hercules، ارسال و دریافت می شوند. پیش تر نصب درایور CP2102 باعث ایجاد یک پورت Serial مجازی شده است. اتصال مبدل CP2102 به کامپیوتر به همراه این پورت Serial مجازی نیز در مجموع یک پورت سریال را شبیه سازی می کنند. داده ها بین میکروکنترلر و ترمینال پورت سریال نرم افزار Hercules مبادله می شوند. در این میان داده ها توسط پورت Serial مجازی و همچنین مبدل CP2102 از سریال به دادۀ قابل انتقال توسط درگاه USB و بالعکس تبدیل می شوند. به این صورت که پورت Serial مجازی دادۀ سریال دریافتی از نرم افزار Hercules را به دادۀ قابل ارسال توسط درگاه USB و دادۀ دریافتی از درگاه USB را به دادۀ سریال ارسالی به نرم افزار Hercules تبدیل می کند. همچنین مبدل USB به سریال CP2102 دادۀ دریافتی از درگاه USB را به دادۀ سریال ارسالی به میکروکنترلر و دادۀ دریافتی از میکروکنترلر را به دادۀ قابل ارسال توسط درگاه USB تبدیل می کند. بدین شکل در راه اندازی USART در AVR و تبادل داده بین آن و کامپیوتر از دو مبدل USB به سریال سخت افزاری و نرم افزاری استفاده می شود.

عملکرد-پورت-سریال-مجازی-hercules

تصویر 3 – عملکرد پورت Serial مجازی، نرم افزار Hercules، مبدل USB به سریال و پورت سریال AVR

معرفی نرم افزارهای ترمینال پورت سریال

تعداد زیادی نرم افزار ترمینال پورت Serial وجود دارد. در این بخش به معرفی چند نرم افزار پورت سریال می پردازیم. این نرم افزارها هم در IDEها و هم به صورت جداگانه وجود دارند. نرم افزار کدویژن، اتمل استودیو و نرم افزار Arduino هر کدام دارای یک ترمینال پورت سریال هستند.

  • ترمینال سریال Termite: این نرم افزار ساده دارای یک تکست باکس برای نوشتن متن ارسالی و یک نمایشگر برای نشان دادن متن دریافتی است. برخی قابلیت های نرم افزار رایگان Termite عبارتند از: قابلیت Autocomplete در تکست باکس ارسال، قابلیت ذخیره کردن متن دریافتی در فرمت های متنی نظیر txt، وجود نسخۀ پرتابل و نصبی، قابلیت کنترل و مانیتور خطوط مودم، پشتیبانی از Baud Rateهای غیر استاندارد، قابلیت فوروارد کردن داده بین دو پورت سریال و … .

ترمینال-پورت-سریال-termite

تصویر 4 – محیط نرم افزار ترمینال سریال Termite

  • نرم افزار Hercules: این نرم افزار علاوه بر این که ترمینال پورت سریال است، قابلیت های دیگری نیز دارد. در ادامه روش کار با آن را توضیح خواهیم داد. برای آشنایی بیشتر با این نرم افزار به نوشتۀ «نرم افزار Hercules» مراجعه نمایید.
  • نرم افزار Serial Port Terminal از Eltima Software: ترمینال پورت سریال پیشرفتۀ Serial Port Terminal یک نرم افزار چند وظیفه ای Session Based است. که با استفاده از آن می توان به هر پورت سریال متصل شد و به آزمایش، عیب یابی یا دیباگ دستگاه متصل به پورت سریال پرداخت. با استفاده از این نرم افزار می توان داده ها را در فرمت های ASCII، باینری، اوکتال و هگزادسیمال انتقال داد. این نرم افزار تنها برای 14 روز رایگان است.

محیط-ترمینال-پورت-سریال-eltima

تصویر 5 – محیط نرم افزار Eltima Serial Port Terminal

  • از جمله ترمینال های پورت سریال دیگر می توان نرم افزارهای Realterm و Free Serial Port Terminal و Hyper Serial Port و Denkovi BCB Com Port Tool و Terminal و HyperTerminal و Tera Term و YAT و CoolTerm و ZTerm و … را نام برد.

ترمینال پورت سریال در محیط IDEهای کدویژن، اتمل استودیو و Arduino

در نرم افزار CodeVisionAVR باید ابتدا از منوی Settings روی Terminal Settings کلیک کرد. در پنجرۀ باز شده می توان تنظیمات ارتباط سریال را انجام داد. سپس از منوی Tools باید روی Terminal کلیک کرد. در این صورت پنجرۀ ترمینال پورت سریال در CodeVisionAVR باز می شود که می توان در آن نوشت و داده های ارسالی و دریافتی را مشاهده نمود. در نرم افزار Arduino باید ابتدا در منوی Tools پورت COM مورد نظر را در Port انتخاب کرد. سپس در همین منو روی Serial Monitor کلیک کرد. در این صورت پنجرۀ ترمینال پورت سریال در Arduino باز می شود که در تکست باکس بالای آن می توان نوشت. داده های ارسالی و دریافتی را می توان در محیط نمایشگر این پنجره مشاهده نمود. در نرم افزار اتمل استودیو باید ابتدا فایل terminal_for_atmel_studio.2.8.4.vsix (در پیوست) را باز کرد. سپس از منوی Tools روی Extension and Updates کلیک کرد. در قسمت Online باید Terminal for Atmel Studio را نصب کرد. برای اجرای ترمینال پورت سریال در Atmel Studio از منوی View روی Terminal Window کلیک می کنیم. ترمینال سریال نرم افزار اتمل استودیو را در تصویر زیر می بینید.

ترمینال-پورت-سریال-atmel-studio

تصویر 6 – پنجرۀ ترمینال در Atmel Studio

نکته: ترمینال های پورت سریال در Keil مانند ترمینال های کدویژن، Arduino و اتمل استودیو نیست. در نرم افزار Keil این ترمینال ها برای مانیتور کردن ارتباطات سریال میکروکنترلر حین دیباگ یا شبیه سازی است.

ارتباط کامپیوتر با پورت سریال میکروکنترلرها و دیگر ماژول ها

منظور از پورت سریال میکروکنترلرها همان پروتکل ارتباطی USART یا UART آنها است. برای ارتباط با پورت سریال و ارسال و دریافت اطلاعات از پورت سریال میکروکنترلرها و ماژول های دارای پروتکل USART توسط کامپیوتر، لازم است از یک مبدل استفاده شود. در لپ تاپ ها و کامپیوترهایی که پورت سریال سخت افزاری دارند، باید از مبدل RS-232 به TTL استفاده شود. چرا که سطوح ولتاژی در استاندارد RS-232 با USART میکروکنترلرها و ماژول ها متفاوت است. در استاندارد RS-232 ولتاژ سطح High (1 یا Mark) بین 3- تا 25- ولت است. ولتاژ سطح Low (صفر یا Space) نیز بین 3 تا 25 ولت است. بنابراین لازم است از مبدل هایی مانند MAX232 استفاده شود. برای ارتباط سریال بین کامپیوتر و لپ تاپ های بدون پورت سریال سخت افزاری مبدل های دیگری استفاده می شود. همان طور که گفته شد، در این لپ تاپ ها و کامپیوترها باید از پورت Serial مجازی استفاده کرد. مبدل های USB به سریال (یا USB به UART) فراوانی برای این کار وجود دارد. مبدل های CP2102 و CH330N و CH340N نمونه ای از مبدل های USB به سریال هستند. در استفاده از این مبدل ها باید به سطوح ولتاژ ارتباط سریال در میکروکنترلرها و ماژول ها دقت شود. برای مثال سطوح ولتاژ Low و High در UART ماژول SIM800 برابر صفر و 2.8 ولت است. سطوح ولتاژ Low و High مبدل USB به سریال CP2102 نیز برابر صفر و 5 ولت است. بنابراین باید به روشی این سطوح همسان شوند. در تصویر زیر آی سی مبدل CP2102 را روی بردهای توسعۀ میکروکنترلر یوبرد مشاهده می کنید.

نکته: در میکروکنترلرها ارتباطات SPI و I2C و … نیز از نوع سریال هستند. ولی کلمۀ سریال در مبحث میکروکنترلرها بیانگر ارتباط USART یا UART آنهاست.

cp2102-برد-توسعه-میکروکنترلر-یوبرد

تصویر 7 – آی سی CP2102 متصل به پورت سریال AVR، پورت سریال STM32 و پورت سریال LPC1768

ترمینال پورت سریال در پروتئوس

ترمینال سریال در نرم افزار پروتئوس با نام Virtual Terminal در بخش Instruments قرار دارد. هنگام اجرای شبیه سازی با استفاده از این ترمینال می توان در محیط آن داده ها را ارسال کرد و داده های دریافتی را مشاهده نمود. در اینجا می توان این ترمینال را شبیه یک ترمینال واقعی در یک کامپیوتر در نظر گرفت. ویژگی های این ترمینال را می توان به موارد زیر خلاصه کرد:

  • امکان تغییر تنظیمات همانند یک ترمینال پورت سریال واقعی در Properties؛
  • امکان کپی کردن متن از محیط آن و همچنین Paste کردن متن در محیط آن؛
  • امکان نمایش داده ها به صورت هگزادسیمال؛
  • امکان تغییر فونت داده ها در محیط آن.

ترمینال سریال پروتئوس را می توان با استفاده از قطعۀ COMPIM به پورت سریال سخت افزاری یا پورت Serial مجازی کامپیوتر متصل کرد. با استفاده از این ویژگی می توان این ترمینال را همانند دیگر ترمینال های نام برده به کار گرفت و به سریال مانیتور در پروتئوس پرداخت. همچنین می توان دستگاه یا ماژول متصل شده به کامپیوتر را به یک المان دارای ارتباط سریال مانند یک میکروکنترلر در پروتئوس متصل کرد. بنابراین ماژولی که به کامپیوتر متصل شده، با آن المان در پروتئوس به تبادل داده می پردازد. برای مثال می توان یک ماژول SIM800 را به کامپیوتر و آن را در پروتئوس به یک میکروکنترلر متصل کرد. کاراکترهایی که در تصویر زیر مشاهده می شود، حاصل تبادل یک ماژول SIM800C به کامپیوتر و ترمینال سریال پروتئوس است. این کار با استفاده از اتصال پایه های RXD و TXD قطعۀ PIMCOM و Virtual Terminal انجام شده است. با دابل کلیک کردن روی PIMCOM می توان تنظیمات Baud Rate و شمارۀ پورت COM را انجام داد. توجه شود که پایۀ RXD این قطعه به RXD و TXD آن نیز به TXD ترمینال وصل می شود.

ترمینال-پورت-سریال-پروتئوس-proteus

تصویر 8 – ترمینال سریال در نرم افزار Proteus

کار با ترمینال پورت سریال Hercules

در نوشتۀ نرم افزار Hercules که لینک آن در بخش «معرفی نرم افزارهای ترمینال پورت سریال» قرار گرفت، این نرم افزار را شرح داده ایم. نرم افزار Hercules یا هرکولس یک ترمینال پورت سریال، ترمینال TCP/IP و UDP/IP است. ابزارهای این نرم افزار رایگان در مجموعه تب های آن قرار گرفته است. تب Serial این نرم افزار یک ترمینال پورت سریال است که چهار بخش دارد. این چهار بخش در تصویر زیر مشخص شده اند.

  • بخش Serial (بخش 1): برای تنظیمات ارتباط سریال است. در این بخش می توان Baud Rate، شمارۀ پورت COM، تعداد بیت های دادۀ انتقالی، Parity، قابلیت Handshake را تنظیم کرد. همچنین با فشردن دکمۀ Open یا Close می توان پورت COM را باز و بسته کرد؛
  • بخش Send (بخش 2): در این بخش می توان داده های ارسالی را تایپ کرد و با دکمۀ Send جلوی آن، آنها را به صورت یکجا فرستاد؛
  • بخش Received/Sent Data (بخش 3): در بخش 3 می توان کاراکترهای دادۀ ارسالی را تایپ کرد. با تایپ کردن هر کاراکتر، عملیات ارسال به صورت خودکار انجام می شود. همچنین در این بخش داده های ارسال و دریافت نمایش داده می شوند.
  • بخش Modem lines (بخش 4): در این بخش می توان وضعیت پایه های CD و RI و DSR و CTS را مشاهده و یا به پایه های DTR و RTS مقدار داد.

ابزار-serial-در-هرکولس

تصویر 9 – محیط تب Serial نرم افزار Hercules

در ادامه با ذکر یک مثال به نحوه کار با ترمینال پورت سریال نرم افزار Hercules می پردازیم.

پیش از شروع تبادل داده

معمولاً هر دستگاه یا ماژولی که قرار است به کامپیوتر متصل شود، نیاز به یک نرم افزار درایور دارد. پیش از شروع کار با ترمینال پورت سریال Hercules، باید درایور سخت افزاری را که به کامپیوتر متصل می شود، نصب کنیم. هر ماژول، آی سی یا المان قابل اتصال به کامپیوتر یک نرم افزار درایور دارد که اغلب می توان در سایت های شرکت سازنده، آن را دانلود و نصب کرد. برای مثال می خواهیم یک ماژول ESP8266 را با مبدل USB به سریال به پورت USB متصل کنیم. نصب درایور این مبدل که در یکی از نوشته های گذشته تشریح شده است، باعث اختصاص یک پورت COM مجازی به این مبدل می شود. شمارۀ این پورت COM را در حالی که ماژول به کامپیوتر متصل است، می توان از پنجرۀ Device Manager در Control Panel به دست آورد. در مثالی که در حال انجام آن هستیم، COM7 به مبدل USB به سریال CP2102 اختصاص داده شده است. می توان در مراحلی که در تصویر زیر آورده شده است، پورت COM را مشاهده کرد و یا آن را تغییر داد.

تغییر-شماره-پورت-سریال-مجازی

تصویر 10 – مشاهده و یا تغییر پورت COM در پنجرۀ Device Manager

اجرای نرم افزار Hercules و تنظیمات لازم

پس از اجرای نرم افزار Hercules، تب Serial را که همان ترمینال پورت سریال این نرم افزار است، باز می کنیم. همان طور که توضیح داده شد، در بخش Serial این تب، تنظیمات ارتباط سریال وجود دارد. این تنظیمات باید مطابق پیکر بندی ماژول یا میکروکنترلری که قصد ارتباط با آن را داریم، انجام شود. در قسمت Name باید پورت COM اختصاص داده شده به دستگاه انتخاب شود. که برای مثال ما COM7 است. در قسمت Baud نیز باید Baud Rate ارتباط سریال تنظیم شود. برای ماژول ESP8266 مورد استفادۀ ما این مقدار برابر 115200 است. پس در Hercules نیز باید 115200 انتخاب شود. Data Size به معنای تعداد بیت دادۀ یک فریم است. در فریم مورد نظر ما 8 بیت داده دارد. Parity نیز بیت توازن است که برای خطایابی مورد استفاده قرار می گیرد. فریم داده در مثال ما فاقد Parity است و none را برای آن انتخاب می کنیم. قابلیت Handshake نیز برای این مثال باید خاموش باشد. قسمت Mode نیز همانطور که در نوشتۀ پیشین Hercules گفته شد، برای استفادۀ دستگاه های شرکت HW Group است. ما باید آن را روی Free قرار دهیم. بنابراین تنظیمات اولیه را مطابق تصویر زیر انجام می دهیم و روی دکمۀ Open کلیک می کنیم تا اتصال برقرار شود. در این هنگام در بخش Received/Sent data جملۀ Serial port COM7 opened ظاهر می شود. اگر خطایی دریافت شود، دلیل آن ممکن است نصب نبودن درایور CP2102 یا عدم برقرای اتصالات الکتریکی باشد. همچنین ممکن است پورت COM مورد نظر توسط نرم افزار دیگری باز شده و یا مبدل USB به سریال آسیب دیده باشد.

تنظیمات-ترمینال-پورت-سریال-hercules

تصویر 11 – تنظیمات Hercules برای برقراری ارتباط سریال

ارسال و دریافت داده توسط ترمینال پورت سریال Hercules

در این مرحله می توانیم در بخش Received/Sent data کاراکترهایی را برای ارسال تایپ کنیم. هر کاراکتر که تایپ می کنیم، بلافاصله ارسال می شود. برای مشاهدۀ کاراکترهای ارسالی باید Local Echo را با کلیک راست کردن در این بخش و زدن تیک آن، فعال کنیم. در این صورت کاراکترهای ارسالی با رنگ صورتی نمایش داده می شوند. در همین بخش کاراکترهای دریافتی نیز با رنگ مشکی نمایش داده می شوند. در تکست باکس های بخش Send می توانیم یک رشته را تایپ کنیم. و سپس با کلیک روی دکمۀ Send مقابل آن، رشتۀ تایپ شده را ارسال کنیم. کاراکترهای رشتۀ تایپ شده در این حالت به سرعت پشت سر هم ارسال خواهند شد. برای ارسال علاوه بر کلیک روی دکمه های Send می توان از کلیدهای F1 و F2 و F3 استفاده کرد.

همانطور که در تصویر زیر مشخص است، ابتدا یک AT به ماژول ESP8266 می فرستیم. و با دستور ATE0، اکوی ماژول را غیر فعال می کنیم. سپس با دستور AT+CWMODE=1، آن را در مد Station قرار می دهیم. در ادامه با دستور AT+CWJAP ماژول را به یک نقطه اتصال وصل می کنیم. در نهایت با دستور AT+CWQAP، ارتباط آن را با نقطه اتصال قطع می کنیم. در این مثال دو دستور اول را در بخش Received/Sent data تایپ کرده ایم. برای این که ماژول ESP8266 به AT Commandها پاسخ دهد، لازم است پس از ارسال آنها، یک Enter نیز فرستاده شود. Enter را می توان در بخش Send به صورت <CR><LF> نوشت. در این صورت با کلیک روی دکمۀ Send مقابل تکست باکس، Enter نیز فرستاده می شود. داده هایی که ما برای ESP8266 فرستاده ایم، به رنگ صورتی هستند و داده هایی که ماژول ESP8266 برای ما فرستاده به رنگ مشکی هستند.

ارسال-دریافت-داده-ترمینال-hercules

تصویر 12 – ارسال و دریافت داده با ترمینال پورت سریال Hercules

فرمت نمایش داده در ترمینال پورت سریال Hercules

در بخش Send مقابل هر تکست باکس تنها یک چک باکس وجود دارد. اگر آن را تیک بزنیم، دادۀ ارسالی باید کد کاراکترهای ASCII در مبنای هگزادسیمال باشد. اگر در بخش Received/Sent data کلیک راست کنیم، در کادر باز شده، دو گزینه مورد توجه است. در گزینۀ Special Chars می توان فرمت نمایش کاراکترهای ویژه مانند CR و LF را تغییر داد. این گزینه به صورت پیش فرض روی Text Mode قرار دارد. اگر از حالت Text Mode خارج شود، گزینۀ Hex Enable که در تصویر زیر به آن اشاره شده، روشن می شود و می توان آن را با تیک زدن فعال کرد. در این صورت کاراکترهای ارسالی و دریافتی در قالب هگزادسیمال نمایش داده می شوند. البته به غیر از داده های ارسالی که در بخش Received/Sent data تایپ می شوند.

همانطور که در تصویر زیر مشاهده می شود، ارسال دستور AT و پاسخ آن در فرمت های مختلف فرستاده می شود. تبادل داده های شمارۀ 1 تا 8، حاصل انتخاب مواردی است که شمارۀ آنها در مستطیل قرار داده شده است. در تبادل شمارۀ 1 تا 4، گزینۀ Hex Enable غیر فعال است. و فرمت کاراکترهای CR و LF بسته به انتخاب آن متفاوت است. در تبادل شمارۀ 5 گزینۀ Hex Enable فعال شده است. بنابراین فرمت پاسخ دریافتی به صورت عدد Hex است. تبادل شمارۀ 6، حاصل ارسال AT موجود در بخش Send است. که هم AT و هم پاسخ OK دریافتی در فرمت Hex هستند. تبادل شمارۀ 7 نیز حاصل ارسال AT موجود در بخش Send است، ولی این بار گزینۀ Hex Enable غیر فعال شده است. تبادل شمارۀ 8 نیز حاصل انتخاب Text Mode برای Special Chars است. در این حالت چه داده را در فرمت کاراکتر ASCII بفرستیم، چه در فرمت Hex (در بخش Send)، در فرمت کاراکتر ASCII نمایش داده می شود.

مدهای-مختلف-نمایش-داده-hercules

تصویر 13 – فرمت های مختلف نمایش داده ها در Hercules

نتایج نرم افزارهای ترمینال پورت سریال و کار با Hercules

  1. ترمینال پورت Serial یا ترمینال سریال نرم افزارهایی برای کنترل و راه اندازی پورت سریال کامپیوتر هستند.
  2. امروزه در اغلب لپ تاپ ها پورت سریال سخت افزاری وجود ندارد و برای ارتباط سریال لازم است از پورت های سریال مجازی به همراه مبدل سخت افزاری به منظور شبیه سازی پورت سریال استفاده شود.
  3. با این که نوع ارتباط USB و اترنت نیز سریال است، ولی کلمۀ «پورت سریال» تنها به سخت افزارهایی با استاندارد RS-232 و RS485 و RS-422 گفته می شود.
  4. پورت Serial مجازی یا پورت COM مجازی عبارت است از نرم افزارها یا درایورهایی که امکان ارسال و دریافت سریال را توسط پورت های USB، اترنت یا … فراهم می کنند.
  5. می توان تصور کرد که یک پورت Serial مجازی مبدلی نرم افزاری است که داده ها را از قالب سریال به داده های قابل تبادل از طریق پورت های دیگر و بالعکس، تبدیل می کند.
  6. تعداد بسیار زیادی نرم افزار پورت سریال (ترمینال) ساخته شده است. در این میان برخی رایگان هستند. برخی امکانات کمتر و برخی امکانات بیشتر دارند. برخی نیز همانند Hercules بخشی از یک نرم افزار دیگر هستند.
  7. برخی نرم افزارهای ترمینال سریال در IDEها هستند. نرم افزار پورت سریال در Atmel Studio، نرم افزار پورت سریال در Arduino و نرم افزار پورت سریال در CodeVisionAVR نمونه ای از این نوع هستند.
  8. در مبحث میکروکنترلرها منظور از پورت سریال میکروکنترلر، واحد داخلی UART یا USART است.
  9. برای ارتباط با پورت سریال کامپیوتر توسط میکروکنترلرها، نیاز است از مبدل های سطح ولتاژ مثل آی سی MAX232 استفاده شود.
  10. از Virtual Terminal پروتئوس هم می توان به عنوان یک ترمینال سریال در محیط شبیه سازی استفاده کرد، هم می توان به عنوان یک نرم افزار پورت سریال (ترمینال) همانند ترمینال های ذکر شده استفاده کرد.
  11. برای کار با نرم افزار Hercules و ارسال و دریافت اطلاعات از پورت سریال باید در تب Serial ابتدا در بخش Serial تنظیمات ارتباط سریال انجام شود.
  12. در Hercules داده های ارسال و دریافت در بخش Received/Sent data به ترتیب به رنگ های صورتی و مشکی نمایش داده می شوند.
  13. در Hercules برای ارسال داده هم می توان در بخش Received/Sent data نوشت و هم از بخش Send استفاده کرد.
  14. در Hercules، در بخش Send می توان با زدن تیک چک باکس Hex، داده های ارسالی را در فرمت هگزا دسیمال وارد کرد.
  15. با انجام تنظیماتی در Hercules می توان فرمت کاراکترهای ویژه مثل CR و LF را به صورت نقطه، مبنای هگزا دسیمال، دسیمال و … نمایش داد.
  16. در صورت انتخاب یکی از فرمت های غیر از Text Mode برای کاراکترهای ویژه، می توان Hex Enable را فعال کرد. در این صورت کاراکترهای ارسال و دریافت در فرمت Hex نمایش داده می شوند. البته به غیر از کاراکترهای ارسالی که در بخش Received/Sent data تایپ می شوند.

رضا بداغی

رضا بداغی

عضو هیئت مدیره یوبرد، طراح و برنامه نویس سیستم های دیجیتال مبتنی بر میکروکنترلر، طراح PCB و مدرس آموزش های میکروکنترلر، طراحی PCB و برنامه نویسی میکروکنترلر

سفارش پروژه میکروکنترلر یوبرد

زیرساخت مطمئن صنعت

جدیدترین تاپیک های STM32

میکروکنترلر ARM

میکروکنترلر ARM چیست؟ پردازندۀ ARM

میکروکنترلر ARM ، میکروکنترلرهایی هستند که پردازندۀ آنها ساخت شرکت ARM است. شرکت ARM سازندۀ میکروکنترلر نیست. سازندۀ پردازنده (CPU) است. امروزه به میکروکنترلرهایی که پردازندۀ آنها طراحی شدۀ شرکت ARM باشد، میکروکنترلر ARM گفته می شود.

راه-اندازی-dac-stm32

راه اندازی DAC در STM32

راه اندازی DAC در STM32، ویژگی های DAC در میکروکنترلرهای STM32F1، بلوک دیاگرام DAC در STM32، اتصالات راه اندازی DAC در میکروکنترلر STM32F107VC، نمونه کد رجیستری راه اندازی واحد DAC در میکروکنترلرهای STM32F1، ساخت موج سینوسی با STM32، راه اندازی مبدل دیجیتال به آنالوگ STM32 با توابع HAL

راه-اندازی-usart-stm32

راه اندازی UART در STM32، رجیستری و HAL

راه اندازی UART در STM32، اتصالات و نرم افزار مورد نیاز، نمونه کد USART در STM32 به صورت رجیستری، نمونه کد رجیستری USART با وقفۀ دریافت، نمونه کد HAL برای راه اندازی USART در STM32، نمونه کد HAL با وقفۀ دریافت، نحوه محاسبه Baud rate در USART میکروکنترلرهای STM32F1

برنامه-نویسی-میکروکنترلر-ویژوال-استودیو

برنامه نویسی میکروکنترلرها با ویژوال استودیو

نصب VisualGDB روی ویژوال استودیو، ساخت پروژه برای برنامه نویسی میکروکنترلرها با ویژوال استودیو، ساخت پروژه برای STM32 در ویژوال استودیو، کدنویسی STM32 در ویژوال استودیو، ساخت پروژه برای AVR در ویژوال استودیو، ساخت پروژه برای LPC در ویژوال استودیو، ساخت پروژۀ آردوینو در ویژوال استودیو

24 دیدگاه ها

  1. سلام بنده میخواهم با برنامه هرکولز به AT COMMAND esp8266 بدهم

    درایور پورت سریال به USP شناسایی شده است و مشکلی ندارد

    اما در برنامه AT COMMAND ها ثبت نمی شود و جوابی دریافت نمی شود کسی می داند مشکل از کجاس ؟

    پاسخ
    • سلام وقت بخیر.
      در وحله اول خروجی درایور پورت سریال (پایه های TX و RX) را به هم وصل کنید. باید هرآنچه ارسال می کنید را دریافت کنید. برای اینکه هم دیتای ارسالی و هم دیتای دریافتی را ببینید، در نرم افزار کلیک راست کنید و تیک Local Echo را بزنید. اگر هرآنچه ارسال کردید را دریافت می کنید. درنیتجه مشکل از سمت ارتباط با ESP است. اما اگر آنچه ارسال می کنید را دریافت نکردید یعنی یا ماژول خراب است یا درایور صحیح نصب نشده.
      تشکر از همراهی شما.

      پاسخ

یک دیدگاه بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دیگر آموزش های یوبرد

آموزش TFT LCD با TouchGFX و STM32 یوبرد

گرافیک کاربرپسند با میکروکنترلر ST

آموزش FreeRTOS یوبرد

زمان واقعی در میکروکنترلر و پردازنده های کوچک با FreeRTOS

آموزش طراحی PCB و نویز یوبرد

تجسم دنیای الکترونیک

آموزش زبان C و MISRA-C یوبرد

گام نخست دنیای میکروکنترلر

آموزش لحیم کاری و IPC-A-610 یوبرد

ساخت دنیای الکترونیک

آموزش آردوینو یوبرد

جادۀ آسفالت میکروکنترلر

آموزش ماژول های SIM800 یوبرد

تلفن همراه صنعت

آموزش زبان ++C و ++MISRA-C یوبرد

لمس شی گرایی در میکروکنترلرها

آموزش میکروکنترلرهای AVR یوبرد

شاهکار 8 بیتی Atmel

آموزش میکروکنترلرهای LPC یوبرد

یادگار فیلیپس

آموزش های شاخص

دانلود

لطفا برای دریافت لینک دانلود اطلاعات خواسته شده را وارد نمایید
ضبط پیام صوتی

زمان هر پیام صوتی 4 دقیقه است