آشنایی با ابزارها و امکانات متنوع سخت افزاری ...

تب‌های اولیه

8 پستها / 0 جدید
آخرین ارسال
آشنایی با ابزارها و امکانات متنوع سخت افزاری ...

سلام دوستان ...

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

هدف های رفتاری :
1- آموزش به صورت تفضیلی نباشه ... فقط معرفی اون ماشین ... یا ابزار برنامه نویسی باشه ...
2- کاربردها و فضاهای کاربری سخت افزار مشخص شده باشه ...
3- هدف هایی که سخت افزار یا ماشین مربوطه تامیین میکنه رو پوشش بده .

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

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

1- آشنایی با USB
2- آشنایی با Bluetooth

3- معماری انواع پروسسورها و تفاوت هایشان .
4- آشنایی با Slot های کامپیوتری بخصوص PCI .
5- چگونگی ساخت دستگاهی مبتنی بر درگاه PCI و دسترسی به اونها در Windows .
6- آشنایی با پورت Ethernet و ساختار دستگاه هایی که بر اساس این پورت کار میکنند .
7- آشنایی با پروتکل های UDP , TCP/IP
8- سوکت نویسی در زبان های برنامه نویسی .
9- DDK , SDK نویسی
10- آشنایی با پورت سریال و ساختار دستگاههایی که بر اساس این درگاه کار میکنند .
11- آشنایی با انواع میکروکنترلر های AVR , ARM , dsPIC , PIC .
12- چگونگی ساخت دستگاههایی مبتنی بر میکروکنترلرها . همراه با یک مثال ساده . ( پردازش سریال )
13- آشنایی با انواع FPGA ها
14- ساخت یک نمونه دستگاه مبتنی بر یک تراشه FPGA ( پردازش موازی)
15- آشنایی با انواع DSP و کاربرد اونها در صنعت .
16- ساخت یه دستگاه کوچک مبتنی بر یک تراشه DSP .
17- آشنایی با Mathlab و آشنایی با ابزارهای پردازش صدا و تصویر .
18- یک مثال کوچک ... که چگونه Mathlab میتونه Face رو تشخیص یده ...
19- یک مثال کوچک ... که چگونه میتوان دستگاهی ساخت که اشخاصی که مستعد سکته هستند رو از روی سیگنال قلبشون تشخیص داد .
20- آشنایی با PLC در صنعت و مفاهیم HMI , نرم افزار WINCC
21- آشنایی با WIFI و چگونگی ساخت دستگاههایی مبتنی بر این نوع تکنولوژی .
برچسب: 

IMAGE(<img src="http://askdin.com/sites/default/files/gallery/images/27167/1_Bluetooth_1.jpg" alt="" class="bb-image" />)

سلام ...
خوب و خوش باشین و سلامت ...


پنجمین امکان و ابزاری که میخوام معرفی کنم آشایی با سیستم های مبتنی بر Blutooth هست ... سعی میکنیم ... سخت افزار و نرم افزار سیستم های مبتنی بر Bluetooth رو بشناسیم .... بحث شامل دو قسمت سخت افزاری و نرم افزاری هست ... که جداگانه به بیان هر یک میپردازیم ... در نهایت به بررسی طریقه دسترسی به ابزارآلات مبتنی بر Bluetooth میپردازیم و اون ها رو تو یه زبان سطح بالا بهره برداری میکنیم .

IMAGE(<a href="http://askdin.com/sites/default/files/gallery/images/27167/1_Bluetoot1.jpg" class="bb-url" rel="nofollow"><img src="http://askdin.com/sites/default/files/gallery/images/27167/medium/1_Bluetoot1.jpg" alt="" class="bb-image" /></a>)

ادامه دارد ...

اگر براتون مفید بودش برام دعا کنین ... ممنون !!!


IMAGE(<img src="http://askdin.com/sites/default/files/gallery/images/27167/1_USB0.jpg" alt="" class="bb-image" />)

سلام ...
خوب و خوش باشین و سلامت ...


