zhzdll
驱动牛犊
驱动牛犊
  • 注册日期2003-02-12
  • 最后登录2005-01-11
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:2325回复:6

关于NDIS和串口开发的问题,恳请高手帮忙。

楼主#
更多 发布于:2003-02-14 16:33
本人欲通过PC串口与一手机调试板(板子的具体操作系统可以不管)实现IP包的发送接收。
  具体如下:
    先假设ARM板子可以提供标准的IP包以及上层网络服务。由于ARM调试板不带MODEM或者网卡功能,只有串口,所以在PC端目前不能直接使用NDIS下面的网卡和modem驱动,只能自己在串口上写个类似功能的驱动,姑且称之为“串口适配器”吧,这个模块不实现LLC和MAC功能,只简单将NDIS截获的IP包作为字节流发送过去。
  故初步设计如下:设计一个简单的“串口适配器”,可以象网卡适配器和拨号适配器一样绑定到WINDOWS的NDIS上,然后TCP/IP栈下设计一个模块,使用NDIS的钩子技术截获上(TCP/IP栈)下(“串口适配器”)方向的IP包,这样既可以利用WINDOWS里的TCP/IP栈实现网页浏览等功能也可以绕开必须为现成的ARM调试板加入MODEM模块的难题。
  思路上如此,但是不知可不可行?此外,哪位知道实现目前市面上GPRS手机的MODEM功能,需要哪些芯片和软件协议?希望各位能帮助我!感激之情无以为报,只有以分相许。
gjpland
驱动小牛
驱动小牛
  • 注册日期2001-09-13
  • 最后登录2011-03-22
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-02-17 11:34
本人欲通过PC串口与一手机调试板(板子的具体操作系统可以不管)实现IP包的发送接收。
  具体如下:
    先假设ARM板子可以提供标准的IP包以及上层网络服务。由于ARM调试板不带MODEM或者网卡功能,只有串口,所以在PC端目前不能直接使用NDIS下面的网卡和modem驱动,只能自己在串口上写个类似功能的驱动,姑且称之为“串口适配器”吧,这个模块不实现LLC和MAC功能,只简单将NDIS截获的IP包作为字节流发送过去。
  故初步设计如下:设计一个简单的“串口适配器”,可以象网卡适配器和拨号适配器一样绑定到WINDOWS的NDIS上,然后TCP/IP栈下设计一个模块,使用NDIS的钩子技术截获上(TCP/IP栈)下(“串口适配器”)方向的IP包,这样既可以利用WINDOWS里的TCP/IP栈实现网页浏览等功能也可以绕开必须为现成的ARM调试板加入MODEM模块的难题。
  思路上如此,但是不知可不可行?此外,哪位知道实现目前市面上GPRS手机的MODEM功能,需要哪些芯片和软件协议?希望各位能帮助我!感激之情无以为报,只有以分相许。
 

完全可以实现。简单的说可以做一个虚拟网卡(IMD也行),在虚拟网卡内打开的你MODEM设备然后进行通信。其实原理就这么简单。

GPRS,我就不懂了。

我思故我在,脑袋不会坏.
zhzdll
驱动牛犊
驱动牛犊
  • 注册日期2003-02-12
  • 最后登录2005-01-11
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-02-17 12:06
不好意思,我原是做无线协议的,对WINDOWS底层不太熟悉,所以有些初级的问题要再请教一下:做“串口适配器”需要哪些技术?如何与WINDOWS的TCP/IP栈对接?如何编写程序安装到WINDOWS系统?如何绑定到32位NDIS?做这些需要哪方面的知识和编程技术?请指示一条明路。
dsp.com
驱动牛犊
驱动牛犊
  • 注册日期2003-02-16
  • 最后登录2003-02-17
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-02-17 13:45
建议你去看看加拿大一家公司的GPRS MODEM,他们在PCMCIA接口上模拟了一个串行口和LAN,关于串口的模拟我想你就先不用了解了,关键是它模拟了LAN,这个产品名字叫AIRCARD750,其软件非常好,但是我不知道他们是怎么做的。也许对你有帮助。
典型的技术狂热者
zhzdll
驱动牛犊
驱动牛犊
  • 注册日期2003-02-12
  • 最后登录2005-01-11
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-02-17 14:32
我考虑过在终端模拟MODEM的做法,但是由于缺乏相关的资料,根据协议对称的道理,对于UE端必须和一样PC具有PPP和MAC协议层,所以也不是太好做,不知你的观点如何?关于那个加拿大公司,能否给出网址?非常感谢你的参考意见!
song_qianghua
驱动牛犊
驱动牛犊
  • 注册日期2004-12-15
  • 最后登录2005-02-16
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2005-01-11 14:41
推荐两个有用的工具 用于调试PPP IP TCP UDP HTTP ...

