X
تبلیغات
رایتل

طراح

تجربه های من

ESP8266(95/5/14):
اتصال مبدل یو اس بی به سریال به ماژول ESP8266 ، با اینکه ولتاژ ماژول روی ۳.۳ ولت بود اما ولتاژ خروجی پایه Txd مبدل ۳.۶ ولت بود و ماژول esp با منبع تغذیه جداگانه با ولتاژ ۳.۳ ولت تغذیه شده بود، این اختلاف ولتاژ باعث میشد تا دیتا به صورت صحیح به ESP8266 نرسد  و ماژول هیچ جوابی به دستورات نده، برای رفع مشکل از یک تقسیم مقاومتی روی پایه txd مبدل استفاده شد.

--------------------------------------------------------------------------------------------------------------------------

در صورتی که از اسیلاتور داخلی میکروهای avr استفاده میکنید. حتما رجیستر OSCCAL اسیلاتور را ابتدای شروع برنامه با مقدار صحیح بارگزاری کنید تا خطای فرکانس حداقل باشد.
برای این کار با استفاده از پروگرمر MKII و نرم افزار اتمل استودیو میتوانید مقدار صحیح کالیبراسیون اسیلاتور برای فرکانس مورد نظر را از ناحیه signature row بخوانید و در آدرسی دلخواه از اییپرام ذخیره کنید سپس ابتدای برنامه مقدار را از اییپرام داخل رجیستر کالیبراسیون اسیلاتور بارگزاری نمایید.

مانند:

OSCCAL = eeprom_read_byte(0);


یوآرت با اسیلاتور داخلی 8 مگاهرتز درست ارسال نمیکرد. در حالی که دریافت صحیح بود. بعد از کالیبراسیون اسیلاتور مشکل ارسال حل شد.

95/07/01

-----------------------------------------------------------------------------------------------------------------------

EM18

RFID READER

در مداری که از کارت خوان RFID استفاده شده بود (EM18 & RF01D) ؛ تغدیه با رگولاتور LM2576 اورجینال تامین میشد.

در حالتی که سلف رگولاتور از نوع بشکه ای بوده کارت خوان RFID اصلا کارت را تشخیص نمیداد و یا در فاصله بسیار کم خواندن انجام میشد؛ بعد از تعویض سلف و استفاده از نوع تیروئیدی مشکل نخواندن کارت حل شد و فاصله خواندن کارت نیز به طور چشم گیری افزایش پیدا کرد.
-----------------------------------------------------------------------------------------------------------------------

#Inverted_I/O

#xmega

مطلبی که براتون میگم شاید کمی گیج کننده باشه. در استفاده از یکی از کنترل کننده های پیامکی ما، در راه اندازی موتور چاه عمیق، دستگاه توسط نصاب به گونه ای نصب شد که از کنتاکت NC استفاده شده بود. به عبارتی زمانی که رله دستگاه خاموش بود چاه روشن میشد و زمانی که رله دستگاه روشن میشد، چاه خاموش میشد. علت این کار هم این بود که اگر دستگاه به هر دلیلی از کار افتاد؛ امکان روشن کردن چاه وجود داشته باشد. اما مشکلی که پیش می آمد این بود که مالک چاه برای روشن کردن چاه باید پیامک خاموش کردن را به دستگاه ارسال میکرد و دستگاه هم اعلام میکرد که چاه خاموش شد؛ در حالی که چاه روشن میشد؛ و برای روشن کردن چاه باید پیامک خاموش کردن را به چاه ارسال میکرد در حالی که چاه روشن میشد. همینقدر که شما الان گیج شدید مالک چاه هم اشتباه میکرد که الان چاه خاموش هست یا روشن. پردازنده کنترل کننده پیامکی ایکسمگا بود و برای رفع این حالت و در عین حال استفاده از کنتاکت NC رله دستگاه؛ از قابلیت Inverted I/O این میکرو استفاده شد. به عبارتی حالت معکوس روی پین مورد نظرِ فرمان به رله فعال شد. در این حالت با دستور روشن کردن در حقیقت رله دستگاه خاموش میشد ولی چاه روشن و پیام روشن شدن برای مالک چاه ارسال میشد و بلعکس. 

در نهایت امکانی جدیدی را به دستگاه اضافه کردیم که بتوان منطق خواندن/نوشتن تمام ورودی و خروجی ها را از طریق پیامک تنظیم کرد. 

یکی از مزیتهای Inverted I/O این هست که از ایجاد کد اضافه به منظور ایجاد منطق مثبت و منطق منفی؛ جهت خواندن/نوشتن در یک پین جلوگیری میکند و برنامه هم ساده و روان تر خواهد شد.

96/06/23

-----------------------------------------------------------------------------------------------------------------------

نظرات (0)
نام :
ایمیل : [پنهان میماند]
وب/وبلاگ :
برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)