原创翻译 通过拨号上网的Windows CE6.0 GPRS连接II

Windows Embedded CE 6.0开发初体验(三)设置Boot-loader 上一篇《Windows Embedded CE 6.0开发初体验》之“CE开发环境”:http://blog.csdn.net/aawolf/archive/2007/10/11/1820278.aspx 在Digi CC 9P开发板中已经预置了Boot-loader和一个CE 6.0的系统,所以,我们直接启动开发板,就可以运行一个CE 6.0的操作系统。不过,我们的最终目的是要开发一 阅读详情

介绍
Windows Embedded CE可以通过CellCore架构(蜂窝无线通信系统TAPI服务提供者)和Telephony API(TAPI 2.0 Unimodem 驱动)提供GPRS通信。CellCore架构是一个高级特性的架构,它对GSM调制解调器的功能要求较高。不幸的是,不是所有的调制解调器都支持CellCore架构要求的所有特性。并且由于软硬件的价格限制,一些应用并不倾向采用具有高级特性的调制解调器。在这些情况下,CellCore架构不是一个好选择,应用可以使用Windows CE提供的Telephony API做为替代。使用TAPI不是直接了当的,它有一些限制需要解决。本文着重于解决这些限制。

 

 

面向的读者
GPRS连接文章的第一部分(在Windows CE 6.0中使用GPRS连接)着重说明了如何通过拨号网络来建立GPRS数据连接。
该文章的读者提出了一些问题,比如:
在数据连接有效时如何发送短消息?
如何访问SIM卡上的地址簿或者如何获取信号强度?
对于以上所有问题和类似的问题,有一个单一的解决方法。本文将着重说明此方法及其实现。本文适合于许多类型的读者,包括工程师、经理和wince爱好者,如果他们希望在数据连接有效时同时进行一些并行的工作,例如信号强度检测、地址簿查询等。
如果工程师只对通过拨号网络的GPRS数据通信感兴趣,则可以阅读在Windows CE 6.0中使用GPRS连接这篇文章。

 

 

范围
本文的范围限于支持CMUX规约(GSM07.10标准的一部分)的调制解调器。

 

 

Telephony API
Telephony API(TAPI 2.0)被开发出来的目的是通过基于AT命令的调制解调器建立数据连接。由于GSM调制解调器基于AT命令,TAPI被用于建立GPRS数据连接。通过使用RAS API,GPRS连接可以被建立。

图1. TAPI结构


Telephony API使用通用调制解调器驱动(AT命令调制解调器的TSP)来建立GPRS连接。Unimodem使用串口驱动来访问调制解调器。请参考在Windows CE 6.0中使用GPRS连接这篇文章来获得关于使用Telephony API的GPRS数据通信方面的更多信息。

 

 

Unimodem结构的限制
通常当GPRS通信被建立后,其相应的串口状态为忙,其它进程不能对它访问,该串口只被用于unimodem驱动。这对于使用GSM调制解调器的一些简单功能,像获取信号强度、访问电话本等来说是一个大障碍,除非有一个专用的端口用于这些功能。不幸的是不是所有的调制解调器都有双串口来支持同时使用GPRS和其它的一些调制解调器功能。并且添加一个串口将增加硬件的费用开销。以下部分将说明现在的GPRS调制解调器的结构和如何使用调制解调器内提供的内部多路复用器来解决这些限制问题。

目前的GSM/GPRS调制解调器结构

图2. GSM调制解调器的多路复用器


图2绘出了GSM/GPRS调制解调器的结构。如上所示,每个GPRS/GSM调制解调器都有一个内部多路复用器,该复用器从串口获取命令并传送到对应的信道,如电路交换数据、包交换数据、状态/控制和访问电话号码簿等。基本上,客户应用程序和MUX进行通信(下面将说明其中涉及到的一些步骤)。现在大多数的多路复用器都被设计成支持CMUX协议(GSM07.10标准的一部分),它们在GSM/GPRS调制解调器和终端设备(TE)之间运作,允许在一个通常的异步串行接口上同时存在一些过程(信道)。每个过程(信道)包含有字节流来传送各种数据,例如语音、传真、短信、信元广播服务、电话号码簿的维护、电池状态、GPRS和USSD等。这将允许在保持数据连接的同时将短信和信元广播服务传送给终端设备。许多其它组合也是可能的,包括数字语音。例如可以传送数字语音和短信的组合。每个信道都有自己的缓冲区管理和流控制机制。CMUX规约最多支持64个这样的信道。

 

 

