1003    ComEvntDSRTO    Data Set Ready信号超时。
1004    ComEvntFrame    帧错误。
1006    ComEvntOverrun    串口超速。
1007    ComEvntCDTO    载波检测超时。
1008    ComEvntRxOver    接受缓冲区溢出,缓冲区中已没有空间。
1009    ComEvntRxParity    奇偶校验错误。
1010    ComEvntTxFull    发送缓冲区溢出,缓冲区中已没有空间。
1011    ComEvntDCB        检索串口的设备控制块时发生错误。
MSCOMM控件进行串行通信的一般步骤为:
1)    设置通信对象、通信端口号及其他属性;
2)    设定通信协议;
3)    打开通信端口,进行数据的传送;
4)    关闭通信端口。
3.3.2    串口通信的程序设计
(1)    发送短信的串口通信程序
短信发送通过向串口发送“AT+CMGS= <length>”指令触发MSCOMM串口控件的OnComm事件。在OnComm事件中定义一个长整形变量s。当终端设备反馈一个OK确认信号。当Buffer收到这个确认信号后,加上Buffer的初值赋值给Buffer,再把Buffer的长度赋值给长整型变量s。再判断返回值是否是OK,是的话那么取消回显,状态为"AT指令初始化成功",然后清空Buffer。依次使用一个If的条件句,直到反馈回来第四个OK时,系统才会提示你"设备打开成功"。当反馈到一个“>”和OK后,就显示"短信发送成功"。这个程序和控件的特点就是提高了程序的性能和效率。短信发送原理如图3.3所示。
在程序运行时,短信发送的动作流程如下:
    点击“设备连接”按钮向串口发送“AT”,设置“Status = ""”,MSCOMM控件的input接到数据,达到Rthreshold的阀值触发OnComm事件;
    在OnComm事件中如果返回的是“OK”,进入条件判断,发送“ATE0”,设置“Status ="AT指令初始化成功"”,否则在达到Timmer1的设置值后进入Timmer1的条件判断,弹出“AT指令初始化失败,请重新打开设备”提示;
    成功设置“Status =" AT指令初始化成功"”后进入下一条件判断,如果返回
 
图3.3 短信发送原理图
的是“OK”,发送“AT+CMGF=0”,设置“Status ="回显取消成功"”,否则在达到Timmer1的设置值后进入Timmer1的条件判断,弹出“取消回显失败,请重新打开设备”提示;
    成功设置“Status ="回显取消成功"”后进入下一条件判断,如果返回的是
“OK”,设置“Status ="短信模式发送成功"”,弹出“设备打开成功”提示,
否则在达到Timmer1的设置值后进入Timmer1的条件判断,弹出“短信模式发送失败,请重新打开设备”提示;
    成功设备成功打开后点击发送按钮,向串口发送“AT+CMGS= <length>”指令,如果返回的是“>”,则进入条件判断,发送编码好的PDU串,设置“Status ="短信长度发送成功"”,否则在达到Timmer2的设置值后进入Timmer2的条件判断,弹出“短信长度发送失败,请重新发送”提示;
    成功设置“Status ="短信长度发送成功"”后进入下一条件判断,如果返回的是“OK”,设置“Status ="短信模式发送成功"”,弹出“短信发送成功”提示,否则在达到Timmer2的设置值后进入Timmer2的条件判断,弹出“短信发送失败,请重新发”提示。
上一篇:信号控制路网交通流动态分配研究
下一篇:AT89C51单片机铁路沿线风速雨量采集方法设计

PSpice的电容式加速度计闭环反馈控制模块设计

STM32激光雷达探测器高压电...

FPGA实现以太网MAC控制器数据发送模块

GSM-R系统下信号机的研究

FPGA实现以太网MAC控制器MAC控制模块

NRF24L01射频模块的ARM控制与通讯软件设计

Android手机电蚊香模块设计

《醉青春》导演作品阐述

中国古代秘书擅权的发展和恶变

国内外无刷直流电动机研究现状

多元化刑事简易程序构建探讨【9365字】

浅谈新形势下妇产科护理...

拉力采集上位机软件开发任务书

谷度酒庄消费者回访调查问卷表

高校网球场馆运营管理初探【1805字】

浅谈传统人文精神茬大學...

辩护律师的作证义务和保...