چهارمین امکان و ابزاری که میخوام معرفی کنم آشایی با پورت usb هست ... این ابزار ... درگاهی جهت برقراری ارتباط میون کامپیوتر و دنیای بیرون از کامپیوتر هست ...یکم در مورد خودش توضیح میدم که چجوری کار میکنه ... یکم هم در مورد طریقه دسترسی به اون صحبت میکنم ...

خوب اول از همه یه شکلی ازش بزارم تا بدونیم داریم در مورده چی حرف میزنیم ...

IMAGE(<a href="http://askdin.com/sites/default/files/gallery/images/27167/1_USB.jpg" class="bb-url" rel="nofollow"><img src="http://askdin.com/sites/default/files/gallery/images/27167/medium/1_USB.jpg" alt="" class="bb-image" /></a>)

کارکرد سخت افزاری :
----------------------------
رو پایه های USB همونجور که میبینین : نوشته + نوشته - نوشته Biggrin و نوشته -D اینا یعنی چی :

+ : یعنی +5 ولت ... برقی که کامپیوتر به پورت USB میده 5 ولته .
- : قطب منفی پورت USB هست ... همونطور که باتری دو تا قطب داره یکی + یکی هم - . اینم همونجوریه ....
این دو تا پین باعث میشه وقتی دستگاهی رو به پورت USB میزنیم روشن بشنه ... اگر این دو تا نباشه برق به دستگاه USB مون نمیرسه و روشن نمیشه .

Biggrin و -D چی هستن ؟؟؟
ارتباط میان کامپیوتر و ابزار جانبی ( رد و بدل کردن Data ) از طریق این دو PIN صورت میگیره ... همانطور که میدانیم اطلاعات در درون کامپیوتر به صورت باینری یا دو دویی میباشند ... کامپیوتر وقتی میخواد با یه دستگاه جانبی ارتباط برقرار کنه اطلاعات رو که به صورت بیت های 0 و 1 هستند رو بر روی این دوخط قرار میده و برای گیرنده ارسال میکنه ... پس از آنکه گیرنده اطلاعات خودش رو دریافت کرد ... پاسخ خودش رو دقیقا بر روی همین دو خط قرار میده و برای کامپیوتر ارسال میکنه ... سوال پیش میاد که چرا در USB دوخط برای این کار در نظر گرفته شده ... با اینکه میتونستن این عمل رو با یک خط داده نیز انجام داد ... مثلا میتونیم با یک PIN یا یک رشته سیم اطلاعاتی که حاوی 0 ها و 1 ها هستند رو انتقال بدیم ...

IMAGE(<a href="http://askdin.com/sites/default/files/gallery/images/27167/1_USB100.jpg" class="bb-url" rel="nofollow"><img src="http://askdin.com/sites/default/files/gallery/images/27167/medium/1_USB100.jpg" alt="" class="bb-image" /></a>)

جواب : خوب نمیایم این کار رو بکنیم ... و از روش دیگه ای استفاده میکنیم ...
1- اگر کامپیوتر بخواهد کد 1 باینری رو ارسال کند ... روی خط Biggrin ولتاژ 3 ولت رو میزاره و روی خط -D ولتاژ 3- ولت رو ... و توی گیرنده بررسی میکنیم اگر خط Biggrin ولتازش بالاتر از -D بود ... یعنی کامپیوتر برای ما کد 1 رو ارسال کرده ...
2- اگر کامپیوتر بخواهد کد 0 باینری رو ارسال کند ... روی خط Biggrin ولتاژ 3- ولت رو میزاره و روی خط -D ولتاژ 3 ولت رو .... و توی گیرنده بررسی میکنیم اگر خط Biggrin ولتاژش کمتر از -D بود .... یعنی کامپیوتر برای ما کد 0 رو ارسال کرده ....

