使用pc的并行端口控制5个设备[vb.net 2010] [英] control 5 appliances using pc's parallel port[vb.net 2010]

查看:79
本文介绍了使用pc的并行端口控制5个设备[vb.net 2010]的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的电脑的操作系统

windows 7终极32位

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

登录访问权限:用户名和密码 - 管理员



i我正在开发一个可以通过pc控制5台设备的项目并行端口/打印机端口。

当我运行程序时,它将首先出现一个登录表单

然后当我进入。

它总是返回这个端口不存在。

即使我有端口也无法检测到它..我不知道我的代码有什么问题。



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

Dim FILE_NAME As String =LPT1



如果是System.IO.File.Exists(FILE_NAME)然后

Dim objWriter As New System.IO.StreamWriter(FILE_NAME)

objWriter.Write(hi)

objWriter.Close()

MsgBox(ok)

否则

MsgBox(端口不存在)

结束If

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

然后登录后,下一个表格是主页。你会看到开关按钮可以打开和关闭设备。当我点击任何这个按钮时会出现错误提示。它说对象引用未设置为对象的实例



NullReferenceException未处理。



私人Sub btn_app1_Click(ByVal sender As System.Object,ByVal e As System.EventArgs)处理btn_app1.Click

如果btn_app1.Text =ON那么

btn_app1.Text = 关闭

btn_app1.BackColor = Color.Red

io(0)

否则

btn_app1.Text =ON

btn_app1.BackColor = Color.Green

io(1)

结束如果

结束Sub $ / $


Private Sub btn_app2_Click(ByVal sender As System.Object,ByVal e As System.EventArgs)处理btn_app2.Click

如果是btn_app2。 Text =ON然后

btn_app2.Text =OFF

btn_app2.BackColor = Color.Red

io(0)

Else

btn_app2.Text =ON

btn_app2.BackColor = Color.Green

io(2)

结束如果

结束子



私人子btn_app3_Cli ck(ByVal sender As System.Object,ByVal e As System.EventArgs)处理btn_app3.Click

如果btn_app3.Text =ON那么

btn_app3.Text =关闭

btn_app3.BackColor = Color.Red

io(0)

否则

btn_app3.Text = ON

btn_app3.BackColor = Color.Green

io(4)

结束如果

End Sub



Private Sub btn_app4_Click(ByVal sender As System.Object,ByVal e As System.EventArgs)处理btn_app4.Click

如果btn_app4.Text =ON然后

btn_app4.Text =OFF

btn_app4.BackColor = Color.Red

io(0)

Else

btn_app4.Text =ON

btn_app4.BackColor = Color.Green

io(8)

结束如果

End Sub



Private Sub btn_app5_Click(ByVal sender As System.Object,ByVal e As System。 EventArgs)处理btn_app5.Click

如果btn_app5.Text =ON那么

btn_app5.Text =OFF

btn_ap p5.BackColor = Color.Red

io(0)

否则

btn_app5.Text =ON

btn_app5.BackColor = Color.Green

io(16)

结束如果

End Sub



私有子io(ByVal位为整数)

val = axHwinterface1.InPort(888)

axHwinterface1.OutPort(888,CShort(val或bit) ))

结束次级



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

请帮我解决这个问题。我需要你的帮助..请提前谢谢..

每一个回复都非常感谢



如果你想看到我的话整个项目你可以在这里下载



http://www.mediafire.com/?1zvx1ty736r2nnb

解决方案

< blockquote>你绝对不会这样做!

看看这个:未经审查的I / O端口 - 1 - 使用并行端口控制LED(发光二极管) [ ^ ] - 它向您展示了如何使用LED为您想要控制的机器以各种语言进行操作。



请注意,您无法从并行端口为机器供电 - 如果您尝试,可能会损坏您的硬件!


my pc''s operating system
windows 7 ultimate 32 bit
-------------------------
login access: username & password - admin

i am working on a project that will control 5 devices through pc parallel port/printer port.
when i run the program it will first appear a loginform
then when i enter.
it always returns that the port doesnt exist.
even though i have the port it cant detect it.. i dont know what is wrong with my code.

--------------------------------------------------------
Dim FILE_NAME As String = "LPT1"

If System.IO.File.Exists(FILE_NAME) Then
Dim objWriter As New System.IO.StreamWriter(FILE_NAME)
objWriter.Write("hi")
objWriter.Close()
MsgBox("ok")
Else
MsgBox("port does not exist")
End If
------------------------------------------------------
then after the login the next form is homepage. there you''ll see the switch buttons that will turn on and off a device. when i clicked any of this buttons an error will prompt. its say that object reference not set to an instance of an object

NullReferenceException was unhandled.

Private Sub btn_app1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_app1.Click
If btn_app1.Text = "ON" Then
btn_app1.Text = "OFF"
btn_app1.BackColor = Color.Red
io(0)
Else
btn_app1.Text = "ON"
btn_app1.BackColor = Color.Green
io(1)
End If
End Sub

Private Sub btn_app2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_app2.Click
If btn_app2.Text = "ON" Then
btn_app2.Text = "OFF"
btn_app2.BackColor = Color.Red
io(0)
Else
btn_app2.Text = "ON"
btn_app2.BackColor = Color.Green
io(2)
End If
End Sub

Private Sub btn_app3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_app3.Click
If btn_app3.Text = "ON" Then
btn_app3.Text = "OFF"
btn_app3.BackColor = Color.Red
io(0)
Else
btn_app3.Text = "ON"
btn_app3.BackColor = Color.Green
io(4)
End If
End Sub

Private Sub btn_app4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_app4.Click
If btn_app4.Text = "ON" Then
btn_app4.Text = "OFF"
btn_app4.BackColor = Color.Red
io(0)
Else
btn_app4.Text = "ON"
btn_app4.BackColor = Color.Green
io(8)
End If
End Sub

Private Sub btn_app5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_app5.Click
If btn_app5.Text = "ON" Then
btn_app5.Text = "OFF"
btn_app5.BackColor = Color.Red
io(0)
Else
btn_app5.Text = "ON"
btn_app5.BackColor = Color.Green
io(16)
End If
End Sub

Private Sub io(ByVal bit As Integer)
val = axHwinterface1.InPort(888)
axHwinterface1.OutPort(888, CShort(val Or bit))
End Sub

--------------------------------------------------------
please help me im new in this.. i need your help guys.. thank you in advance..
every response is very much appreciated

if you want to see my whole project you can Download it here

http://www.mediafire.com/?1zvx1ty736r2nnb

解决方案

You definitely don''t do it like that!
Have a look at this: I/O Ports Uncensored - 1 - Controlling LEDs (Light Emiting Diodes) with Parallel Port[^] - it shows you how to do it in a variety of languages using LEDs for the machines you want to control.

Do be aware that you can''t power the machines from the parallel port - you will probably damage your hardware if you try!


这篇关于使用pc的并行端口控制5个设备[vb.net 2010]的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