Windows Embedded CE 6.0 GSM 7.10 MUX驱动
Windows Embedded CE 6.0在CellCore架构中支持GSM 7.10多路复用器驱动组件,此驱动对于CellCore架构来说是可分离的。对于应用程序来说,根据调制解调器的功能,这些信道可以被当作虚拟串口来访问。通常GSM调制解调器不在多路复用器模式下工作。GSM0710多路复用器驱动会发送AT+CMUX命令使多路复用器模式可用,之后驱动会发送SABM帧来请求信道。第一个信道是控制信道,剩下的信道是通信信道。这些信道被视为虚拟COM口。图3显示了多路复用器可用的GSM调制解调器和Windows CE设备之间的接口。



图3. GSM调制解调器和Windows CE多路复用器驱动的接口

将unimodem驱动和MUX集成
在GSM调制解调器上同时进行若干上面提到的操作的一种方法,就是使用MUX驱动提供的虚拟串口。有两种方式可以进行GPRS数据通信。第一种方法是移植unimodem驱动来用虚拟串口建立GPRS数据通信,另一种方法是写自己的TSPI驱动来做同样的事。两种情形都需要工程师较好地理解Windows Embedded CE 6.0的GSM07.10驱动和TSPI驱动的工作原理。

 

 

开发自有的TSPI驱动
在wince600/public/common /oak/ drivers /SAMPTSPI目录下可以找到TSPI的示例驱动程序。自己的TSPI驱动可以在此驱动上开发。问题是开发和测试时间会很长。

 

 

移植Unimodem驱动
图4显示了如何可以将Unimodem驱动与MUX驱动结合。因为MUX驱动可能不支持unimodem可能会需要的一些IOCTL调用,所以unimodem驱动需要被移植。移植unimodem驱动不需要花很多时间,因为这个驱动是已开发好并被测试过的。

 

将会遇到的问题
GSM7.10多路复用器驱动提供了虚拟串行端口。此驱动被实现为一个通常的串口驱动,并需要处理许多来自unimodem驱动的IOCTL调用。Unimodem期望打交道的对象是个串口驱动,而实际上是多路复用器驱动接收了这些调用。这些IOCTL被通过标准的串口驱动API访问。不幸的是多路复用器驱动不支持所有的这些IOCTL调用。例如urgeComm()这个API。此函数会丢弃指定的通信资源中的所有输入和输出缓冲区的字符。但是与此API对应的IOCTL在多路复用器驱动中没有实现。而通常的串口驱动会支持此调用。所以unimodem驱动的一些函数要被移除,或者多路复用器驱动要实现一些API调用。



图4. 多路复用器上的TAPI

收益
数据传输和其它一些功能,如短信、地址簿等,可以同时进行。

 


可以写定制化的应用程序来实现无缝化的语音和数据通信。
 

 

CellCore架构中的语音通信支持被包含在Windows CE professional license里。

 


为语音通信写定制化的应用程序并用unimodem实现数据传输将会节省费用开销。

 


总结
如上所述一个多路复用器可用的GPRS调制解调器可以在被用于发送数据的同时也被用于发送短信,访问电话号码簿等。

 

05 Driver.rar Android/Linux/winCE/Windows/PPP/Gobinet/CMUX/Quectel_WCDMA&LTE_Linux_USB_R01A01/Quectel_WCDMA&LTE_Linux_USB_Driver_User_Guide_V1.8 立即下载

相关推荐

HDRnet——双边滤波和仿射变换的摇身一变

layer层数越多,下采样得到的图越小,low-level features的好处是最后的grid会更coarser,最后的特征图的感受野也越多,非线性更好,表达力更强。所以最终grid是5维的[B,in*out,n,H,W],permute之后是[B,H,W,n,in*out],B是batchsize,n表示对guide的量化级数,in*out表示每个cell的变换系数。这部分的处理对象是低分辨率图,利用CNN进行特征提取(局部和全局),最后fuse得到grid,这里面包含了变换的系数。

