Showing posts with label Parallel Port. Show all posts
Showing posts with label Parallel Port. Show all posts

Tuesday, 24 June 2008

Programming the Parallel Port (Interfacing the PC for Data Acquisition and Process Control) E-Book

Parallel Port နဲ႔ပါတ္သတ္တဲ့ ေနာက္ E-Book တစ္အုပ္ပါ။ ကၽြန္ေတာ္လည္း အခုေနာက္ပိုင္း Project ေတြက Parallel Port ေတြနဲ႔ မပါတ္သတ္ေသးေတာ့ လံုး၀ မဖတ္ရေသးပါဘူး။ ေလ့လာခ်င္သူေတြ အဆင္ေျပေအာင္လို႔ တင္ေပးလုိက္ပါတယ္။

``ဒီစာအုပ္ကို ေပးတာက ညီမေလး (ကၽြန္ေတာ့္ထက္ငယ္မယ္ထင္လို႔ပါ) အယ္လ္ပိုင္း ပါ။´´
Programming the Parallel Port
(Interfacing the PC for Data Acquisition and Process Control)

Friday, 4 April 2008

Parallel Port Complete (Programming, Interfacing, PC parallel port)

ဟူး …. ဒီစာအုပ္ကို ရွာလိုက္ရတာဗ်ာ။ ခုမွေတြ႕တယ္ Parallel port နဲ႔ပါတ္သတ္တာအစံု Software ေကာ၊ Hardware ေကာ၊ Basics ေကာ အကုန္ပါတယ္။ ဖတ္သာၾကည့္လိုက္ၾကေပေတာ့။

Parallel Port Complete (Programming, Interfacing, PC parallel port)

Thursday, 3 April 2008

Parallel Port Monitor Program

ဒီ Software ေလးက Parallel port ကို Monitor လုပ္တဲ့ Program ေလးပါ။ port ရဲ႕ ဘယ္ bit မွာ Data (Low/ High) ရွိလဲဆိုတာကို ျပတာပါ။ Monitor program သက္သက္ပဲျဖစ္လို႔ Hyper Terminal လိုေတာ့ Send/ Receive data လုပ္လို႔မရဘူးေပါ့။
Download : Port Monitor

Wednesday, 2 April 2008

Parallel Port (LPT) Vs Serial Port (RS232)

Ports သေဘာတရားက ရွင္းပါတယ္ Parallel port က Parallel data transmission လုပ္ၿပီးေတာ့၊ Serial port က Serial data transmissionလုပ္တာပါပဲ။ RS232 ကအလြန္ရွင္းပါတယ္ TX (transmit), RX (receive) channels နဲ႔ Signal Ground မွန္ရင္ ရပါတယ္။ Parallel port (LPT) က ေတာ့ 8 bit တစ္ၿပိဳင္နက္ပို႔လို႔ရေတာ့ channel မ်ားမ်ားကို ထိန္းႏိုင္တာေပါ့။ သူ႔ရဲ႕ Hexa တန္ဖိုးေတြကို တြက္တဲ့ေနရာမွာ တစ္ခုသတိထားပါ သူ႔ရဲ႕MSB (Most Significant Bit) က ေရွ႕ဆံုးက စပါတယ္။ ဥပမာ - 1000 0000 = 1, 0100 0000 = 2 အဲလိုေတြသြားပါတယ္။ ၂ခုလံုးက dc 3.3 V ကိုသံုးပါတယ္။ ကၽြန္ေတာ္ inpout.dll ဖိုင္ရဲ႕ မူရင္း VC++ program ကိုတင္ေပးလုိက္ပါတယ္။ Windows versions သံုးတဲ့ ေပၚမူတည္ၿပီး ကြဲသြားတတ္ပါတယ္။ ဒါေၾကာင့္ ဒီ VC++ program နဲ႔ dll ဖိုင္အရင္ထုတ္။ System32 folder ထဲကိုကူူးထဲ့ၿပီးမွ Program ကို run ပါ။

