资源简介
C# 编写的 蓝牙GPS定位软件 可通过蓝牙GPS 校准时间
代码片段和文件信息
using System;
using System.IO;
using System.Drawing;
using System.ComponentModel;
using System.Windows.Forms;
using System.IO.Ports;
using System.Threading;
using System.Runtime.InteropServices;
using System.Collections;
interface ComPort{
void Open();
void Close();
void SetPortName(string name);
string GetPortName();
void SetBaudRate(int rate);
int GetBaudRate();
string ReadLine();
void SetLocalTime();
int ReadByte();
}
public struct SystemTime{
public short wYear;
public short wMonth;
public short wDayOfWeek;
public short wDay;
public short wHour;
public short wMinute;
public short wSecond;
public short wMilliseconds;
}
public class CommPort:ComPort
{
private string portName;
private int baudRate;
private byte Parity; // 0-4=nooddevenmarkspace
private byte StopBits; // 012 = 1 1.5 2
private int hComm = -1;
private bool opened = false;
private const uint GENERIC_READ = 0x80000000;
private const uint GENERIC_WRITE = 0x40000000;
private const int OPEN_EXISTING = 3;
private const int INVALID_HANDLE_VALUE = -1;
public CommPort(){
portName = portName==null?“COM!“:portName;
baudRate = baudRate==0?4800:baudRate;
Parity= 0;
StopBits =1;
// ReadTimeout =5000;
}
public bool Opened{
get{
return opened;
}
set{
opened = value;
}
}
public string PortName{
set{
portName = value;
}
get{
return portName;
}
}
public void SetPortName(string name){
portName = name;
}
public string GetPortName(){
return portName;
}
public int BaudRate{
set{
baudRate = value;
}
get{
return baudRate;
}
}
public void SetBaudRate(int rate){
baudRate = rate;
}
public int GetBaudRate(){
return baudRate;
}
//读写串口的超时有两种:间隔超时和总超时。间隔超时是指在接收时两个字符之间的最大时延。
//总超时是指读写操作总共花费的最大时间。写操作只支持总超时,而读操作两种超时均支持。
//用COMMTIMEOUTS结构可以规定读写操作的超时。成员都以毫秒为单位.总超时的计算公式是:
//总超时=时间系数×要求读/写的字符数+时间常量
//例如,要读入10个字符,那么读操作的总超时的计算公式为:
//读总超时=ReadTotalTimeoutMultiplier×10+ReadTotalTimeoutConstant
//可以看出:间隔超时和总超时的设置是不相关的,这可以方便通信程序灵活地设置各种超时。
//如果所有写超时参数均为0,那么就不使用写超时。如果ReadIntervalTimeout为0,
// 那么就不使用读间隔超时。如果ReadTotalTimeoutMultiplier 和 ReadTotalTimeoutConstant 都为0,
// 则不使用读总超时。如果读间隔超时被设置成MAXDWORD并且读时间系数和读时间常量都为0,
// 那么在读一次输入缓冲区的内容后读操作就立即返回,而不管是否读入了要求的字符。
// 在用重叠方式读写串口时,虽然ReadFile和WriteFile在完成操作以前就可能返回,
// 但超时仍然是起作用的。在这种情况下,超时规定的是操作的完成时间,
//而不是ReadFile和WriteFile的返回时间.
private struct COMMTIMEOUTS
{
public uint ReadIntervalTimeout; //读间隔超时
public int ReadTotalTimeoutMultiplier; ////读时间系数
public int ReadTotalTime- 上一篇:C#用户权限 不同的用户登录进来有不同的权限!
- 下一篇:C# .net 单点登录
相关资源
- C#解析HL7消息的库135797
- C# OCR数字识别实例,采用TessnetOcr,对
- 考试管理系统 - C#源码
- asp.net C#购物车源代码
- C#实时网络流量监听源码
- C#百度地图源码
- Visual C#.2010从入门到精通配套源程序
- C# 软件版本更新
- C#屏幕软键盘源码,可以自己定制界面
- 智慧城市 智能家居 C# 源代码
- c#获取mobile手机的IMEI和IMSI
- C#实现简单QQ聊天程序
- 操作系统 模拟的 欢迎下载 C#版
- C#写的计算机性能监控程序
- 用C#实现邮件发送,有点类似于outlo
- MVC model层代码生成器 C#
- c#小型图书销售系统
- C# Socket Server Client 通讯应用 完整的服
- c# winform 自动登录 百度账户 源代码
- C#编写的16进制计算器
- C#TCP通信协议
- C# 数据表(Dataset)操作 合并 查询一
- C#语音识别系统speechsdk51,SpeechSDK51L
- 数据库备份还原工具1.0 C# 源码
-
[免费]xm
lDocument 节点遍历C# - EQ2008LEDc#开发实例
- DirectX.Capturec# winform 操作摄像头录像附
- c# 实现的最大最小距离方法对鸢尾花
- C#版保龄球记分代码
- C#自定义控件
川公网安备 51152502000135号
评论
共有 条评论