چرا ؟؟؟ ... برای اینکه بتونیم اطلاعات رو با اطمینان خاطر بیشتری و برای مسافت های بیشتری ارسال کنیم ... اگر فقط 0 یا 5 ولت رو روی خط میزاشتیم ... و در گیرنده منتظر 0 یا 5 ولت بودیم ... ممکن بود نویز روی کابل تاثیر بگذاره و نتونیم 0 یا 5 ولت رو در گیرنده بگیریم ... اونوقت گیرنده نمیتونست بفهمه منظور فرستنده 0 باینری بوده یا 1 باینری ... ولی تو این روش کافی هست Biggrin از -D ولتاژش بیشتر باشه ... تا ما 1 منطقی رو از کابل استخراج کنیم ....


کارکرد نرم افزاری :
----------------------------
کارکرد نرم افزاری پورت USB خیلی خیلی جالب هست ... ویندوز خیلی جالب با پورت USB برخورد میکنه ... ببینیم این کار رو چجوری انجام میده ...
1- تا یه دستگاه USB رو به پورت USB وصل میکنیم ... اون دستگاه از پورت کامپیوتر جریان الکتریکی میکشه و ویندوز متوجه میشه که یه چیزی به این درگاه وصل شده ...
2- از روی میزان جریانی که میکشه متوجه میشه سرعت اون دستگاه USB چقدر هست FULL SPEED هست یا LOW SPEED .
3- تا 127 دستگاه رو میشه به پورت USB وصل کرد ... همینکه ویندوز میبینه شما یه دستگاهی رو به پورت USB وصل کردین میبره و اونو میزاره تو آدرس 0 .
4- بعدش میگه سلام علیکم ....حالتن خوبه ؟؟؟ میبینه آیا دستگاه USB جواب میده یا نه ... اگر نداد دوباره میپرسه ... و دوباره ... اگر باز هم جواب نداد ... به کاربر پیام میده ... USB وصل کردی ... ولی هر کار میکنم جواب نمیده ...
5- اگر جواب داد ... بعد از سلام وعلیک ... بازجویی شروع میشه ...
6- اسمت چیه ... دستگاه USB جواب میده ... مثلا میگه HP1018
7- تو چه پروتکلی کار میکنی ... جواب میده BULK ...
8- ماکزیمم سرعتی که لازم داری چقدره ... میگه 115200 بیت در ثانیه ...
9- میگه تو چه ساب کلاسی کار میکنی ... میگه CDC ...
10 - اسم درایورت چیه : مثلا میگه Hpnn
11- میگه تا حالا مهمون بودی نمیشناختمت برای همین تو آدرس 0 بودی ... حالا برو تو آدرس 89 بشین و آدرس 0 رو برای USB جدید که میخواد بیاد خالی کن ...
12- و این دستگاه USB میره تو اون آدرس میشینه ...

حالا هر وقت یه Application یا یک نرم افزار کامپیوتری بخواد با پورت USB در ارتباط قرار بگیره ... ویندوز میدونه ... اون USB چه خصوصیاتی داره ... تو کدوم آدرس نشسته ... چه سرعتی رو لازم داره ... نام و نام خانوادگیش چی هست و چجوری باهاش ارتباط برقرار کنه .

اگر هم بخواین به حرفایی که بین Windows و اون دستگاه USB زده میشه گوش بدین اسنیفر های نرم افزاری و سخت افزاری وجود داره که این کار رو انجام میده که در شکل زیر نشون داده شده ...

IMAGE(<a href="http://askdin.com/sites/default/files/gallery/images/27167/1_USB101.jpg" class="bb-url" rel="nofollow"><img src="http://askdin.com/sites/default/files/gallery/images/27167/medium/1_USB101.jpg" alt="" class="bb-image" /></a>)

IMAGE(<a href="http://askdin.com/sites/default/files/gallery/images/27167/1_USB102.png" class="bb-url" rel="nofollow"><img src="http://askdin.com/sites/default/files/gallery/images/27167/medium/1_USB102.png" alt="" class="bb-image" /></a>)

