تبليغاتX
الکترونیک و روباتیک
با استفاده از مدار زیر متونید سیکنال DTMF رو دیکد و توسط sevsnsegment مشاهده کنید!

ورودی این مدار رو بعد از اتصال تغذیه به مثبت خط تلفن و زمینش رو به زمین تلفن متصل کنید حالا تلفن خود را در حالت تن قرار داده یک کلید را فشار دهید.عدد مربوطه را روی sevsnsegment خواهید دید.

برای اطلاعات بیشتر از نمونه ساخته شده به آدرس زیر مراجعه کنید.

موفق باشید.

http://ir-e.blogfa.com/post-3.aspx

+ نوشته شده توسط افشین در دوشنبه بیست و چهارم مهر 1385 و ساعت 11:39 |

فعلا همين قدر عرض كنم كه اين دستگاه با سيستم تـــــن كار ميكند. قلبش هم آي سي ۸۸۷۰ است كه در واقع يه DTMF Decoder است. DTMF همان سيستم شماره گيري تــــــــــن است و داراي ۵ خروجي به اين ترتيب است: خروجيهاي ۱ تا ۴ براي نمايش كد BCD معادل عدد فشرده شده و خروجی پنجم برای اعلام دریافت کد جدید( چهار خروجی اول دارای latch بوده تا رسیدن کد بعدی در خروجی باقی میمانند و خروجی پنجم در هنگام refresh شدن کد برای یک لحظه High میشود). واحد اصلي كنترل و پردازش يه ميكرو PIC16F85 است.دستگاه در نهایت میتونه پنج کانال خروجی مجزا همزمان به صورت خاموش و روشن یا ۳۲ کانال مجزا غیر همزمان به صورت خاموش یا روشن تولید کند.

 سیستم کلی یه این صورته که اول باید تعداد زنگهای تلفن شمرده شود.بعد از خوردن تعداد مورد نظر زنگ میکرو یه رله رو فعال میکنه تا یه مقاومت کوچک رو با خط سری کنه تا ولتاژ حدود ۵۰ ولت خط رو تا حدود ۱۲ ولت پایین بکشه بعد هم شروع به خوندن دکمه های فشرده شده میکنه.به این ترتیب که اول منتظر علامت # و بعد password میشه اگه درست بود منتظر فرمان های کنترلی میشه و رد غیر این صورت دوباره باید password وارد بشه اگه تا سه بار این کار اشتباه انجام بشه تماس قطع خواهد شد.

در تمام این مراحل با هر کاری که کاربر انجام میدهد دستگاه یه آلارم صوتی خاص تولید میکنه و درست یا غلط بودن فرمان و پذیرش یا رد خواسته وی را اطلاع میدهد.

توجه : جزییات کامل پروژه همراه با فلوچارت ها+برنامه+بلوک دیاگرام+شماتیک پس از پایان و ارائه پروژه به صورت pdf برای دانلود قرار خواهد گرفت.عجله نکنید!

 

+ نوشته شده توسط افشین در دوشنبه بیست و چهارم مهر 1385 و ساعت 11:22 |

این مطلب از http://www.ml.blogfa.com/ گرفته شده وهم خیلی جالبه و هم خیلی خلاصه. لطفا برای مطالعه بقیه مطلب بهhttp://ml.blogfa.com/post-114.aspx سری بزنید.

 

زندگینامه دکتر حسابی

_ راه اندازی اولین آنتن فرستنده در کشور  / _ راه اندازی اولین رآکتور اتمی سازمان انرژی اتمی کشور_ پایه گذاری دانشکده فنی دانشگاه تهران /  پایه گذاری موسسه ژئوفیزیک دانشگاه تهران  / _ پایه گذاری مرکز تحقیقات اتمی دانشگاه تهران  / _ پایه گذاری اولین رصدخانه نوین در ایران  / پایه گذاری مرکز مدرن تعقیب ماهواره ها در شیراز و ....

 

ادامه مطلب

+ نوشته شده توسط افشین در شنبه بیست و دوم مهر 1385 و ساعت 7:59 |
ساده ترين معماري ميكرو كنترلر، متشكل از يك ريز پردازنده، حافظه و درگاه ورودي/خروجي است. ريز پردازنده نيز متشكل از واحد پردازش مركز (CPU) و واحد كنترل (CU)است.

CPU درواقع مغز يك ريز پردازنده است و محلي است كه در آنجا تمام عمليات رياضي و منطقي ،انجام مي شود. واحد كنترل ، عمليات داخلي ريز پردازنده را كنترل مي كند و سيگنال هاي كنترلي را به ساير بخشهاي ريز پردازنده ارسال مي كند تا دستورالعمل ها ي مورد نظر انجام شوند.

حافظه بخش خيلي مهم از يك سيستم ميكرو كامپيوتري است. ما مي توانيم بر اساس به كارگيري حافظه، آن را به دو گروه دسته بندي كنيم: حافظه برنامه و حافظه داده . حافظه برنامه ، تمام كد برنامه را ذخيره مي كند. اين حافظه معمولاً از نوع حافظه فقط خواندني (ROM) مي باشد. انواع ديگري از حافظه ها نظير EPROM و حافظه هاي فلش EEPROM براي كاربردهايي كه حجم توليد پاييني دارند و همچنين هنگام پياده سازي برنامه به كار مي روند . حافظه داده از نوع حافظه خواندن / نوشتن (RAM) مي باشد . در كاربردهاي پيچيده كه به حجم بالايي از حافظه RAM نياز داريم ، امكان اضافه كردن تراشه هاي حافظه بيروني به اغلب ميكرو كنترلر ها وجود دارد.

