我正在尝试完全使用R控制数模转换器-甚至有可能。
我从设备中获得的源代码似乎是在将特定的字节写入内存映射文件,因此我认为我会使用mmap包并尝试执行相同的操作。
这是正确的方法吗?即我可以通过简单地写入内存映射文件来复制此C#代码吗?在这种情况下,为“ EECI_DAC8U10_IN”
导入System.IO 导入System.IO.MemoryMappedFiles
公开课表格1 '在运行此示例之前,加载DAC-8U10设备驱动程序 “这是最简单的示例,它在通道1上设置模拟电平,如果未加载DAC-8U10设备驱动程序,则会生成一条错误消息
Dim mask, bit, X As Integer
Dim relayByte = New Byte(30) {}
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Label6.Text = Str(Int(Val(TextBox3.Text) / 4)) 'show MS byte
Label7.Text = Str(Val(TextBox3.Text) - (Val(Label6.Text) * 4)) 'show LS byte
relayByte(3) = Val(Label6.Text) 'store MS byte
relayByte(4) = Val(Label7.Text) 'store LS byte
SetOutput() 'set
End Sub
Private Sub SetOutput() 'this is the single line of code needed to set all 8 analog levels on the DAC-8U10
Try
MemoryMappedFile.OpenExisting("EECI_DAC8U10_IN").CreateViewAccessor(0, relayByte.Length).WriteArray(Of Byte)(0, relayByte, 0, relayByte.Length) 'send byte array to DAC-8U10 device driver
Catch noFile As FileNotFoundException
MsgBox("No Data - Please load DAC-8U10 Driver", , "System Message") 'put code here to autostart software interface
End
Catch Ex As Exception
MsgBox(Ex.GetType.ToString, , "System Message")
End
'exception code can go here
End Try
End Sub
结束班级