دسترسی به USB در زبانهای سطح بالا :
----------------------------------------------------------------------
خوب برای اینکه بتونیم ادامه بدیم باید یه کم دیگه در مورد USB حرف بزنیم ... ممکن هست شما دو تا کار بخواین بکنین ... یا یه دستگاه خودتون ساختین که USB هست و به پورت USB وصلش میکنین ... یا اینکه یه ابزار مثله پرینتر به پورت USB تون وصل شده و میخواین باهاش ارتباط برقرار کنین... فعلا فرض میکنیم یه دستگاه درست کردین که دارای پورت USB هست و میخواین تو C# یا VB یا هر زبون سطح بالای دیگه ای بهش دسترسی پیدا کنین ...


حالت اول : ارتباط با دستگاه خود ساخته :
--------------------------------------------------------
وقتی شما میخواین یه دستگاه USB بسازین اون رو باید تو یکی از 4 مد زیر بسازینش ...

- مد Interrupt : یا وقفه ای که این جور دستگاه ها طوری ساخته میشن که تو هر Interval زمانی ( یه دوره زمانی ) یه پکت داده ای رو برای کامپیوتر میفرستن ... مثلا موس USB تو هر 34 میلی ثانیه دایما داره یه پکت رو برای کامپیوتر میفرسته ... یا کیبورد USB همچنین .
- مد Control : این مود برای معرفی ابزار USB مون به کامپیوتر مورد استفاده قرار میگیره ... با اینکه میشه باهاش انتقال Data هم کرد ... ولی نکنیم بهتره .
- مد ISO : این مد برای ساختن دستگاههایی به کار میره که حجم اطلاعات زیادی رو میخوان بفرستن و این ارسال نیز به صورت مداوم هست ... مثه Webcam .
- مد BULK : این مد برای ساختن دستگاه هایی به کار میره که حجم اطلاعات زیادی رو فقط برایه یک بار ارسال میکنند مثله Cooldisk ها .

خوب ... وقتی شما دارین یه دستگاه که پورت USB داره رو میسازین باید تو Firmware اون دستگاه این اطلاعات رو درج کنین :
1- اگر کامپیوتر ازم اسمم رو پرسید چی جواب بدم .
2- اگر کارخونه سازندم رو پرسید چی جواب بدم
3- اگر مد کاریم رو پرسید کدوم یک از حالات بالا رو جواب بدم .
4- اگر ازم پرسید نیاز به چه مقدار سرعت دارم چی جواب بدم .
5- و متناسب با این تنظیمات ... هر وقت Windows ازم درخواست کرد اطلاعات رو براش بفرستم ...

در زیر شماتیک یه دستگاهی که USB داره رو میزارم و روش یکم حرف میزنیم ...

IMAGE(<img src="http://askdin.com/sites/default/files/gallery/images/27167/1_USB18.jpg" alt="" class="bb-image" />)

همونطور که میبینین یه درگاه USB داریم و 3 تا مقاومت .... یه مقاومت 1.5 کیلو اهمی تو شکل هست ... اگر اون مقاومت 1.5 کیلو اهمی به Biggrin وصل بشه یعنی دستگاهمون High Speed هست و ویندوز باهاش ارتباط سریع برقرار میکنه و اگر اون مقاومت روی -D باشه ویندوز باهاش با سرعت پاییین تری حرف میزنه LOW SPEED ... پس وقتی داریم دستگاهمون رو میسازیم باید بدونیم نیاز به چه سرعتی داریم و مقاومت 1.5 کیلو اهمیمون رو روی اون درگاه قرار بدیم .

بحث دوم برمیگره به نرم افزاری که میخوایم تو پردازنده دستگاهمون بریزیم ... در اینجا فرض میکنم میخوایم یه دونه COOLDISK بسازیم و اون رو به USB کامپیوتر وصل کنیم ... در لینک زیر میتونین روتین هایی که به زبان C نوشته شده رو دانلود کنین و ازش استفاده کنین ... اما این روتین ها احتیاج به کمی توضیح دارن که در شکل های زیر نشونشون دادم .