软件名称:COMgrasp
 软件版本:1.0
 见议分类:系统测试

联系EMAIL:fu_jinying@sohu.com
 软件网站:http://blog.e6t.net/fu_jinying/
 下载地址:http://home4u.china.com/HOME10/90/70/30/20/42/0000297324/COMgrasp/COMgrasp.rar
 软件容量:210 KB
 软件类型:国产软件
 应用平台:Win95/98/NT/2000/XP
 界面预览:http://blog.e6t.net/fu_jinying/
 软件介绍: COMgrasp.exe 简介

大家好,经过两个星期的努力,COMgrasp.exe v1.0 终于和大家见面了。

1. 文件
Readme.doc This file.
COMgrasp.exe 工具执行文件。
comcap.sys 驱动文件。
ethereal-setup-0.9.6.exe 查看分析ppp, tcp/ip, ... 协议的免费软件, 可打开cap文件。
Dec 31 14-01-38.cap Sample *.cap, 由COMgrasp.exe v2.0生成, IE browser “www.sina.com.cn”。

2. COMgrasp.exe v1.0 的功能
实时侦测某个COM口打开和关闭。
实时显示某个COM口发送和接受的数据。
测试某个COM口,打开,关闭,读数据,写数据。
有问题请联系。

3. COMgrasp.exe v2.0 增加的功能, 需要注册。
解析某个COM口发送和接受的数据,并生成*.cap文件, 用于分析协议完成是否正确。
支持协议:ppp, ip, tcp, udp, wtp, wsp, mms, ...
在下有丰富的多种协议的开发经验,可以帮助你解决问题。
需要请联系。

4. 使用方法
将COMgrasp.exe, comcap.sys拷到一个目录下,运行COMgrasp.exe
点击图标”鱼”,可以打开COM,发送数据,接受数据, 关闭COM.

5. 联系方式
fu_jinying@sohu.com
http://home4u.china.com/HOME10/90/70/30/20/42/0000297324/COMgrasp/COMgrasp.rar

6. 优点
在局域网上,我们有很多工具用来开发协议,例如 NetxRay, Sniffer,Ethereal 等等,但是,遗憾的是我们的大多数协议都是在嵌入式系统上开发的,为此很多人付出了许多枯燥辛苦的劳动,用手工的方式一个字节一个字节,甚至一个位一个位地去检查,判断,现在,我们终于有了一个工具,来加速我们协议的开发。
Ethereal 是一个免费的多种协议分析工具,它支持的文件格式是 .cap , 它可以解析PPP/IP/TCP/UDP/WTP/WSP/MMS 等各种协议,可以很方便地查出数据出错的地方,由此我们能够快速地改正程序的错误,加快协议的开发。
在嵌入式系统上,大部分的协议都是利用串口来通讯的,并基于PPP/IP/TCP/UDP,COMgrasp.exe这个工具可以侦听到PC串口收发的数据,并解析PPP/IP/TCP/UDP数据协议,把原始的数据转换成 .cap 文件,这样一来,用户就可以利用Ethereal来查看解析后的数据, 何处出错一目了然。
另外,作者也可以提供抓数据的C源代码,用户可以把它嵌入到自己的系统中,这样也可以生成 .cap 文件,用Ethereal来查看.
大家可以下载COMgrasp.rar并解开,文件“Dec 31 14-01-38.cap”就是IE通过MODEM上新浪网时COMgrasp.exe v2.0抓到的数据解析文件,用Ethereal查看,是不是一目了然。
Ethereal是免费工具,大家可以在网上找到,也可以问fu_jinying@sohu.com要。
 

primemarshal
驱动牛犊
驱动牛犊
  • 注册日期2009-05-04
  • 最后登录2009-09-17
  • 粉丝0
  • 关注0
  • 积分14分
  • 威望111点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2009-07-30 17:28
各位
    我最近也想做一个相近的 “串口适配器” , 只不过我是通过串口连接  wifi 开发板,
        用 DriverStudio 生成一个 工程后,调试时发现 NDIS 调完我的 DriverEntry 后, 就不再调我指定的 MiniportInitalize函数了, 是不是因为这样做行不通呢?
    
    请高手们指教一下, 我刚接触驱动开发不久。。。
    谢谢!
新手上路
游客

返回顶部