PDA

View Full Version : پورت LPT در VB



h_shirazee
یک شنبه 09 بهمن 1384, 00:56 صبح
سلام خدمت تمامی دوستان گرامی !
من می خواستم بپرسم چه جوری میشه توی VB با پورت LPT1 ارتباط بر قرار کرد ؟
اطلاعات برای اون پورت فرستاد یا از اون اطلاعات گرفت .
اگه کسی بتونه کمکی به من بکنه ، خیلی ممنون میشم

saina2006
یک شنبه 09 بهمن 1384, 06:27 صبح
مبانی پورت موازی ( Parallel )

پورت پارالل استاندارد کامپیوتر یک درگاه ۲۵ پینی است که ۱۲ پین آن خروجی می باشد . از این ۱۲ خط ، ۸ خط بعنوان داده خروجی (‌ DATA Port ) و ۴ خط بعنوان خط کنترل ( CONTROL Port ) می باشند . ۵ پین نیز ورودی بوده و بعنوان خطوط وضعیت ( STATUS Port ) استفاده می شوند .
۸ پین باقیمانده نیز زمین ( GROUND ) هستند .

خطوط پورت پارالل توسط سه آدرس I/O که هرکدام متناظر با یکی از سه پورت داده ، کنترل و و ضعیت است قابل دسترسی می باشند . آدرس پایه پورت پارالل در اکثر کامپیوترها 0x378 می باشد (‌ LPT 1 ) . بنابراین آدرس I/O برای پورت داده برابر 0x378 ، برای پورت status برابر 0x379 و برای پورت command برابر 0x37A می باشد .
پورت پارالل استاندارد دارای دو حالت توسعه یافته به نامهای ECP و EPP نیز می باشد .
بوسیله پورت پارالل می توانید مدارهای جانبی خود را به کامپیوتر متصل کنید . تنها نکته ای که در این بین وجود دارد چگونگی برنامه نویسی پورت پارالل و در نتیجه برقراری ارتباط با مدار جانبی است .

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

استفاده از کتابخانه Inpout32.dll : با استفاده از این dll می توان به پورتهای سیستم در محیطهای Win 9x/NT/2000/XP دسترسی داشت .
برای استفاده از این dll کافی است آنرا در دایرکتوری System32 ویندوزتان کپی کنید . سپس یک ماژوال به پروژه تان اضافه کرده و عبارت زیرا را در آن قرار دهید :


Public Declare Function Inp Lib "inpout32.dll" Alias "Inp32" (ByVal PortAddress As Integer) As Integer
Public Declare Sub Out Lib "inpout32.dll" Alias "Out32" (ByVal PortAddress As Integer, ByVal Value As Integer)


حال برای مثال با دستور زیر می توانید اطلاعاتی را روی پینهای DATA ی مربوط به پورت پارالل بنویسید :


Call Out(&H378, your_data)
البته DLL را من ندارم:گریه:

saina2006
یک شنبه 09 بهمن 1384, 12:45 عصر
این یکی را هم برات پیدا کردم که از هیچ API هم استفاده نمی کنه
البته هم برای com1 هست هم lpt1

Dim strTest as String
strTest = "This is the data I want To write."
'This will write strTest to LPT1
Open "LPT1:" For Output Access Write As #1
Print #1, strTest
Close #1
'This will write strTest to COM1
Open "COM1:" For Output Access Write As #1
Print #1, strTest
Close #1

saina2006
یک شنبه 09 بهمن 1384, 13:24 عصر
اینم یک برنامه نمونه برای ارسال و دریافت از هر پورت (parallel, serial, joystick, usb...)

Evil 69
پنج شنبه 25 مرداد 1386, 07:03 صبح
این یکی را هم برات پیدا کردم که از هیچ API هم استفاده نمی کنه
البته هم برای com1 هست هم
شما توی این راه نگفتید که چطور از پورت بخونیم
ایا میشه با دستور input این کارو کرد یا نه

arash_7796
یک شنبه 17 مرداد 1389, 18:37 عصر
سلام به همگی
درباره برنامه نویسی واسه رقص نور با دلفی کمک میخواستم .ممنون میشم راهنمایی کنید . در مورد فایل dll هم توضیح میخوام