ادامه دارد ...

اگر براتون مفید بودش برام دعا کنین ... ممنون !!!


IMAGE(<img src="http://askdin.com/sites/default/files/gallery/images/27167/1_WIFI1.jpg" alt="" class="bb-image" />)

سلام ...
خوب و خوش باشین و سلامت ...



سومین امکان و ابزاری که میخوام معرفی کنم آشایی با سیستم های مبتنی بر WIFI هست ... سعی میکنیم ... سخت افزار و نرم افزار سیستم های مبتنی بر wifi رو بشناسیم .... بحث شامل دو قسمت سخت افزاری و نرم افزاری هست ... که جداگانه به بیان هر یک میپردازیم ... دستگاهی میسازیم که بتونه با wifi در ارتباط قرار بگیره و تو یه زبون سطح بالا بهش دسترسی پیدا میکنیم ...



IMAGE(<a href="http://askdin.com/sites/default/files/gallery/images/27167/1_WIFI2.jpg" class="bb-url" rel="nofollow"><img src="http://askdin.com/sites/default/files/gallery/images/27167/medium/1_WIFI2.jpg" alt="" class="bb-image" /></a>)

IMAGE(<a href="http://askdin.com/sites/default/files/gallery/images/27167/1_wifi3.jpg" class="bb-url" rel="nofollow"><img src="http://askdin.com/sites/default/files/gallery/images/27167/medium/1_wifi3.jpg" alt="" class="bb-image" /></a>)

IMAGE(<img src="http://askdin.com/sites/default/files/gallery/images/27167/1_Serial_1.jpg" alt="" class="bb-image" />)

سلام ...
خوب و خوش باشین و سلامت ...

چهارمین امکان و ابزاری که میخوام معرفی کنم آشایی با سیستم های مبتنی بر ارتباط SERIAL هست ... سعی میکنیم ... سخت افزار و نرم افزار سیستم های مبتنی بر پورت سریال رو بشناسیم .... بحث شامل دو قسمت سخت افزاری و نرم افزاری هست ... که جداگانه به بیان هر یک میپردازیم ... دستگاهی میسازیم که بتونه باپورت سریال در ارتباط قرار بگیره و تو یه زبون سطح بالا بهش دسترسی پیدا میکنیم ...

اگر در مورد پورت موازی یه تحقیق کوچیکی بکنین متوجه میشین که دارای ایراداتی هست ... پورت های سریال دو مدل هستند یا 9 پین هستند یا 25 پین که اصلاحا به اونا DB9 و DB25 نیز گفته میشه ... پورت سریال رو با نام COM نیز میشناسن .... مثلا یه کامپیوتر میتونه دو پورت سریال COM1 , COM2 برای انتقال اطلاعات داشته باشه ...

نکته مهم و مفهوم اساسی که در پورت سریال وجود داره و ما باید بهش توجه کنیم ... آهنگ ارسال و دریافت اطلاعات هست ... نام خارجکی این مفهوم Baudrate هست ... به عنوان مثال وقتی میگن سرعت پورت روی 9600 بیت بر ثانیه گذاشته شده ... یعنی اون پورت سریال طوری تنظیم شده که میتونه در هر ثانیه در حدود 9600 بیت یا 1200 بایت رو روی خط بزاره و ارسال کنه ...

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

ادامه دارد ....

برای بدست آوردن آدرس پورت سریال از Device Manager ویندوز هم میشه استفاده کرد ... علاوه بر تظیماتی که مربوط به ارسال و دریافت داده ها هست ... امکانات دیگری نیز وجود داره مثله DMA ... کنترل وقفه ها و ... که اگر عمری بود براتون مینویسم ...

در شکل زیر پین های مربوط به پورت سریال رو مشاهده میکنین و در کنار هر یک عملکرد اون رو نشون داده که به تفضیل در مورد هر یک بحث میکنیم و میگیم هر پایه کارش چی هست و به چه دردی میخوره ....
ادامه دارد ....

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

