- 博客(13)
- 资源 (4)
- 收藏
- 关注
原创 结构化后,死在WriteFile()中的串口写函数
#include#include#include//填充配置数据到缓冲区中void coverConfig(BYTE *outData){ HANDLE hFile; hFile=CreateFile(_T("F://workcode//2008cplus//sendRs232c//calibaration.cfg"), GENERIC_READ|GENERIC_WRITE,
2010-10-28 17:35:00 4056
转载 串口参数
<br />波特率:<br /> 这是一个衡量通信速度的参数。它表示每秒钟传送的bit的个数。例如300波特表示每秒钟发送300个bit。当我们提到时钟周期时,我们就是指波特率例如如果协议需要4800波特率,那么时钟是4800Hz。这意味着串口通信在数据线上的采样率为4800Hz。通常电话线的波特率为14400,28800和36600。波特率可以远远大于这些值,但是波特率和距离成反比。高波特率常常用于放置的很近的仪器间的通信,典型的例子就是GPIB设备的通信。<br />数据位:<br /> 这是衡量通
2010-10-28 15:14:00 675
原创 串口信息
DCB.StopBits=ONESTOPBIT, 0而不是1,ONESSTOPBITS,1.5 stop bits.2,TWOSTOPBITS. hch_Write.hEvent=CreateEvent(NULL,TRUE,FALSE,NULL); if(!WriteFile(comhandle, outbuff, 1024, &towrite, &hch_Write)) { //HCH_TEST; if(GetLastError()==ERROR_IO_PENDING) //GetLastErro
2010-10-28 09:22:00 635
转载 c++位操作
<br />++位操作包括两种:传统的C语言方式的位操作和C++中利用bitset容器的位操作 一、传统的C方式位操作:1.基本操作: 使用一个unsigned int变量来作为位容器。2.操作符:| 按位或操作符:result=exp1|exp2;当exp1和exp2中对应位中至少有一个为1时,result中对应位为1,否则为0。& 按位与操作符::result=exp1&exp2;当exp1和exp2中对应位全为1时,result中对应位为1,否则为0。^ 按位异或或操作符:resu
2010-10-26 16:23:00 489
转载 数据输出控制输出格式
<br />iomanip.h中定义了许多控制符,这些控制符可以直接插入到流中,控制数据的输出格式。控制符有两种:控制常量和控制函数,控制常量定义在iostream.h中,控制函数定义在iomanip.h中。常用控制符见下表。<br />控制符<br />描述<br />备注<br />dec<br />hex<br />oct<br /> <br />按10进制输出<br />按16进制输出<br />按8进制输出<br />常量控制符<br />在iostream.h中<br /> <br />setf
2010-10-26 15:52:00 1327
转载 C++ 基础类型
<br />char :字符类型 <br />int : 整型 <br />float :单精度实型(浮点型) <br />double : 双精度实型 <br />unsigned : 无符号类型 <br />signed : 有符号类型 <br /> bool : 布尔类型 <br />true : 布尔类型的真值 <br />false : 布尔类型的假值 <br />void : 无类型 <br /> sizeof : 取得指定类型的所占用的范围 <br />typedef : 为某种类型取一别
2010-10-26 15:50:00 380
转载 vb没法定位.dll函数入口点
<br />找不到入口点有以下几种情况:<br /> 1、没有注意大小写。<br /> 在Win32中,DLL的函数和VB的函数中必须大小写相同。<br /> 2、没有声明入口函数。<br /> 你需要在DLL的*.def文件中加上入口函数,如:<br /> EXPORTS<br /> <br /> SetData @1<br /> GetData @2<br /> 这样VB程序就可以访问SetData和GetData函数了。其中@1、@2是这两个函数的
2010-10-19 22:28:00 2062
原创 WM_USER+1
<br />switch(m.Msg) {<br /> case winApi.WM_USER:<br /> ival1=(int)m.WParam;<br /> ival2=(int)m.LParam;<br /> if(ival1>=0)<br /> matterProgress.Value=ival1; //完成发布,100%<br />
2010-10-15 14:39:00 655
原创 PostMessage()
<br />BOOL WINAPI PostMessage(<br /> __in_opt HWND hWnd,<br /> __in UINT Msg,<br /> __in WPARAM wParam,<br /> __in LPARAM lParam<br />);<br />---------------------------------------<br />PostThreadMessage()
2010-10-15 10:50:00 613
原创 DateTimePicker 已过去的秒数间隔
<br />DateTimePicker的时间值转化为距1970年1月1日的秒数? someDateTime.Ticks<br />Ticks 属性<br /> 自 0001 年 1 月 1 日午夜 12:00:00 以来已经过的时间的以 100 毫微秒为间隔的间隔数<br /> <br />得到的值我100毫微秒的间隔数:<br /> DateTime timeTemp = new DateTime(1970, 1, 1, 0, 0, 0);<br /> so
2010-10-14 11:40:00 511
原创 超大的调用循环
顺着一个方法的调用走了两天,又设回来了超始的方法。不得不在心里再一次默念:这真得是面向对象的灾难! C#写的播放器界面,每个窗体文件有近一千行代码,有十几个窗体。方法的调用不仅在两三个类里到处调用,还有方法的循环调用(估计肯定会导致崩溃,这只是发生的概率问题了。) 阅读这样的代码,是一场磨炼,艰难的磨炼。 没有机会写C++的代码,也许,应该在这样的层面上,学习一下优秀软件架构的代码,在被丑陋了的代码折磨之后,至少应让自己被优美的代码熏陶熏陶,否则整个人都变形了。
2010-10-11 11:43:00 393
原创 __imp__ShellExecuteA
<br />link /subsystem:windows Hello1.obj user32.lib kernel32.lib 总是出错。 <br />error lnk1120; visual c++似乎总是和我过不去。<br /> 在学校学的全是C# 、java, 从没用vc编译过windows程序,现在要把它补回来。<br />
2010-10-10 23:38:00 580
QQ等级计算,好像是一个等差数列
2011-04-27
visual C 与windows编程学习参考
2010-10-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人