درگاهها ورودي / خروجي (I/O )به سيگنال هاي ديجيتال بيروني امكان مي دهند كه با ميكرو كنترلر ارتباط پيدا كند. درگاههاي I/O معمولاً به صورت گروههاي 8 بيتي دسته بندي مي شوند و به هر گروه نيز نام خاصي اطلاق مي شود. به عنوان مثال ، ميكروكنترلر 8051 داراي 4 درگاه ورودي / خروجي 8 بيت مي باشد كه P3, P2, P1, P0 ناميده مي شوند. در تعدادي از ميكرو كنترلر ها ، جهت خطوط درگاه I/O قابل برنامه ريزي مي باشد. لذا بيت هاي مختلف يك درگاه را مي توان به صورت ورودي يا خروجي برنامه ريزي نمود. در برخي ديگر از ميكروكنترلرها (از جمله ميكروكنترلرهاي 8051) درگاههاي I/O به صورت دو طرفه مي باشند. هر خط از درگاه I/O اين گونه ميكرو كنترلرها را مي توان به صورت ورودي و يا خروجي مورد استفاده قرار داد . معمولاً ، اين گونه خطوط خروجي ، به همراه مقاومتهاي بالا كش بيروني به كار برده مي شوند.





میکرو کنترلر AVR به منظور اجرای دستورالعملهای قدرتمند در یک سیکل کلاک(ساعت) به اندازه کافی سریع است و می تواند برای شما آزادی عملی را که احتیاج دارید به منظور بهینه سازی توان مصرفی فراهم کند.

میکروکنترلر AVR بر مبنای معماری RISC(کاهش مجموعه ی دستورالعملهای کامپیوتر) پایه گذاری شده و مجموعه ای از دستورالعملها را که با 32 ثبات کار میکنند ترکیب می کند.

به کارگرفتن حافظه از نوع Flash که AVR ها به طور یکسان از آن بهره می برند از جمله مزایای آنها است.

یک میکرو AVR می تواند با استفاده از یک منبع تغذیه 2.7 تا 5.5 ولتی از طریق شش پین ساده در عرض چند ثانیه برنامه ریزی شود یا Program شود.

میکروهای AVR در هرجا که باشند با 1.8 ولت تا 5.5 ولت تغذیه می شوند البته با انواع توان پایین (Low Power)که موجودند.

راه حلهایی که AVR پیش پای شما می گذارد، برای یافتن نیازهای شما مناسب است:

با داشتن تنوعی باور نکردنی و اختیارات فراوان در کارایی محصولات AVR، آنها به عنوان محصولاتی که همیشه در رقابت ها پیروز هستند شناخته شدند.در همه محصولات AVR مجموعه ی دستورالعملها و معماری یکسان هستند بنابراین زمانی که حجم کدهای دستورالعمل شما که قرار است در میکرو دانلود شود به دلایلی افزایش یابد یعنی بیشتر از گنجایش میکرویی که شما در نظر گرفته اید شود می توانید از همان کدها استفاده کنید و در عوض آن را در یک میکروی با گنجایش بالاتر دانلود کنید.



توان مصرفی پایین:

* توان مصرفی پایین آنها برای استفاده بهینه از باتری و همچنین کاربرد میکرو در وسایل سیار و سفری طراحی شده که میکروهای جدید AVR با توان مصرفی کم از شش روش اضافی در مقدار توان مصرفی ، برای انجام عملیات بهره می برند.
* این میکروها تا مقدار 1.8 ولت قابل تغذیه هستند که این امر باعث طولانی تر شدن عمر باتری می شود.
* در میکروهای با توان پایین ، عملیات شبیه حالت Standby است یعنی میکرو می تواند تمام اعمال داخلی و جنبی را متوقف کند و کریستال خارجی را به همان وضعیت شش کلاک در هر چرخه رها کند!

نکات کلیدی و سودمند حافظه ی فلش خود برنامه ریز:

* قابلیت دوباره برنامه ریزی کردن بدون احتیاج به اجزای خارجی
* 128 بایت کوچک که به صورت فلش سکتور بندی شده اند
* داشتن مقدار متغیر در سایز بلوکه ی بوت (Boot Block)
* خواندن به هنگام نوشتن
* بسیار آسان برای استفاده
* کاهش یافتن زمان برنامه ریزی
* کنترل کردن برنامه ریزی به صورت سخت افزاری

راههای مختلف برای عمل برنامه ریزی:

موازی یا Parallel :

* یکی از سریعترین روشهای برنامه ریزی
* سازگار با برنامه نویس های(programmers) اصلی



خود برنامه ریزی توسط هر اتصال فیزیکی:

* برنامه ریزی توسط هر نوع واسطه ای از قبیل TWI و SPI و غیره
* دارا بودن امنیت صد درصد در بروزرسانی و کدکردن



ISP:

* واسطه سه سیمی محلی برای بروزرسانی سریع
* آسان و موثر در استفاده



واسطه JTAG :

* واسطه ای که تسلیم قانون IEEE 1149.1 است و می تواند به صورت NVM برنامه ریزی کند یعنی هنگام قطع جریان برق داده ها از بین نروند.استفاده از فیوزها و بیتهای قفل.
* بیشتر برای دیباگ کردن آنچیپ و به منظور تست استفاده می شود