دسترسی به پورت سریال در ++C :
------------------------------------------------
ادامه دارد ....

دسترسی به پورت سریال در #C :
------------------------------------------------
ادامه دارد ....

دسترسی به پورت سریال در VB :
------------------------------------------------
ادامه دارد ...

ساخته دستگاهی که بتونیم به پورت سریال وصلش کنیم و با کامپیوتر کنترلش کنیم :
--------------------------------------------------------------------------------------------------------
ادامه دارد ...



IMAGE(<a href="http://askdin.com/sites/default/files/gallery/images/27167/1_serial2.JPG" class="bb-url" rel="nofollow"><img src="http://askdin.com/sites/default/files/gallery/images/27167/medium/1_serial2.JPG" alt="" class="bb-image" /></a>)


IMAGE(<a href="http://askdin.com/sites/default/files/gallery/images/27167/1_Serial_3.jpg" class="bb-url" rel="nofollow"><img src="http://askdin.com/sites/default/files/gallery/images/27167/medium/1_Serial_3.jpg" alt="" class="bb-image" /></a>)

IMAGE(<a href="http://askdin.com/sites/default/files/gallery/images/27167/1_Serial4.JPG" class="bb-url" rel="nofollow"><img src="http://askdin.com/sites/default/files/gallery/images/27167/medium/1_Serial4.JPG" alt="" class="bb-image" /></a>)

ادامه دارد ...

IMAGE(<img src="http://askdin.com/sites/default/files/gallery/images/27167/1_Parallel_1.jpg" alt="" class="bb-image" />)

سلام ...
خوب و خوش باشین و سلامت ...

چهارمین امکان و ابزاری که میخوام معرفی کنم آشایی با سیستم های مبتنی بر ارتباط Parallel هست ... سعی میکنیم ... سخت افزار و نرم افزار سیستم های مبتنی بر پورت موازی رو بشناسیم .... بحث شامل دو قسمت سخت افزاری و نرم افزاری هست ... که جداگانه به بیان هر یک میپردازیم ... دستگاهی میسازیم که بتونه با پورت موازی در ارتباط قرار بگیره و تو یه زبون سطح بالا بهش دسترسی پیدا میکنیم ...

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

در درون ارتباطاتی که از نوع سریال هست هر بار یک بیت رو روی خط میزاریم و اونو ارسال میکنیم ... ولی در این نوع ارتباط هر بار یک بایت ... یا به بیان دیگه یه 8 بیت رو روی خط میزاریم و اونو ارسال میکنیم ...

خوب حالا چجوری شروع کنیم :
----------------------------------------
فرض میکنیم که شما میخواین یک داده 8 بیتی ... یا یه بایت رو توسط پورت موازی به بیرون از کامپیوتر ارسال کنین ... در این صورت باید بدونین آدرس پورت موازی چی هست و توسط یه زبونی مثله C یا ++C تو اون آدرس Data خودتون رو قرار بدین ...

پیکر بندی سخت افزار LPT تو کامپیوتر چیجوری هست :
---------------------------------------------------------------------
وقتی خواستن پورت پارالل رو بسازن ... سه تا رجیستر در نظر گرفتن که تنظیمات پورت پارالل توسط اون ها انجام میشه ... از این رو برای پورت پارالل یه آدرس مرجع ( پایه ) در نظر میگیرن ...که بقیه آدرس ها بالاتر از این آدرس مرجع هست ...
( جلوتر منظورم رو میفهمین ) ...

اولین قدم اینه که بفهمیم آدرس پورت موازی چی هست : یه برنامه C براتون مینویسم که میتونه آدرس پورت های موازی رو بهتون بگردونه :


