我们公司写web的系统,要嵌入到别人的桌面系统中,现在有业务要做扫码功能。

在某宝上找了一个支持二次开发,并且是usb的(有串口的直接对接,但是一般电脑都没有这个接口放弃,找了一个usb的厂家)

该厂家usb接口是需要一个操作安装一个驱动来虚拟一个串口,以上步骤就跳过了,上代码先。

        /// <summary>/// 连接串口/// </summary>/// <param name="name">串口名称</param>public void SerialPortConn(string name){SerialPort serialPort = new SerialPort(name);serialPort.DataReceived += (object sender, SerialDataReceivedEventArgs e) =>{/*** 这里面是扫码器传过来的*/SerialPort sp = (SerialPort)sender;byte[] buffer = new byte[sp.BytesToRead];sp.Read(buffer, 0, sp.BytesToRead);// 这个判断是一般二维码比这个长,而这个长度更多的是扫码器系统的反馈if (buffer.Length == 6 || buffer.Length == 7){// 初步判定这里是扫码器的内容// 扫码器的内容是16进制,所以要用不一样的方式解码去判断string str = BitConverter.ToString(buffer);if (str == "04-D0-00-00-FF-2C"){MessageBox.Show("设置成功");return;}else if (str == "05-D1-00-00-01-FF-29"){MessageBox.Show("设置失败");return;}// 上面没有命中的话,就单单做是二维码内容string content = System.Text.Encoding.UTF8.GetString(buffer);// content 是二维码内容,开始你自己的业务吧}};serialPort.Open();}/// <summary>/// 发送指令/// </summary>/// <param name="bytes"></param>private void send(byte[] bytes){serialPort.Write(bytes, 0, bytes.Length);}/// <summary>/// 发送指令/// </summary>/// <param name="cmd"></param>private void send(string cmd){serialPort.Write(cmd);}

我对接的厂家是16进制的指令,文档描述是这样子的

代码是这样子写的,自己模仿模仿吧,我也不知道怎么说给你听了(还是说一下吧,就是字节数组,只是数组的每一项前面加一个x0)

var bytes = new byte[] {0x07,0xC6,0x04,0x08,0x00,0x8C,0x02,0xFE,0x99,
};
send(bytes);

这样就可以了。

====================================================================================

估计要被打死,上面的name怎么来,这个是自己捣鼓的,应该有更好的方案,当时我没有找到,暂时还没有用,先用着我的简单的方案先吧

大致思路是借助设备的串口,发送指令之后会有回应,得到正确的回应为我们要的设备,代码就不贴完整的了,看上面的代码自己整吧

// 获取所有串口的名称
string[] PortItems = SerialPort.GetPortNames();

C# 扫码器串口对接相关推荐

  1. Android 扫码器串口通讯

    最进接串口扫码器,参考 github上开源的串口通讯库https://github.com/cepr/android-serialport-api实现扫码器通讯. 1.集成 Android Studi ...

  2. vue 扫码枪 扫码墩 扫码器 中文输入影响 大小写影响 解决方案 js web端扫码枪对接 前端扫码枪 html扫码枪 vue扫码枪

    # vue3 扫马枪/扫马墩/扫码器 中文输入影响 大小写影响 解决方式 ## ps 你们觉得好用的话,能不能给我点个赞啊

  3. 扫码器:壹码通(EMT 6621)二维码带多个回车换行处理

    摘要:二维码运用越来越广泛了,目前在医院中一个二维码可以串联多个系统,二维码的内容也可以设置一些特殊字符去达成系统便捷性.本次遇到为二维码中开头内置了回车和空格,在程序判断为回车(KEY_ENTER) ...

  4. 商品扫码器驱动如何设置 商品扫码器驱动设置步骤

    商品扫码器驱动如何设置?商品扫码器驱动设置步骤,商品扫码器一般分为三种接口,分别为USB接口.串口和键盘口.只需要选择适合使用的接口,也就是说电脑或其他设备上有什么接口,就选择什么接口就对了,就大多数 ...

  5. C#光功率计_扫码器导入excel

    公司要求扫码器读入编码,然后光功率计取出数值,等完成后把两个数据导入excel 用了将近一个月 时间  以前在学校一直想学一款上位机的,但是C#,LABVIEW,QT,VC,deliphi 选择太多了 ...

  6. C# 控制新大陆扫码器自动扫码读取序列号

    在开始代码前先要准备好两件事: 首先,要安装新大陆的相应驱动,使得COM口能识别到扫码器. 其次,将扫码器切换到代码控制的自动扫码模式.这个找厂家要一下就行,他们会给你一串码,用扫码器扫一下这些码就能 ...

  7. 三菱PLC与扫码器通讯控制PLC工作

    实现目标: 1.通过扫码器,扫码到的二维码或者一维码 ,控制PLC的输出(对PLC的输出进行控制),本案例中通过扫描二维码控制Y0-Y3的点亮 2.熟悉232串口通讯RS通讯控制模式 硬件配置: 1. ...

  8. 虹科HK-NT 50网关让扫码器轻松连接工业PLC

    扫码器或扫码枪是一种读取条形码或二维码信息的机器.它利用发射出红外线光源,然后根据反射的结果,利用芯片来译码,最后再返回条形码或二维码所代表的正确字符.传统的扫码器主要应用在快递公司\仓储物流\仓库盘 ...

  9. 获取USB扫码器输入

    USB扫码器相当于键盘输入 重写onKeyDown方法监听输入 int count = 1; StringBuffer sb = new StringBuffer(); TextView tv;pub ...

最新文章

  1. win10环境下 运行debug程序
  2. 适用于Android的OpenSL ES指南-OpenSL ES的Android扩展
  3. TableLayoutPanel
  4. datagridview 设置选中行_Excel实用两大技巧,删除重复行,神奇选择性粘贴
  5. C#开发微信门户及应用(18)-微信企业号的通讯录管理开发之成员管理
  6. 2、CentOS中修改yum源
  7. CCNA培训课总结笔记--RIP的基本配置(五)
  8. 【转载】启发式搜索技术A*【译】
  9. Acwing:最长回文子串
  10. 2021-01-21安装FireFox插件FireBug和FirePath时遇到得坑(windows10)
  11. 在线去水印网站_一键去水印工具
  12. OSWorkflow(转载)
  13. CSS教程:认真学习haslayout
  14. 六十星系之11紫微破军坐丑未
  15. 懂得爱――在亲密关系中成长
  16. 率土之滨鸿蒙之初,实用主义大菜刀攻略:从赛季初到赛季末
  17. Tableau已经安装且重装时提示试用期结束了怎么办?(该方法已经过期!请到官网下载免费版,谢谢!)
  18. 如何将IE10降到IE9
  19. (二)Nick:句子成分和基本句型
  20. 舆情监控与python_python 舆情监控

热门文章

  1. 中央空调如何调节温度html,中央空调温度怎么设定 中央空调温度调节方法【详解】...
  2. 有什么建站软件可以快速建网站?
  3. 班章管家可靠安全月入5k怎样理财?怎样合理财脱节月光族?
  4. Homekit智能家居系列一智能触摸面板开关
  5. spa,ssr对seo的影响和区别
  6. MAUI 入门教程系列(4.通用主机)
  7. 不得不知的 “2021 阿里巴巴春招(实习生)” 那些事儿
  8. 【office 2019】不能显示公式解决办法
  9. 达势股份冲刺港股:年营收16亿 达美乐比萨是重要股东
  10. open3d.geometry.TriangleMesh有关函数(笔记2)