مقايسه avr با 8051
مقایسه ما با تمام میکروهای 8 بیتی هست یعنی در مجموع میشه گفت AVR یه رقیب قدرتمند برای بقیه میکروهای قوی است و یه انقلاب بزرگ هم به شمار میره. هنوز هیچ میکرویی به سرعت بالای AVR در محاسبات دست پیدانکرده .در ضمن AVR قادره که محاسبات 16 بیتی رو هم انجام بده. شهار ATMEL هم اینکه شما پول یه میکرو 8 بیتی رو میدید ولی میتونید از قایلیتهای یک میکرو 16 بیتی استفاده کنید.
AVR از معماری RISC با تعداد دستورالعمل بالا بهره میبره که دربین میکروها کم نظیر هست. اکثر دستورالعمل های آن باوجود زیاد بودن تعداد دستورالعملها در یک سیکل انجام میشه.
این میکرو از مدهای کاهش توان به خوبی بهره برده و تایید کننده آن زیاد بودن مدهای کاهش توان آن و استفاده از تقسیم کلاک به صورت نرم افزاری است که در کمتر میکرویی دیده میشه.
AVR حتی برعکس میکروهای دیگه هیچ تقسیم کلاکی انجام نمیده(مثلا 8051 کلاک رو بر 12 و PIC که یه میکرو قدرتمند هست کلاک رو بر 4 تقسیم میکنه). این امر که AVR کلاک رو تقسیم نمیکنه موجب کاهش مصرف انژی و افزایش MIPS شده.

تکنولوژی بکار رفته در AVR موجب شده که حتی میتوان از آن در محیط های صنعتی و پر نویز براحتی از آن استفاده کرد(به گفته خود ATMEL والا هنوز خودم یه تست دقیق انجام ندادم ولی اون رو با یه فیبر یه رو و با یه کابل LCD تقریبا 20 سانتی و یا استفاده از باتری ماشین در کنار شمع پیکان غیر انژکتوری تست کردم ولی فقط در فاصله تقریبا 5-6 سانتی از اون صفحه LCD قاتی میکرد ولی نمیدونم میکرو هم ریست میشد یا نه .در ضمن قسمت تغذیه فقط از یک 7805 تشکیل شده بود. و این آزمایش هم برای خودم و هم برای چند تا از دوستانم که کارهای صنعتی انجام میدادن شگفت آور بود). اما به دلیل اینکه هنوز هیچ کسی اون رو تابه حال در محیط صنعتی تست نکرده و به دلیل اطمینان بالای PIC هیچ کسی دوست نداره اعتبار خودش رو به خطر بندازه.
یه جا یه مهندسه میگفت توی یه محط صنعتی که حتی کامپیوتر ریست میکرده PIC به خوبی کار خودشو انجام میداده!!!!!!!!!!

در ضمن AVR مجهز به آخرین امکانات مثل تایمر واچ داگ و برون اوت دیتکتور و مبدل های ADC و PWM است.
یکی از مهمترین بخشی که کمتر در هر میکرویی دیده میشه مقایسه کننده آنالوگ با گین 1 و 10 و 200 و .. است که بسته به میکرو فرق میکنه.
این مقایسه کننده میتونه تو ورودی مبدل ADC قرار بگیره . این بخش برای بعضی طراحان خیلی مهمه و اونا رو مجذوب خودش کرده.


خانواده میکروکنترلرهای AVR شامل طیف گسترده ای از آی سی ها است که از 8 پایه شروع و به 64 پایه ختم می شود. اما در بین این طیف گسترده تعدادی استفاده عمومی تری دارند مانند ATMEGA32 . که در تمام مثالهای آورده شده از این آی سی استفاده شده است .

+ نوشته شده توسط افشین در چهارشنبه نوزدهم مهر 1385 و ساعت 8:31 |

 اين مطلب رو عينا از وبلاگ دانشجوي مهندسي برق نقل ميكنم:

 

http://www.ml.blogfa.com/

 

 

 

خانواده میکروکنترلرهای AVR شامل طیف گسترده ای از آی سی ها است که از 8 پایه شروع و به 64 پایه ختم می شود. اما در بین این طیف گسترده تعدادی استفاده عمومی تری دارند مانند ATMEGA32 . که در تمام مثالهای آورده شده از این آی سی استفاده شده است .

مشخصات سخت افزاری
ATMEGA32 :

شکل ظاهری و پایه ها:

ATMEGA32 در سه نوع بسته بندی PDIP با 40 پایه و TQFP با 44پایه و MLF با 44 پایه ساخته میشود که در بازار ایران بیشتر نوع PDIP موجود میباشد .

ATMRGA32 دارای چهار پورت 8بیتی ( 1 بایتی ) دارد که علاوه بر اینکه بعنوان یک پورت معمولی میتوانند باشند کارهای دیگری نیز انجام میدهند . بطور مثال PORTA میتواند بعنوان ورودی ADC (تبدیل ولتاژ آنالوگ به کد دیجیتال ) استفاده شود که این خاصیت های مختلف پورت در برنامه ای که نوشته میشود تعیین خواهد شد .
ولتاژ مصرفی این آی سی از 4.5
V تا 5.5V میتواند باشد .
فرکانس کار هم تا 16
MHz میتواند انتخاب شود که تا 8MHz نیازی به کریستال خارجی نیست و در داخل خود آی سی میتواند تامین شود . فرکانس کار از جمله مواردی است که باید در برنامه تعیین شود . لازم به ذکر است که این فرکانس بدون هیچ تقسیمی به CPU داده میشود . بنابراین این خانواده از میکروکنترلرها سرعت بیشتری نسبت خانواده های دیگر دارند .
پایه ی شماره 9 نیز ریست سخت افزاری میباشد و برای عملکرد عادی آی سی نباید به جایی وصل شود و برای ریست کردن نیز باید به زمین وصل میشود .
پایه های 12 , 13 نیز برای استفاده از کریستال خارجی تعبیه شده است .