<br />
#include <stdio.h><br />
#include <dos.h><br />
void main(void)<br />
{<br />
  unsigned int far *Ptradr;   // Far Pointer To Point LPT Address<br />
  unsigned int Address;<br />
  int Counter;</p>
<p>  Ptradr=(unsigned int far * ) 0x00000408;</p>
<p>  for (Counter=0;Counter<3;Counter++)<br />
      {<br />
       Address=*Ptradr;<br />
       if(Address==0)<br />
          printf ("No Port Found for LPT%d \n", Counter);<br />
       else<br />
          printf( Address Assigned to LPT%d is  %Xh\n". Counter, Address);<br />
*Ptradr++;<br />
      }<br />
}<br />

توضیح برنامه :
-------------------------
الف ) Far Pointer : ادامه دارد ...
ب) آدرس 0x00000408 : ادامه دارد ...

البته یه راه بهتر هم وجود داره ... اونم استفاده از امکانات ویندوزه ... میشه از طریق ویندوز و پنجره Device Manager آدرس تک تکه پورت های موازی رو بدست آورد ...
الان من روی کامپیوترم پورت موازی ندارم که یه عکس بگیرم و بزارم ... بعدا عکس میزارم ... ( ادامه دارد ... )

خوب ...
همونجور که گفتیم هر پورت موازی دارای سه رجیستر هست ... اولا بیایم و یه تعریفی از رجیستر بکنیم :
رجیستر : ( تعریف دقیقش رو یادم نیست ولی اینو از من قبول کنین ) حافظه هایی هستند که به صورت سخت افزاری پیاده سازی شده اند ... این رجیسترها از نوع حافظه هستند و میشه توشون اطلاعات ریخت یا ازشون اطلاعات خوند ... فرقشون با حافظه یا RAm در این هست که برای کنترل Device ها به کار میرن ... فرض کنین شما یه دستگاهی ساختین که امکانات زیادی رو پوشش میده ... میتونین براش یه رجیستر تعریف کنین که با صفرو یک کردنه بیت های اون کارکرد دستگاه تغییر کنه ...

حالا ما گفتیم که پورت موازی دارای 3 رجیستر هست ... یعنی ما میتونیم روی کارکرد پورت پارالل 3 جور اثر گذار باشیم ... حالا ببینیم این رجیسترها چی هستن و چیجوری میتونیم باهاشون کار کنیم ....

انواع رجیسترها و کارکرد هر یک :
------------------------------------------
الف ) رجیستر اطلاعات : هر چیزی که رو این رجیستر بریزیم میره روی پورته پارالل یا موازی میشینه ... این اطلاعات رو میشه از پین 2 تا پین 9 بهش دسترسی پیدا کرد ... مثلا اگر شما روی رجیستر اطلاعات عدد صفر ارسال کنین ... پین های 2 تا 9 ... مقدارشون 0 میشه . ( کاربرد ازسال اطلاعات از کامپیوتر به سمت پورت موازی)

ب) رجیستر وضعیت : از این رجیستر برای دریافت وضعیت دستگاهی که به پورت موازی وصل کردین استفاده میشه ... مثلا فرض کنین پرینتر شما یا یه دستگاهی که به پورت پارالل وصل کردین میخواد یه Data رو به کامپیوتر بفرسته ... شما اطلاعات مورد نظره خودتون رو ... میریزین رو پایه های 10 و 11 و 12 و 13 و 15 و توسط این رجیستر از درون نرم افزار مقدارشون رو میخونین ... ( کاربرد ارسال اطلاعات از سمت پورت موازی به سمت کامپیوتر)

ج ) رجیستر کنترل : از این رجیستر ها برای کنترل پورت موازی استفاده میشه ... و به همین دلیل حالت خروجی دارن ... پین های14و 16 و 17 و1 در درون رجیستر کنترل قابل دسترسی هستند ... مثلا بیت 4 برای پیاده سازی وقفه به کار میره ... ( نمیدنین وقفه چیه بعدا توضیح میدم فعلا نمیدونین مهم نیست ) ... مثلا بیت 5 برای تنظیم جهت درگاه پورت موازی هست اگر اونو یک کنیم درگاه موازی ورودی میشود و اگر اون رو صفر کنیم حالت خروجی به خودش میگیره ...