Download : VC++ program inpout32.dll

Parallel data transmission (Click on Image)

Serial data Transmission (Click on Image)

တစ္ခုသတိျပဳရမွာက DB-25 (LTP port) က 25 pin ရွိၿပီးေတာ့ Centronics Header က 36 pin ရွိတယ္ဆိုတာပါပဲ။ ေအာက္က ဇယားမွာ သူတို႔ႏွစ္ခုရဲ႕ ဆက္သြယ္ပံုေတြပါပါတယ္။

Tuesday, 1 April 2008

Controlling Parallel port with Visual Basic

Visual Basic နဲ႔ Parallel Port (LPT, Printer) ကို Control (Read, Write) လုပ္တဲ့ ပ႐ိုဂရမ္ေလးပါ။ ေမ့သြားမွာစိုးလို႔ တင္ထားတာ။ သူ႔မွာ VB Control Icon (.OCX) မရွိပါဘူး။ inpout32.dll file တစ္ခုေတာ့လိုပါတယ္။ အဲဒါက သပ္သပ္ရွာၿပီး Windows – System32 folder ထဲကိုထည့္ေပးရပါတယ္။ အင္တာနက္မွာ အမ်ားႀကီးရွိပါတယ္။ ဒီမွာ www.dll-files.com/dllindex/dll-files.shtml?inpout32 ေဒါင္းလုပ္ရင္ရပါတယ္။ သူ႔ကို System32 folder ထဲထည့္ေပးလုိက္ပါ။ ၿပီးရင္ေအာက္က Source code ေတြကို ကူးထည့္လိုက္ပါ။ Screen Design ကိုေတာ့ ေအာက္မွာျပထားတဲ့အတိုင္းလုပ္ေပါ့။ အရမ္းလြယ္ပါတယ္။ အခ်ိန္ေတြတြက္ထားတာက အပိုေတြပါ။ ျဖဳတ္ပစ္လို႔ရတယ္။

ဒါက Form Code မွာကူးထဲ့

Private Sub send_Click()

PortAddress = Val(&H37F)
Out PortAddress, Val(Text1.Text)
End Sub

Private Sub start_click()
Dim speed As Double
Dim fre As Double
Text1.Text = "0"

Dim ino As Integer
Dim GMTime As SYSTEMTIME
Dim TheTime As String
Dim a As Double, b As Double
GetSystemTime GMTime

a = GMTime.wSecond + 0.001 * GMTime.wMilliseconds
For x = 1 To 10000
PortAddress = Val(&H378)

ino = InValue(PortAddress + 1)
Next

GetSystemTime GMTime
Timer1.Interval = 1
b = GMTime.wSecond + 0.001 * GMTime.wMilliseconds
speed = 0.127 / (b - a)

Text1.Text = speed
End Sub

Private Sub stop_click()
Text1.Text = "0"
End Sub

ဒါက Module Code မွာကူးထဲ့

Public Declare Function InValue 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)
Public Declare Sub GetSystemTime Lib "kernel32" (lpSystemTime As SYSTEMTIME)
Public Declare Function SetSystemTime Lib "kernel32" (lpSystem
Time As SYSTEMTIME) As Long

Public Type SYSTEMTIME
wYear As Integer
wMonth As Integer

wDayOfWeek As Integer
wDay As Integer
wHour As Integer
wMinute As Integer

wSecond As Integer
wMilliseconds As Integer

End Type

အဲဒီမွာပါတဲ့ (&H378) က Parallel port ရဲ႕ Address ပါ။ သူက 8 Channels ရွိပါတယ္။ ေအာက္ကပံုကိုၾကည့္ပါ။ 0x378 ကေန 0x37F ဆိုေတာ့ I/O ၈ လုိင္းကို ထိန္းခ်ဳပ္လို႔ရတဲ့သေဘာေပါ့။