2011年8月3日
摘要: GetCommMask,SetCommMask:读取和设置串口上的事件掩码.WaitCommEvent:根据SetCommMask设置的事件掩码,以阻塞的方式来等待事件的触发.1 function GetCommMask(hFile: THandle; var lpEvtMask: DWORD): BOOL; stdcall; 2 function SetCommMask(hFile: THandle; dwEvtMask: DWORD): BOOL; stdcall; 3 function WaitCommEvent(hFile: THandle; var lpEvtMask: DWORD; 阅读全文
posted @ 2011-08-03 19:20 solokey 阅读(2839) 评论(0) 推荐(0) 编辑
摘要: GetCommTimeouts, SetCommTimeouts 用于设置串口接收发送数据的超时参数. 1 function GetCommTimeouts(hFile: THandle; var lpCommTimeouts: TCommTimeouts): BOOL; stdcall; 2 function SetCommTimeouts(hFile: THandle; const lpCommTimeouts: TCommTimeouts): BOOL; stdcall; 3 PCommTimeouts = ^TCommTimeouts; 4 _COMMTIMEOUTS = record 阅读全文
posted @ 2011-08-03 19:18 solokey 阅读(2591) 评论(0) 推荐(1) 编辑
摘要: SetupComm 设置串口的缓冲区1 function SetupComm(hFile: THandle; dwInQueue, dwOutQueue: DWORD): BOOL; stdcall; hFile:之前用CreateFile打开的串口句柄.dwInQueue,dwOutQueue:接收缓冲区和发送缓冲区.返回如果是0,表示操作失败.非0表示操作成功.GetCommState 读取串口设置(波特率,校验,停止位,数据位等). 1 function GetCommState(hFile: THandle; var lpDCB: TDCB): BOOL; stdcall; 2 fun 阅读全文
posted @ 2011-08-03 19:17 solokey 阅读(3103) 评论(0) 推荐(0) 编辑
摘要: CreateFile用于打开串口,如果操作成功,返回一个句柄.1 function CreateFile(lpFileName: PChar; dwDesiredAccess, dwShareMode: DWORD; 2 lpSecurityAttributes: PSecurityAttributes; dwCreationDisposition, dwFlagsAndAttributes: DWORD; 3 hTemplateFile: THandle): THandle; stdcall; 来解释一下参数.lpFileName:要打开的串口逻辑名称,比如:COM1,COM2....,记住 阅读全文
posted @ 2011-08-03 19:15 solokey 阅读(2130) 评论(0) 推荐(1) 编辑
摘要: 突然发现,很多术语还是需要解释一下..看来我又要贴百度百科了..其实,如果只是在应用层面使用串口,这些概念基本只要简单了解一下即可,只要保证上下位机一致即可.至少我只停留在应用层面,欢迎鄙视...波特率:(BaudRate) 模拟线路信号的速率,也称调制速率,以波形每秒的振荡数来衡量。如果数据不压缩,波特率等于每秒钟传输的数据位数,如果数据进行了压缩,那么每秒钟传输的数据位数通常大于调制速率,使得交换使用波特和比特/秒偶尔会产生错误。 波特率是指数据信号对载波的调制速率,它用单位时间内载波调制状态改变的次数来表示,其单位是波特(Baud)。波特率与比特率的关系是比特率=波特率X单个调制状态对应 阅读全文
posted @ 2011-08-03 19:14 solokey 阅读(668) 评论(0) 推荐(1) 编辑
摘要: 串口接口的图..我就不贴了..这玩意满网络都是...这一章,可能都是我的胡言乱语.很可能....工业设备多中,多用串口作为其设备的通讯接口,近些年USB,TCP/IP的普及,很多设备也提供了相应的接口.相对比较看好TCP/IP接口,毕竟多个设备连接的时候,还是交换机相对便宜些,速度也快些.如果想更多的了解串口的知识和背景,可以参考一下龚建平教授(貌似是这个称呼?)的个人网站.目前我接触到的大部分RS232的串口设备,只需要接3根线(RX,TX,GND).另外,很多USB-RS232的转换器,也只接了这3根线,所以如果设备对其他的引脚也有定义,并需要使用,请不要使用便宜的USB-RS232转换器 阅读全文
posted @ 2011-08-03 19:13 solokey 阅读(731) 评论(0) 推荐(1) 编辑
摘要: 这一章大部分内容都来自百度百科..串口叫做串行接口,也称串行通信接口,按电气标准及协议来分包括RS-232-C、RS-422、RS485、USB等。 RS-232-C、RS-422与RS-485标准只对接口的电气特性做出规定,不涉及接插件、电缆或协议。USB是近几年发展起来的新型接口标准,主要应用于高速数据传输领域。RS-232-C:也称标准串口,是目前最常用的一种串行通讯接口。它是在1970年由美国电子工业协会(EIA)联合贝尔系统、 调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标 准。它的全名是“数据终端设备(DTE)和数据通讯设备(DCE)之间 串行二进制数据交换接口技术标 阅读全文
posted @ 2011-08-03 19:12 solokey 阅读(1602) 评论(0) 推荐(1) 编辑
摘要: 帮老婆把NOKIA的6303C的固件刷到了最新..结果短信功能彻底挂了,网上查了很多,没有结果.大部分说出现这个问题都是09年9月以后,也有人说换了SIM卡就好了.于是去移动营业厅花了200积分换了一个,果然好了.目前看下来,应该是新固件和老的SIM兼容不好造成的.老婆的SIM卡应该是04年办的.我更杯具..SIM卡是02年办的..所以基本排除了手机的问题,是固件兼容性的问题..要么别刷机.要么刷机后出了问题..去营业厅换个最新的SIM卡... 阅读全文
posted @ 2011-08-03 19:11 solokey 阅读(595) 评论(0) 推荐(0) 编辑
  2011年7月27日
摘要: 这节也很简单,需要介绍4个类.创建对象的时候,第二个参数为nil,则为全部的Series,否则为指定的Series对象.另外,除了XML以外,IncludeColors好像都没有用处.一般数据导出,我都用Cnpack的CnXlsWriter,和TeeChart的TSeriesDataXLS采用的都是直接写XLS格式的方式,但是自由度大很多.Text: 1 //uses TeeExport; 2 var 3 aSeriesDataText: TSeriesDataText; 4 begin 5 aSeriesDataText := TSeriesDataText.Create(Chart, ni 阅读全文
posted @ 2011-07-27 18:26 solokey 阅读(1598) 评论(0) 推荐(0) 编辑
摘要: 这一小节很简单,就几个函数.Binary: 1 //uses TeeExport; 2 Procedure SaveTeeToFile(APanel:TCustomTeePanel; Const AName:String); 3 Procedure SaveTeeToStream(APanel:TCustomTeePanel; AStream:TStream); 4 //uses TeeStore; 5 //TextFormat = False; 6 Procedure SaveChartToFile(AChart:TCustomChart; Const AFileName:String; 7 阅读全文
posted @ 2011-07-27 18:21 solokey 阅读(644) 评论(0) 推荐(0) 编辑