دسترسی به پورت موازی در ++C :
-------------------------------------------


<br />
a=inportb(0x379);<br />
a=inp(0x379);<br />
a=inport(0x379);<br />
a=inpw(0x379);<br />
ادامه دارد ...

دسترسی به پورت موازی در VB :
-------------------------------------------

<br />
A=INP(&H379)<br />
ادامه دارد ...

ساخته دستگاهی که به پورته موازی وصلش کنیم و توسط کامپیوتر کنترلش کنیم :
--------------------------------------------------------------------------------------------------------

IMAGE(<a href="http://askdin.com/sites/default/files/gallery/images/27167/1_Parallel_2.jpg" class="bb-url" rel="nofollow"><img src="http://askdin.com/sites/default/files/gallery/images/27167/medium/1_Parallel_2.jpg" alt="" class="bb-image" /></a>)


ادامه دارد ...

IMAGE(<img src="http://askdin.com/sites/default/files/gallery/images/27167/1_Ethernet_1.JPG" alt="" class="bb-image" />)
سلام ...
خوب و خوش باشین و سلامت ...

پنجمین امکان و ابزاری که میخوام معرفی کنم آشایی با سیستم های مبتنی بر ارتباط Ethernet هست ... سعی میکنیم ... سخت افزار و نرم افزار سیستم های مبتنی بر پورت شبکه رو بشناسیم .... بحث شامل دو قسمت سخت افزاری و نرم افزاری هست ... که جداگانه به بیان هر یک میپردازیم ... دستگاهی میسازیم که بتونه با پورت شبکه در ارتباط قرار بگیره و تو یه زبون سطح بالا بهش دسترسی پیدا میکنیم ...

IMAGE(<a href="http://askdin.com/sites/default/files/gallery/images/27167/1_Ethernet_2.jpg" class="bb-url" rel="nofollow"><img src="http://askdin.com/sites/default/files/gallery/images/27167/medium/1_Ethernet_2.jpg" alt="" class="bb-image" /></a>)

IMAGE(<a href="http://askdin.com/sites/default/files/gallery/images/27167/1_Ethernet3.JPG" class="bb-url" rel="nofollow"><img src="http://askdin.com/sites/default/files/gallery/images/27167/medium/1_Ethernet3.JPG" alt="" class="bb-image" /></a>)

ادامه دارد ...

آشنایی با قطعات الکترونیکی و کاربرد هر یک :

1- pcb :
--------------------
بعضی ها هم بهش "کیت" میگن ... یه بردی سبز رنگ هست که قطعات الکترونیکی رو روش هویه میکنن ... مثلا مادربرد کامپیوتر در حقیقت یه pcb هست که بر روی اون قطعات الکتریکی هویه شده است . Pcb در حقیقت 2 کار رو انجام میده ... اولا قطعات بر روی اون سوار میشن ... ثانیا ارتباط میون قطعات الکترونیکی برقرار میشه ... میدونیم که وقتی میخوایم قطعات الکترونکی رو به هم اتصال بدیم این کار رو با سیم انجام میدیم ... Pcb شامل ارتباطات الکترونیکی میشه که قطعات الکترونیکی رو به هم اتصال میده ... در شکل زیر یک نمونه pcb رو مشاهده میکنید ...

ادامه دارد ...

Pcb ها میتونن یه لایه ... دو لایه ... چهار لایه ... 8 لایه ... 12 لایه و ... باشند که بسته به نوع نیاز طراح برد الکترونیکی میتونه تعداد لایه های pcb رو افزایش بده ..

2: مقاومت :
--------------------
مقاومت قطعه ای الکتریکی است که ...

3- خازن
--------------------
ادامه دارد ...

4- ترانزیستور
--------------------
ادامه دارد ...

5- سلف
--------------------
ادامه دارد ...

6- آیسی :
-------------------
ادامه دارد ...

7- رگولاتور
------------------
ادامه دارد ...

8- دیود
-----------------
ادامه دارد ...