zcg1942的博客 1577

wince6.0模拟器配置上网

Wince6.0模拟器配置上网 工具: 1.wince6.0 SDK 2. Microsott ActiveSync 4.5(windows XP系统)或者MicrosoftDeviceCenter  6.1(windows 7系统) 3. 设备仿真器管理器(Device Emulator Manager2.0中文版),这个安装了Visual Studio 2005或者VisualStud

cai_bo的专栏 9399

HDR视频技术之七:逆色调映射

HDR 技术说是继 4K 之后视频领域的又一次重大技术突破,不仅提高图像的动态范围,同时也提供了更宽的色域,并提升了画面在高光和暗部的细节信息,带给观看者更加真实的视觉体验。但作为 HDR 产业链的核心,内容短缺的问题仍然是 HDR 普及和成熟的重要限制因素。众多电视厂商将 HDR 技术作为其产品规划中的重要技术,主要是在硬件方面进行提升。而由于 HDR 内容制作对于设备要求较高,对采集、调色、显示等多方面都需要较高的质量要求,内容制作的复杂度和周期长等因素,导致了 HDR 内容的匮乏。

多媒体开发者 2423

Windows Embedded CE 6.0开发初体验

<br />(源自:http://www.j2medev.com/windowsmobile/ShowArticle.asp?ArticleID=5102)<br />(一)Windows CE概述 <br /><br />这篇文章的目的并不是介绍Windows Embedded CE开发的方方面面,只是用一个初涉嵌入式领域的软件开发者的视角来介绍Windows CE开发中最常用的概念和知识,解决大家会在实际开发中碰到的一些小问题,让大家了解嵌入式开发与应用程序开发,到底有哪些不同。Windows CE概述

有家客栈 君子不器 1114

华为防火墙双ISP出口实战:如何用策略路由实现电信联通流量自动切换(附配置截图)

本文详细解析了华为防火墙在双ISP环境下的智能选路技术,通过策略路由与健康检测的深度应用,实现电信联通流量的自动切换。文章包含实战配置截图,帮助企业解决切换延迟、路径劣化等核心挑战,提升业务连续性。

backprop5master的博客 643

【Java】对接微信转账到零钱接口 Java微信商家转账 apiV3(该踩的雷都踩了)

配置apiv3依赖java代码。

Moonhwa的博客 4318

WIn10 安装wince6.0开发环境(转)

最近开始学习wince6.0的移植,心血来潮写一篇博客,也是监督自己学习的开始,立一个flag。 搭建环境如下:     1、安装vs2005 和 补丁     2、安装wince600 和 补丁 一、开始安装需要准备vs2005和补丁如下 1)chs_vs_2005_VSTS_180_Trial.img (vs2005镜像文件) 2)VS80sp1-KB926604-X86-CHS....

xxxyluohui的专栏 3403

C#图像处理:OpenCVSharp实现简单人脸识别

人脸识别是计算机视觉领域中的一个重要研究方向,它可以通过分析和比对人脸图像,实现识别和验证的功能。希望通过这篇文章的学习,你对OpenCVSharp和人脸识别有了初步的了解,并能够运用这些知识进行自己的项目开发。当我们运行程序时,它会加载人脸识别模型并读取待识别的图像,然后进行人脸检测并在图像上标记出检测到的人脸位置。当然,这只是一个入门级的示例,实际的人脸识别系统还需要更加复杂的算法和大量的训练数据来提高准确性和鲁棒性。最后,我们遍历检测到的人脸,并在原始图像上绘制矩形框,标记出检测到的人脸位置。

WELL_CODER的博客 1129

WinCE6 建立APN拨号连接的经验分享

前天项目经理安排我做Wince6下面的APN拨号连接,任务很急,但我对APN一点概念都没有,之前经理也收集了一些资料代码,另外iPhone项目组的同事也提供了设置APN的参数信息(APN网络名、帐号、手机号等)。由于以前做过Wince下普通的拨号连接,就在直接上面修改代码。     一边看MSDN,一边百度资料,还是有收获,对APN有了一定了解:APN只是在普通拨号的基础上多了一些设置参数而已。