ساختار داخلی
ATMGA32 :
برنامه ای که برای میکروکنترلر در کامپیوتر نوشته میشود وقتی که برای استفاده در آی سی ریخته میشود ( توسط پروگرامر مخصوص آن خانواده ) در مکانی از آن آی سی ذخیره خواهد شد بنام
ROM . حال در ATMEGA32 مقدار این حافظه به 32KB ( 32 کیلوبایت ) میرسد .
در این آی سی مکانی برای ذخیره موقت اطلاعات یا همان
RAM هم وجود دارد که مقدارش 2KB است .
در
RAM اطلاعات فقط تا زمانی که انرژی الکتریکی موجود باشد خواهد ماند و با قطع باتری اطلاعات از دست خواهند رفت . به همین منظور در ATMEGA32 مکانی برای ذخیره اطلاعات وجود دارد که با قطع انرژی از دست نخواهند رفت . به این نوع حافظه ها EEPROM گفته میشود که در این آی سی مقدارش 1KB است و تا 100,000 بار میتواند پر و خالی شود .

نرم افزار
نرم افزار مورد نیاز برای برنامه نویسی :
حال میخواهیم طرز نوشتن برنامه برای میکروکنترلرهای خانواده ی
AVR را شروع کنیم . پس برای اینکار نیاز به یک نرم افزار داریم که بتوانیم در آن برنامه ی خود را بنویسیم . یکی از نرم افزارهای قدرتمند برای انجام دادن اینکار نرم افزاریسیت بنام Bascom AVR . در این نرم افزار همانطور که از نامش معلوم است برنامه باید بزبان Basic که زبانی با سطح بالا (HLL) است نوشته شود . همچنین این نرم افزار دارای شبیه ساز داخلی برای تست کردن برنامه نوشته شده است که یکی از ویژگیهای این نرم افزار میباشد .


تحلیل برنامه

حال به توضیح تک به تک قسمتها میپردازیم :

۱:در قسمت معرفی آی سی از کلمه کلیدی $Regfile برای معرفی استفاده شده است . این دستور به این صورت است که باید بعد ازآن کلمه معرف آی سی مورد استفاده را در جلوی آن وارد کنیم . البته برای هر آی سی کلمه ی مخصوصی وجود دارد که برای ATMEGA32 باید کلمه ی M32def.dat را تایپ کرد . البته باید توجه داشت که این کلمه باید داخل یک جفت کوتیشن ( گ + Shift ) قرار گیرد :
$
Regfile = “M32def.dat

۲: در قسمت بعدی که تعیین فرکانس کاری است کلمه کلیدی $Crystal باید نوشته شود و آنرا باید مساوی با فرکانس کار بر حسب هرتز قرار داد :
$
Crystal = 1000000

۳: حال به بخش معرفی سخت افزار رسیدیم . در این برنامه چون پورت B باید بتواند جریان بیرون دهد و سخت افزار خارجی ای که همان LED است را روشن کند بعنوان خروجی تعریف میشود . همیشه برای معرفی سخت افزار از کلمه کلیدی Config اسفاده میشود . پس برای خروجی کردن پورت B مینویسیم :
Config Portb = output

۴: چون در این برنامه نیازی به تعریف متغیری نبود به بخش برنامه اصلی میرویم و در این قسمت عددی را به پورت B خواهیم فرستاد تا طبق آن LED ها روشن شوند . البته ذکر این نکته لازم است که اگر بخواهیم عددی را در مبنای دودویی بنویسیم ابتدا باید &B را نوشته و بعد ععد مورد نظر را تایپ کنیم و همینطور برای نوشتن در مبنای هگز که &H تایپ میشود و اگر هیچکدام از کلمات ذکر شده را ننویسیم عدد در مبنای دسیمال محسوب میشود .

۵: در آخر برنامه نیز از کلمه کلیدی END برای مشخص نمودن پایان برنامه استفاده شده است .

LCD :
در کل دو نوع
LCD وجود دارد . یکی از آنها را LCD کارکتری گویند که فقط قابلیت نمایش حروف و اعداد و کارکترهایی همچون ؟ و ! و غیره را دارد و نوع دیگر LCD گرافیکی است که قابلیتهای LCD گرافیکی بعلاوه ی نمایش تصویر در آن جمع شده اند . هدف ما در اینجا کار با LCD کارکتری خواهد بود .

معرفی
LCD کارکتری :
LCD های کارکتری خود به چند نوع دیگر از لحاظ اندازه تقسیم بندی میشوند . که از LCD هایی با 1 سطر و 1 ستون آغاز میشوند تا اندازهایی مثل 4 سطر و 40 ستون که البته تمام آنها از 16پایه تشکیل شده اند.


