C#开发usb hid 简易GUI调试工具记录

一 背景

嵌入式开发过程中,usb,tcp等都是经常使用到的功能,在上位机和设备通过usb,tcp通信时,我们往往要先制定协议,然后再去实现;功能ok后,我们要优先验证接口,基本功能是否ok,其他同事再去进行上位机开发。而网上找的第三方工具,不一定能满足我们的要求,比如你加了crc校验,使用第三方工具就要自己先计算好crc字节,再去发送,特别不便;因此如果能按照我们的需求,自己搞一个简单的USB或TCP GUI来验证,那将会是一个不错的选择。这里记录下使用C#开发usb hid gui过程中的一些历程。

二 记录

  1. VS C#可以用来开发三种类型应用
    (1) Windows应用程序—带UI的exe
    (2) 控制台应用程序------无UI,命令行输出
    (3) 类库----------------不能直接运行,就是封装成dll库供调用
    Ps: 注意winForms窗体应用是事件驱动的,不会像控制台程序那样顺序执行,而是等待用户交互
    eg:工程目录
bin                                   ---编译输出目录
obj                                   ---临时编译文件
Form1.cs                        --- C#主窗体代码
Form1.Designer.cs         ---窗体设计代码,自动生成
Form1.resx                    ---资源文件,存储窗体UI资源
Program.cs                   ---入口点  应用程序启动代码
WinformsUsb.csproj    ---C#项目文件
WinformsUsb.csproj.user
  1. VS 属性配置
目标操作系统版本    -----应用程序可运行的最低操作系统版本
  1. UI工具箱选择
    如果是传统的winforms应用,选择.NET Framework组件就可以;
    通用windows组件,适用于触摸屏等移动设备

  2. 关于控件属性的常见说明

AllowDrop	是否允许拖放
Anchor	    是否与父容器边缘保持固定
AutoScroll	控制容器控件是否在其内容超出显示区域时自动显示滚动条
Padding	    控件内容与控件的内边距
Size	    设置控件的宽和高
MinimumSize	设置控件的最小尺寸限制
Magin	    控件和其容器的外边距
Location	Top,left边缘的距离
Forecolor	前景色,即文本内容颜色
backcolor	背景色
Autosize	指定控件是否根据内容自动调整大小
  1. 关于exe
    要想生成独立的exe文件,编译完之后,要右键项目发布下才行;发布配置要配置成独立发布,生成单个文件
目标框架  --选net8.0
部署模式 --独立
文件发布选项 --勾选“生成单个文件”

三 usb 上位机开发总结

  1. 先创建winForms窗体应用,然后项目右键nuget包管理,安装usb库HidSharp—using HidSharp引入
  2. 按照gpt提示,一点点加程序调试就行了(先设计GUI,添加控件,然后在控件绑定逻辑里面去进行软件实现)
  3. 注意控件绑定的事件,如果做了修改,产生新的事件触发函数,旧的事件函数并不会自动去掉,需要手动取Designer.cs里面删除
  4. 对于引入的库,右键转到定义,可以看到其实现,基本不用再查资料

PS:由于公司网络限制,没法贴图片,只能文字描述了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

苏州向日葵

您的鼓励是我创作的巨大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值