资源简介
调用cyUSB.dll类库进行USB串口通讯,开发上位机适用。
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using CyUSB;
using System.Threading;
namespace CSharpUSBTest {
public partial class Form1 : Form {
App_PnP_Callback evHandler;
CyUSBDevice loopDevice = null;
USBDeviceList usbDevices = null;
CyBulkEndPoint inEndpoint = null;
CyBulkEndPoint outEndpoint = null;
Thread tXfers;
bool bRunning = false;
int value;
long outCount inCount;
const int XFERSIZE = 256;
byte[] outData = new byte[XFERSIZE];
byte[] inData = new byte[XFERSIZE];
// These 2 needed for TransfersThread to update the UI
delegate void UpdateUICallback();
UpdateUICallback updateUI;
public Form1() {
InitializeComponent();
// Setup the callback routine for updating the UI
updateUI = new UpdateUICallback(StatusUpdate);
// Setup PnP event handling
evHandler = new App_PnP_Callback(PnP_Event_Handler);
// Create a list of CYUSB devices
usbDevices = new USBDeviceList(CyConst.DEVICES_CYUSB evHandler);
setDevice();
}
public void setDevice() {
if (usbDevices.Count > 0)
loopDevice = usbDevices[0x0547 0x0080] as CyUSBDevice;
StartBtn.Enabled = (loopDevice != null);
if (loopDevice != null)
Text = loopDevice.FriendlyName;
else
Text = “Bulkloop - no device“;
// Set the in and out endpoints per the selected radio buttons.
EptPair1Btn_Click(this null);
}
public void PnP_Event_Handler(IntPtr pnpEvent IntPtr hRemovedDevice) {
if (pnpEvent.Equals(CyConst.DBT_DEVICEREMOVECOMPLETE)) {
usbDevices.Remove(hRemovedDevice);
//loopDevice = null;
setDevice();
}
if (pnpEvent.Equals(CyConst.DBT_DEVICEARRIVAL)) {
usbDevices.Add();
setDevice();
}
}
private void Form1_FormClosing(object sender FormClosingEventArgs e) {
// If close was selected while running the loopback shut it down.
if (bRunning)
StartBtn_Click(this null);
if (usbDevices != null) usbDevices.Dispose();
}
private void EptPair1Btn_Click(object sender EventArgs e) {
if (loopDevice != null) {
if (EptPair1Btn.Checked) {
outEndpoint = loopDevice.EndPointOf(0x02) as CyBulkEndPoint;
inEndpoint = loopDevice.EndPointOf(0x86) as CyBulkEndPoint;
} else {
outEndpoint = loopDevice.EndPointOf(0x04)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 24576 2011-02-28 15:27 CSharpUSBTest\CSharpUSBTest\bin\Debug\CSharpUSBTest.exe
文件 30208 2011-02-28 15:27 CSharpUSBTest\CSharpUSBTest\bin\Debug\CSharpUSBTest.pdb
文件 5632 2005-11-11 22:25 CSharpUSBTest\CSharpUSBTest\bin\Debug\CSharpUSBTest.vshost.exe
文件 118784 2009-06-05 16:12 CSharpUSBTest\CSharpUSBTest\bin\Debug\CyUSB.dll
文件 3326 2011-02-28 15:12 CSharpUSBTest\CSharpUSBTest\CSharpUSBTest.csproj
文件 6323 2011-02-28 15:23 CSharpUSBTest\CSharpUSBTest\Form1.cs
文件 12126 2011-02-28 15:27 CSharpUSBTest\CSharpUSBTest\Form1.Designer.cs
文件 890 2011-02-28 15:28 CSharpUSBTest\CSharpUSBTest\obj\CSharpUSBTest.csproj.FileListAbsolute.txt
文件 784 2011-02-28 15:22 CSharpUSBTest\CSharpUSBTest\obj\Debug\CSharpUSBTest.csproj.GenerateResource.Cache
文件 24576 2011-02-28 15:27 CSharpUSBTest\CSharpUSBTest\obj\Debug\CSharpUSBTest.exe
文件 30208 2011-02-28 15:27 CSharpUSBTest\CSharpUSBTest\obj\Debug\CSharpUSBTest.pdb
文件 180 2011-02-28 15:22 CSharpUSBTest\CSharpUSBTest\obj\Debug\CSharpUSBTest.Properties.Resources.resources
文件 4562 2011-02-28 15:22 CSharpUSBTest\CSharpUSBTest\obj\Debug\ResolveAssemblyReference.cache
文件 457 2011-02-28 15:10 CSharpUSBTest\CSharpUSBTest\Program.cs
文件 1192 2011-02-28 15:10 CSharpUSBTest\CSharpUSBTest\Properties\AssemblyInfo.cs
文件 2793 2011-02-28 15:10 CSharpUSBTest\CSharpUSBTest\Properties\Resources.Designer.cs
文件 5612 2011-02-28 15:10 CSharpUSBTest\CSharpUSBTest\Properties\Resources.resx
文件 1070 2011-02-28 15:10 CSharpUSBTest\CSharpUSBTest\Properties\Settings.Designer.cs
文件 249 2011-02-28 15:10 CSharpUSBTest\CSharpUSBTest\Properties\Settings.settings
文件 928 2011-02-28 15:10 CSharpUSBTest\CSharpUSBTest.sln
..A..H. 14336 2011-02-28 15:31 CSharpUSBTest\CSharpUSBTest.suo
目录 0 2011-02-28 15:27 CSharpUSBTest\CSharpUSBTest\obj\Debug\Refactor
目录 0 2011-02-28 15:10 CSharpUSBTest\CSharpUSBTest\obj\Debug\TempPE
目录 0 2011-02-28 15:23 CSharpUSBTest\CSharpUSBTest\bin\Debug
目录 0 2011-02-28 15:27 CSharpUSBTest\CSharpUSBTest\obj\Debug
目录 0 2011-02-28 15:10 CSharpUSBTest\CSharpUSBTest\bin
目录 0 2011-02-28 15:22 CSharpUSBTest\CSharpUSBTest\obj
目录 0 2011-02-28 15:10 CSharpUSBTest\CSharpUSBTest\Properties
目录 0 2011-02-28 15:27 CSharpUSBTest\CSharpUSBTest
目录 0 2011-02-28 15:10 CSharpUSBTest
............此处省略3个文件信息
相关资源
- C# 调用win32 api函数-user32.dll详细说明
- C# 调用BarTender打印条码DEMO
- 大型比赛竞赛抽签系统 可打印 c# vs
- C#编写的Gerber查看器
- lua C# .Net4.0 vs2010 LuaInterface
- C#十六进制编辑器
- 明华URF-35H读卡器 C#读写源码 为大家
- C#文件流读取CSV文件
- c#读写PDF文件sql
- C# winform Socket大文件传输
- c#车牌识别系统附30张测试图片
- 《C#面向对象程序设计》源代码(CS)
- 金旭亮《C#面向对象程序设计》教案
- 试题库管理系统毕业论文(C#)源程序
- 学校网站原代码(C#.NET)
- C#-数据库操作技术-员工管理系统
- c#web开发入门经典
- C#与Matlab混合编程的几种方式
- c# 开发与 mysql数据库实现的增删改查
- C#异步操作 异步查询数据库 异步处理
- Basler相机通过IO触发源码
- [源代码] 《领域驱动设计 (C# 2008 实
- 松下PLC与C#通讯串口调试入门教程.z
- USB 继电器控制器 LCUS-1 保证能用 c#
- C# AES加密解密小工具
- C#圆形按钮,非常漂亮动态~~
- [精]C#仿QQ右下角弹出提示框()
- C#进程间通信-共享内存代码
- 有史以来最简单的三层(C#)
- vb调用c#编写的串口DLL文件(vb源码
评论
共有 条评论