برای راه اندازی
LCD توسط AVR نیازی به دانستن جزئیات طرز کار LCD نیست . برای کار با LCD علاوه بر پایه های تغذیه و CONTRAST ( تنظیم روشنایی ) که باید مانند شکل مداری پایین بایاس شوند نیاز به 6 پایه ی دیگر است که عبارتند از پایه های :
RS , E , DB4 , DB5 , DB6 , DB7 .

تحلیل برنامه :

۱:برای تعیین نوع LCD از کلمات کلیدی Config و بعد از آن Lcd استفاده شده و آنها را مساوی نوع LCD مورد استفاده قرار میدهیم که در اینجا نوع مورد استفاده دارای 2 سطر و 16 ستون میباشد. پس بصورت زیر خواهیم نوشت :
Config Lcd = 16*2

۲: در مرحله ی بعد ترتیب وصل کردن پایه ها را معرفی خواهیم کرد و برای اینکار پایه هایی از LCD را که برای راه اندازی آن استفاده میشود و قبلا نیز گفته شده بود را مساوی پایه هایی از میکروکنترلر قرار میدهیم که میخواهیم به آنها وصل شود و البته این نوع راه اندازی توسط AVR را که تنها با شش پایه صورت میگیرد را نوع راه اندازی PIN میگویند . پس طبق سخت افزار نشان داده شده بصورت زیر خواهیم نوشت :
Config Lcdpin = pin , Rs = porta.0 , e = porta.1 , db4 = porta.2 , db5 = porta.3 , db6 = porta.4 , db7 = porta.5
( به علامت , بین بخشها دقت کنید . )

۳: بعد از انجام کارهای بالا که جزو بخش معرفی سخت افزار محسوب میشوند به سراغ برنامه اصلی میرویم که کار آن نمایش متن روی LCD است و برای انجام اینکار از کلمه کلیدی LCD و در جلوی آن متنی که باید نمایش داده شود استفاده میکنیم و باید توجه داشت که متن را باید داخل کوتیشن قرار داد .

۴: در انتهای برنامه نیز END را مینویسیم .

نحوه ی کامپایل برنامه و پروگرام کردن
IC

کامپایل برنامه نوشته شده :
بعد از نوشتن برنامه باید آنرا کامپایل کرد تا اگر اشتباهی در تایپ کلمه ای وجود داشته باشد برای اصلاح آن اخطار داده شود و فایلهای از جمله فایل هگز که برای پروگرام کردن نیاز است ابجاد گردند . برای کامپایل برنامه همانطور که در تصویر بخش اول نمایش داده شده است باید از دکمه ی
F7 استفاده کرد . با انجام اینکار برنامه ی ما کامپایل خواهد شد .
پروگرام کردن
IC :
بعد از کامپایل برنامه نوبت به آن رسیده است که با نحوه ریختن برنامه داخل
IC یا باصطلاح پروگرام کردن آشنا شوید . پس نیاز است که یک دستگاه پروگرامر مختص به خانواده AVR داشته باشید . برای پروگرام کردن میکروکنترلرهای خانواده AVR انواع مختلفی پروگرامر که از استانداردهای خاصی پیروی میکنند وجود دارد که مصرف عمومی تر را پروگرامهای نوع STK200/300 دارند که البته دارای مدار بسیار ساده ایست و برای پروگرام کردن از کابل LPT ( پرینتر ) استفاده میکند و در بازار هم بیشتر این نوع پروگرامر یافت میشود .
هنگامیکه میخواهیم کار پروگرام کردن را شروع کنیم ابتدا باید پروگرامر را به کامپوتر وصل نموده و بعد از توسط محیطی از نرم افزار
Bascom AVR نوع آنرا برای کامپیوتر معرفی کنیم ( اینکار فقط یکبار انجام شود کافیست ) . برای شناساندن پروگرامر به کامپیوتر از منوی Option گزینه Programmer را انتخاب میکنیم :

بعد از انتخاب این گزینه کادر نمایش داده شده که در قسمت نمایش داده شده توسط خط قرمز نوع پروگرامر را انتخاب میکنیم :
بعد از انجام تنظیمات بالا میتوان آی سی را پروگرام کرد . به این صورت که
گزینه
Program را انتخا ب میکنیم . بعد از انتخاب این گزینه کادر زیر باز خواهد شد که با کلیک روی آیکون مربوط آی سی پروگرام میشود .
همچنین دستگاههایی برای تست برنامه نوشته شده وجود دارند که روی آنها تمام وسایل مورد نیاز مانند
LCD و Keypad و ... قرار دارد و کاربرمیتواند با سیم بندی ای که براحتی توسط کابلهای مخصوصی انجام میدهد پورتهای آی سی را به سخت افزارهای جانبی اتصال دهد و برنامه خود را مورد آزمایش قرار دهد . به این دستگاهها Emulator میگویند.

 

+ نوشته شده توسط افشین در یکشنبه شانزدهم مهر 1385 و ساعت 7:1 |

 

این مطلب به نظرم جالب اومد برای همین از http://www.zeus.blogfa.com/  عینا نقل می کنم. با تشکر از ام هکر.

 

