摘要:突发奇想,于是便写了一个小程序用于控制台灯,这几天功能也在不断的完善中,目前基本已经完成.下面进行功能的简述的代码的分析.整体设计包含下位机程序和上位机程序.下位机用的c语言,上位机用的c# .功能显示见视频整个系统功能包括:定时采集室温在电脑右下角显示,可联网校准电子时钟,可以电脑端快捷键控制台灯.视频中展示的顺序为1,自动获取温度,图标动态显示室温 2,手动获取温度 3,按钮控制台灯 4 ,快捷键控制台灯 5,联网校准电子时钟 6最后展示在任何界面只要按下快捷键便可以打开台灯(windows hook).下面进行整个系统代码和原理的介绍.下位机,硬件上 ,包括 51单片机,ds13...
阅读全文
随笔分类 - C#编程
摘要:博客园 :梦工厂2012 本月由于事情太多,没能有太多的时间去写博客.不过还好在月底抽时间写了这个多线程网络通信的程序 .程序说明:控制端 创建一个写线程threadWrite和一个读线程threadRead ,写线程用于向控制端发送操控指令.读线程用于读取被控制端姿态数据.这里C# 编写了一个模拟被控端ServerConsole .源代码如下, 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Net....
阅读全文
摘要:结合Opengl和SerialPort控件写了这个姿态显示程序,程序较简单,前面有篇简单的四轴上位机模拟显示四轴状态也可以看看.本程序界面如下:我这里是用的 51单片机模拟输出 欧拉角,上位机接收参数,并显示姿态.过几天有时间了解算传感器中的数据传给上位机.软件就不共享了,核心代码共享给大家,对...
阅读全文
摘要:最近小了个串口小程序 ,发现在调用 close()方法关闭串口时,程序被挂起.查找了网络资料,网上说这是C#的一个bug.摸索了半天,结合前人的程序整理出来一段代码,与大家分享.程序只有接收的部分. 1 using System; 2 using System.Collections.Generic; 3 using System.ComponentModel; 4 using System.Data; 5 using System.Drawing; 6 using System.Linq; 7 using System.Text; 8 using System.Windows.Forms..
阅读全文
摘要:涉及到程序导出Excel报表,所以就花了两个收集了一下资料,这了这个程序,分享给大家.程序说明:程序读取 gridView 表格中内容,导入到Excel ,自定义 页眉 页脚和添加页码,以及横向打印.列宽根据列的多少列自适应,表格高度自适应,自动换行等.使用需要添加 引用 Microsoft.Office.Interop.Excel,代码如下 :出处C# 导出 Excel 自定义输出格式 /// <summary> /// 将GridView内的内容导出到Excel /// </summary> /// <param name="xlsName"
阅读全文
摘要:这里只是简单介绍一下思路,因为我的上位机是用C#开发的,所以绘图方面用的是opengl 的csgl框架,虽然版本不高,但已绰绰有余!这是简单写的一个小程序,C#下环境配置可以参考我上一篇博客。程序思想虽然简单,但是不太好想到。程序界面如图:程序我只是简单的 使用按键 改变欧拉角,可以简单的看到转动的效果。核心代码如下 :这里是按键改变输入欧拉角的大小。 private void OpenGLBase_KeyDown(object sender, KeyEventArgs e) { switch (e.KeyCode) { ...
阅读全文
摘要:1.因为作四轴项目的需要(在上位机显示飞行器姿态),找了点时间学习了一下OpenGl,什么是OpenGL,OpenGL是一个功能强大的开放图形库(Open Graphics Library)。其前身是SGI公司为其图形工作站开发的IRIS GL。为使其能够更加容易地移植到不同的硬件和操作系统,SGI开发了OpenGL。从程序开发人员的角度来看,OpenGL是一组绘图命令的API集合。利用这些API能够方便地描述二维和三维几何物体,并控制这些物体按某种方式绘制到显示缓冲区中。OpenGL的API集提供了物体描述、平移、旋转、缩放、光照、纹理、材质、像素、位图、文字、交互以及提高显示性能等...
阅读全文
摘要:部分代码来自网络,自己收集整理写出来的这个小程序可以对本地IP地址的设置,源码公开!因为IP设置程序程序需要使用到WMI,因此首先添加对WMI的引用,打开【解决方案资源管理器】,在【引用】项上单击右键,并选择【添加引用】菜单项,有需要的可以拿用,程序界面如图:这里用到一类MaskedTextBox控件,具体使用大家可以百度一下,这里便不多说。源代码如下: 1 using System; 2 using System.Collections.Generic; 3 using System.ComponentModel; 4 using System.Data; 5 using Sy...
阅读全文
摘要:花了一天,随便写的个小程序,源码公开,有需要的可以 拿去。我写这个程序的本意是可以ping有固定IP的圈存机,如何网络不通会自己返回其相应的位置。程序说明,程序可以自动ping预先写入的一组IP地址,也可以手动ping输入的ip.代码如下: 1 using System; 2 using System.Collections.Generic; 3 using System.ComponentModel; 4 using System.Data; 5 using System.Drawing; 6 using System.Linq; 7 using System.Text; 8...
阅读全文
摘要:目前我这已经开始四轴操控平台程序的编写,今天把界面做好了,添加了手柄信号采集和视频传输的功能。程序中的 连接手柄按钮使能 设置网络按钮 ,设置网络按钮使能 启动通信,这里是为了防止误动作 如图:还缺少 下位机传回信息显示这一部分,这个我的方案是用GDI绘图,在videoSourcePlay控件上叠加显示。最后做成这样的效果:程序源码我这里就不上传了,结合这两篇文章《上位机获取Mjpeg视频流程序(C#.NET语言+AForge.NET控件)(待测试)》和《Joystick using C# (GUAN`LI) 之完成篇》和自学习能力完全能够把这个程序 写出来的。程序编写中我会随时与大家分...
阅读全文
摘要:最近打算学习一下AForge.NET,AForge.NET是一个专门为开发者和研究者基于C#框架设计的,这个框架提供了不同的类库和关于类库的资源,还有很多应用程序例子,包括计算机视觉与人工智能,图像处理,神经网络,遗传算法,机器学习,机器人等领域。这个框架由一系列的类库组成。主要包括有: AForge.Imaging —— 一些日常的图像处理和过滤器 AForge.Vision —— 计算机视觉应用类库 AForge.Neuro —— 神经网络计算库AForge.Genetic -进化算法编程库 AForge.MachineLearning —— 机器学习类库 AForge.Ro...
阅读全文
摘要:函数声明function SetCooperativeLevel(hWnd: HWND; dwFlags: DWORD): HResult; stdcall;参数介绍hWnd DirectDraw具体指向的窗体,在所有的情况下,只需使用主窗体句柄。dwFlags控制标志参数,直接影响DirectDraw和Windows协同工作的方式。下面为说明:DDSCL_ALLOWMODEX允许使用Mode X显示模式。只有当DDSCL_EXCLUSIVE 和DDSCL_FULLSCREEN标志存在的时候才能使用 。DDSCL_ALLOWREBOOT当处于独占(全屏)模式时,允许Ctrl+Alt+Del被检
阅读全文
摘要:经过几天的查找资料,已经完成上位机对冠丽(GUAN`LI)四通摇控信号的采集,程序开发环境 VS2008+DirectX ,具体关于 DirectInput 的使用方法这里不做多介绍 ,网上有很多资料。这是程序 运行截图 1 using System; 2 using System.Collections.Generic; 3 using System.ComponentModel; 4 using System.Data; 5 using System.Drawing; 6 using System.Linq; 7 using System.Text; 8 using System.W...
阅读全文
摘要:最近在写C#相关的程序,调试程序的时候遇到的这个问题,所以转载过来,也方便自己以后使用。出错信息为: 检测到LoaderLock,正试图在OS加载程序锁内执行托管代码,不要尝试在DllMain或映像初始化函数内运行托管代码,这样会导致应用程序挂起。 解决办法: 在"Debug"菜单下----"Exceptions"----"Managed Debugging Assistants"中勾掉"LoaderLock" 说明: .NET2.0中增加了42种非常强大的调试助手(MDA),Loaderlock是其中之一。Loa
阅读全文
摘要:对游戏手柄进行操作,大概有两种方式:采用系统API或者使用DirectInput操作游戏手柄设备。采用系统API是一种最简单的方式,因为系统已帮我们封装好了所有细节,我们只要在程序中定时取得游戏手柄设备的状态就可以了(轮循)。操作游戏手柄(杆)的API有以下几个:函数名称函数说明joyGetNumDevs获取当前系统支持的游戏设备数量joyGetDevCaps查询获取指定的游戏杆设备以确定其性能joySetCapture向系统申请捕获某个游戏设备并定时将该设备的状态值通过消息发送到某个窗口joyReleaseCapture释放对某个游戏设备的捕获joyGetPos获取游戏设备的坐标位置和...
阅读全文

浙公网安备 33010602011771号