hushoubo的专栏 3021

【示波器专题】示波器探头的原理深入——有源探头之差分有源探头

差分有源探头是一种特殊的有源探头,与普通单端有源探头的区别在于其前端的放大器是差分放大器。差分放大器的好处是可以直接测试高速差分信号,同时其共模抑制比高,对共模噪声的抑制能力比较好。...

一点硬件 2625

标准测试测试数据STDF学习笔记

本文介绍了STDF(Standard Test Data Format)文件的结构与解析方法。首先详细说明了STDF记录的组成,包括记录头类型(REC_TYP和REC_SUB)、数据类型定义、时间日期格式以及无效数据标识。重点分析了25种主要记录类型的功能、数据内容和出现位置,如FAR、MIR、MRR等关键记录。然后介绍了基于pystdf开源工具的解析方法,包括自带脚本的使用和自编程解析流程,通过事件驱动机制处理数据流。特别指出测试数据是按照PIR→PTR/MPR/FTR→PRR的循环模式组织。文章为ATE

歌颂苦难的行为是无耻的; 1513

原创翻译 通过拨号上网的Windows CE6.0 GPRS连接II

原文地址:http://xiaoruanjian.iteye.com/blog/1092488 介绍 Windows Embedded CE可以通过CellCore架构(蜂窝无线通信系统TAPI服务提供者)和Telephony API(TAPI 2.0 Unimodem 驱动)提供GPRS通信。CellCore架构是一个高级特性的架构,它对GSM调制解调器的功能要求较高。不幸的

xqhrs232的专栏 943

OpenClaw 超级 AI 实战专栏【模型推理与实战】(二)官方预训练模型下载与使用

OpenClaw 预训练模型需按「固定目录结构」存放(模型文件夹包含权重 + 配置文件),否则会加载失败;核心流程:下载模型→验证文件完整性→加载模型→传入图片执行推理→可视化结果;常见问题集中在「路径错误」「显存不足」「文件缺失」,按文中方案可快速解决。

qq_36130719的博客 307

原创翻译 通过拨号上网的Windows CE6.0 GPRS连接

介绍Windows CE提供两种方式与GPRS调制解调器连接:使用"cell core"函数和使用"拨号上网"。因为大多数的GPRS调制解调器不支持前一种方式需要的无线接口层(Radio Interface Layer, RIL)驱动,所以拨号上网是常被使用的方式。 本文阐述了怎样在Windows CE 6.0设备上通过拨号上网来使用GPRS调制解调器。同时也对在实施这一方法时会碰到的典型

WinCE7的专栏 1755

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Windows Mobile 5.0模拟器用ActiveSync来使用PC机的网络(转)

 1、先在VS2005的工具菜单中“设备仿真器管理”,选中你的模拟器设备,右键选择“连接”,在模拟器界面的菜单中“文件”->“配置”,选择“网络”标签页,选择“启用NE2000 PCMCIA网卡并绑定到”(这一步似乎可以省略,因为选了的话仿真管理器会报需要虚拟网卡驱动VNC);2、模拟器中: Settings-> Connections->Network Cards中"My netwo

Hands-off 1027

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

【WindowsCE 】WinCE WIFI 无线网卡的配置和建立连接

    在 Windows CE 下自带有无线网卡的配置和连接程序,这篇文章就来谈一下如何用那么可以利用微软自带的WZC函数来重新编写一个独立于系统的WIFI连接程序.     下面是一整套通过WZC函数连接无线网的程序,我自己测试后保证在系统下是可以运行.大家可以参考一下。一、非常重要的库文件。    #include &lt;eaputil.h&gt;     #include &lt;pm....

hai969225722的博客 1万+

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

上一篇: 原创翻译 通过拨号上网的Windows CE6.0 GPRS连接
下一篇: 微软嵌入式技术问答第一篇
巴斯滕
博客等级 码龄16年 319粉丝 23原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值