آيا شيطان وجود دارد؟ آيا خدا شيطان را خلق کرد؟
استاد دانشگاه با اين سوال ها شاگردانش را به چالش ذهني کشاند.
آيا خدا هر چيزي که وجود دارد را خلق کرد؟
شاگردي با قاطعيت پاسخ داد:"بله او خلق کرد"
استاد پرسيد: "آيا خدا همه چيز را خلق کرد؟"
شاگرد پاسخ داد: "بله, آقا"
استاد گفت: "اگر خدا همه چيز را خلق کرد, پس او شيطان را نيز خلق کرد. چون شيطان نيز وجود دارد و مطابق قانون که کردار ما نمايانگر ماست , خدا نيز شيطان است"
شاگرد آرام نشست و پاسخي نداد. استاد با رضايت از خودش خيال کرد بار ديگر توانست ثابت کند که عقيده به مذهب افسانه و خرافه اي بيش نيست.
شاگرد ديگري دستش را بلند کرد و گفت: "استاد ميتوانم از شما سوالي بپرسم؟"
استاد پاسخ داد: "البته"
شاگرد ايستاد و پرسيد: "استاد, سرما وجود دارد؟"
استاد پاسخ داد: "اين چه سوالي است البته که وجود دارد. آيا تا کنون حسش نکرده اي؟ "
شاگردان به سوال مرد جوان خنديدند.
مرد جوان گفت: "در واقع آقا, سرما وجود ندارد. مطابق قانون فيزيک چيزي که ما از آن به سرما ياد مي کنيم در حقيقت نبودن
گرماست. هر موجود يا شي را ميتوان مطالعه و آزمايش کرد وقتيکه انرژي داشته باشد يا آنرا انتقال دهد. و گرما چيزي است که باعث ميشود بدن يا هر شي انرژي را انتقال دهد يا آنرا دارا باشد. صفر مطلق (460-
F) نبود کامل گرماست. تمام مواد در اين درجه بدون حيات و بازده ميشوند. سرما وجود ندارد. اين کلمه را بشر براي اينکه از نبودن گرما توصيفي داشته باشد خلق کرد."
شاگرد ادامه داد: "استاد تاريکي وجود دارد؟"
استاد پاسخ داد: "البته که وجود دارد"
شاگرد گفت: "دوباره اشتباه کرديد آقا! تاريک هم وجود ندارد. تاريکي در حقيقت نبودن نور است. نور چيزي است که ميتوان آنرا مطالعه و آزمايش کرد. اما تاريکي را نميتوان. در واقع با استفاده از قانون نيوتن ميتوان نور را به رنگهاي مختلف شکست و طول موج هر رنگ را جداگانه مطالعه کرد. اما شما نمي توانيد تاريکي را اندازه بگيريد. يک پرتو بسيار کوچک نور دنيايي از تاريکي را مي شکند و آنرا روشن مي سازد. شما چطور مي توانيد تعيين کنيد که يک فضاي به خصوص چه ميزان تاريکي دارد؟ تنها کاري که مي کنيد اين است که ميزان وجود نور را در آن فضا اندازه بگيريد. درست است؟ تاريکي واژه اي است که بشر براي توصيف زماني که نور وجود ندارد بکار ببرد."
در آخر مرد جوان از استاد پرسيد: "آقا, شيطان وجود دارد؟"
زياد مطمئن نبود. استاد پاسخ داد: "البته همانطور که قبلا هم گفتم. ما او را هر روز مي بينيم. او هر روز در مثال هايي از رفتارهاي غير انساني بشر به همنوع خود ديده ميشود. او در جنايتها و خشونت هاي بي شماري که در سراسر دنيا اتفاق مي افتد وجود دارد. اينها نمايانگر هيچ چيزي به جز شيطان نيست."
و آن شاگرد پاسخ داد: "شيطان وجود ندارد آقا. يا حداقل در نوع خود وجود ندارد. شيطان را به سادگي ميتوان نبود خدا دانست. درست مثل تاريکي و سرما. کلمه اي که بشر خلق کرد تا توصيفي از نبود خدا داشته باشد. خدا شيطان را خلق نکرد. شيطان نتيجه آن چيزي است که وقتي بشر عشق به خدا را در قلب خودش حاضر نبيند. مثل سرما که وقتي اثري از گرما نيست خود به خود مي آيد و تاريک که در نبود نور مي آيد.

نام آن مرد جوان: آلبرت انيشتن

 

*********************************************************************

 البته من خودم شخصا در این استدلال انیشتین رو قبول ندارم.اما خودمونیم خوب حال استاد رو گرفتا!

 

+ نوشته شده توسط افشین در پنجشنبه سیزدهم مهر 1385 و ساعت 6:41 |
پروژه روبات دنبال کننده نور با شرح کامل جزئیات از آقای علیرضا عبد شاه.

پروژه روبات مسیر یاب با میکروکنترلر با شرح کامل جزئیات از آقای علیرضا عبد شاه.

http://www.acrosoft.blogfa.com/

                65lkm 

تصویر نمونه ساخته شده روبات مسیر یاب.

+ نوشته شده توسط افشین در چهارشنبه دوازدهم مهر 1385 و ساعت 7:54 |

این مطلب عینا از وبلاگ http://www.acrosoft.blogfa.com/ نقل شده.

با تشکر از آقای علیرضا عبدشاه:

 آشنائی با LCD

LCD ها ابزاری برای نمایش اطلاعاتی هستند که  شامل حروف و اعداد و همچنین برخی کاراکترهای گرافیکی می شود. بطور معمول در تجربیات اولیه در نمایش اطلاعات دیجیتال از نمایشگر های هفت قسمتی (seven segment) استفاده می شود که این نمایشگرها فقط ارقام (0 تا 9) و بعضی حروف مثل A b C را بصورت نه چندان زیبا نمایش می دهند. اما با بکار گیری LCD اطلاعات را بصورت زیبا و کاملتر می توان نمایش داد. البته استفاده از LCD برای مدارات ساده توصیه نمی شود و عموما آنرا همرا با میکروکنترلر  یا CPU ها بکار می برند.
چیزی که از آن بعنوان
LCD یاد می شود درواقع یک صفحه نمایشگر LCD مانند صفحه ماشین حساب است که همراه با آی سی کنترلر و مدارهای جانبی اش و عموما با لامپ پشت صفحه در یک بسته پیش ساخته عرضه می شود.

همانطور که گفته شد LCD دارای یک کنترلر است که با فرستادن اطلاعات به آن این اطلاعات را در صفحه ای که عموما به چند سطر و ستون تقسیم شده نمایش می دهد. مثلا برای نمایش حرف "M" کافیست کد اسکی این حرف را طبق یک پروتکل ساده به LCD ارسال کنیم. همچنین می توان دستوراتی از قبیل پاک کردن صفحه نمایش، جابجایی مکان نما، خاموش روشن کردن مکان نما و غیره را نیز به LCD ارسال کرد.
LCD ها از طریق مقدار اطلاعاتی که میتوانند در صفحه نمایش بدهند انتخاب و خریداری می شوند. انواع معمول آن عبارتند از 16 ، 20 ، 32 و 40 کاراکتر در هر خط در 1 یا 2 یا 4 سطر. مثلا 2 در 16 یعنی صفحه دارای دو خط و هر خط 16 کاراکتر است. همچنین LCD موردنظر میتواند همراه با لامپ پشت صفحه (Back light) یا بدون آن انتخاب شود. LCD ها کاراکتر ها را در ماتریس های 5x7 pixel نمایش می دهند. در تصویر زیر یک نمونه 2 در 16 مشاهده می شود:

54زل

لا5

 Lcdها دارای 16 پایه هستند که 8 خط آن مربوط به فرستادن یا خواندن داده ها یا دستورالعمل ها می باشد.  پایه های دیگر خطوط کنترل و ولتاژهای تغذیه می باشند. لیست کامل خط ها بقرار زیر است:

 شماره و نام خط

 عملکرد

1- Vss

زمین

2- Vcc

ولتاژ 5 ولت برای کنترلر

3- Vee

ولتاژ تنظیم درخشندگی(contrast)

4- RS

 انتخابگر ثبات دستور / داده

5- RW

 انتخابگر خواندن / نوشتن

6- Enable

فعال کننده

7-14 Bus

8 خط گذرگاه داد یا دستور

15-

ولتاژ 5 ولت برای لامپ پشت صفحه

16-

زمین برای لامپ پشت صفحه

 

Vee : برای تنظیم درخشندگی کاراکترها بکار می رود که باید ولتاژی بین صفر و 5 ولت به این پایه اعمال نمود. برای بیشترین درخشندگی این پایه را به زمین متصل کنید.

انتخابگر ثبات داده / دستور مشخص می کند که چه چیزی به LCD فرستاده می شود. اگر این خط صفر باشد کنترلر LCD بایت موجود روی خطوط 7 تا 14 را بعنوان یک دستور تلقی کرده و اگر این پایه یک باشد اطلاعات را بعنوان یک کد اسکی که باید کاراکتر معادل آنرا نمایش دهد در نظر می گیرد.

انتخابگر خواندن / نوشتن جهت اطلاعات را نشان می دهد. اگر این پایه صفر باشد اطلاعات به LCD ارسال می شود و اگر یک باشد عمل خواندن از LCD صورت می گیرد.

فعال کننده: برای هر دستور یا داده ای که به LCD میفرستیم یا میخواهیم از آن بخوانیم باید یک پالس پائین رونده (یعنی تغییر از سطح یک به صفر) را به این پایه اعمال کنیم تا دستور یا داده بوسیله کنترلر LCD پردازش شود.

در خطوط 7 تا 14 خط 7 کم ارزشترین بیت(LSB) و خط 14 پر ارزش ترین بیت (MSB) می باشد.

در صورت تمایل به روشن کردن لامپ پشت صفحه ولتاژ 5 ولت را به پایه 15 اعمال و پایه 16 را به زمین متصل می کنیم.

برای آزمایش می توان LCD را به پورت چاپگر متصل  و اطلاعاتی را به آن ارسال نمود. در این حالت بطور معمول خطوط داده پورت به خطوط 7 تا 14 و سه خط کنترلی به پایه های 4 تا 6 اتصال داده می شود توجه داشته باشید که ولتاژ تغذیه و لامپ پشت صفحه LCD توسط منبع خارجی تامین می شود.
روش فرستادن یک کاراکتر:
خط خواندن نوشتن را صفر کنید تا نوشتن انتخاب شود.
خط داده / دستور را یک کنید تا داده انتخاب شود.
کد اسکی کاراکتر مورد نظر را روی خطوط
D0 تا D7 قرار دهید.
خط انتخاب را ابتدا یک و سیس صفر کنید. حداقل 450 نانو ثانیه باید این خط را صفر نگه دارید تا داده پردازش شود. بعد از آن حالت خط تاثیری نخواهد داشت.

54dfdef

+ نوشته شده توسط افشین در چهارشنبه دوازدهم مهر 1385 و ساعت 7:30 |
من خیلی وقت پیش اشتراک یه مجله رو داشتم به نام امواج برتر  برای ۵ شماره فقط که زیاد باهاش حال نکردم چون بیشتر تبلیغ بود و مطالبش هم مربوط به برق قدرت میشد بیشتر. تا اینکه هفته قبل یه شمارش اومد در خونه (شماره ۲۳) و یه نامه همراش بود از مسئول قسمت اشتراک ها و گفته بود این فرم تازه مجله ست با یه برگه اشتراک.... به قول سرویس های ندیده و نشنیده....

خلاصه راست میگفتن مجلشون خیلی بهتر شده بود و الکترونیکی تر....

دفعه اول که اشتراک گرفتم کاملا اتفاقی بود .تو اتوبوس دست یه بنده خدا دیدم اونم دلش برام سوخت برگه اشتراکش رو داد به من چون خودش قبلا اشتراک گرفته بود و حوصله سوال و جوتب هم نداشت... اینا رو گفتم که فکر نکنید دارم تبلیغ می کنم.

قیمت روی جلد این مجله ۷۰۰ تومان است و البته اشتراکش ارزون تر هم میشه.

لینک زیر آدرس سایت مجله است.میتونید فرم و نحوه اشتراک رو هم اونجا پیدا کنید:

http://www.amvaj-e-bartar.com/

تا بعد...

+ نوشته شده توسط افشین در چهارشنبه دوازدهم مهر 1385 و ساعت 6:35 |
سلام بر همگی:

 نماز و روزه هاتون هم قبول باشه انشاا...

اگه دنبال به کامپایلر فول ورژن مجانی PicBasic Pro کافیه به آدرس زیر برید با صرف کمتر از یه دقیقه وقت اونجا عضو بشید بعد از قسمت دانلود یه کامپایلر بدون هیچ محدودیتی رو دانلود کنید.

برای عضو شدن میتونید از طریق منوی عضویت سریع اقدام کنید. کافیه یه اسم به عنوان کاربر-آدرس میل و یه کلمه به عنوان پسورد وارد کنید و کلیک کنید ظرف چند ثانیه شما عضو سایت میشید و میتونید از نرم افزار ها و مقاله های آموزشی اون به طور کاملا رایگان استفاده کنید. در ضمن چند تا مقاله هم برای آموزش Pic داره.ارزش سر زدن رو داره.                

   بعد از عضویت دانلود کنید ۷.۴۰ مگابایت                    PicBasic Pro Full Version 2.45 free

موفق باشید.

+ نوشته شده توسط افشین در چهارشنبه دوازدهم مهر 1385 و ساعت 6:8 |
در حال بد جوری لنگ یه full version موندم. شرمنده. اگه گیر آوردم فورا آپلودش میکنم .

+ نوشته شده توسط افشین در شنبه هشتم مهر 1385 و ساعت 8:52 |
این تصویر نمونه اولیه دستگاه کنترل با ۵ کانال کنترلی که قادره بعد از در یافت و شمارش زنگ تلفن با طرف مقابل(کاربر) ارتباط برقرار کنه و به فرامین وی عمل کنه (کانال ها رو به طور مجزا خاموش یا روشن کنه).

 

+ نوشته شده توسط افشین در سه شنبه چهارم مهر 1385 و ساعت 5:10 |

 

  این سوال جالب رو از وبلاگ رباتیک دانشگاه شاهرود گرفتم که آدرسشم توی پیوندهاست و خیلی جالبه:

 

این مساله رو انشتین تو قرن نوزده مطرح کرده و گفته 98 درصد مردم دنیا قادر به حل اون نیستند. ممکنه ظاهر مساله خسته کننده باشه ولی در باطن نیست. سعی کنین حتما حلش کنین ببینین چقدر استنتاجتون قویه. حداقل بفهمین جزو چند درصدین و اما مساله:

1- در یک خیابون 5 خونه وجود داره که با پنج رنگ متفاوت رنگ شدن. 2- تو هر خونه یه نفر با ملیت متفاوت با بقیه زندگی میکنه. 3- هر کدوم از 5 صابخونه یه نوشیدنی متفاوت, یه مارک سیگار متفاوت دوست داره و یه حیوون متفاوت تو خونه نگهداری میکنه سوال اینه که کی تو خونه ماهی نگهداری میکنه با این شرطها که: 1- انگلیسه خونه اش قرمزه 2- سوئدیه تو خونه سگ نگه میداره 3- دانمارکیه چای دوست داره 4- خونه سبز رنگ سمت چپ خونه سفیده 5- صاحب خونه ی سبز رنگ قهوه دوست داره 6- کسی که سیگار پالمال میکشه پرنده نگهداری میکنه 7- صاحب خونه زرد رنگ سیگار دانهیل میکشه 8- مردی که تو خونه وسطی زندگی میکنه شیر دوست داره از نوشیدنی ها(نه حیوونا) 9- نروژیه تو اولین خونه زندگی میکنه 10- مردی که بلندز میکشه همسایه اونیه که گربه نگهداری میکنه 11- مردی که اسب نگهداری میکنه همسایه مردیه که دانهیل میکشه 12- مردی که بلو مستر میکشه آبجو دوست داره(ببخشید ماءالشعیر) 13- آلمانیه سیگار پرنس میکشه 14- نروژیه همسایه اونیه که خونه اش آبیه 15- مردی که بلندز میکشه همسایه ای داره که آب دوست داره بین نوشیدنیها .

+ نوشته شده توسط افشین در سه شنبه چهارم مهر 1385 و ساعت 5:2 |