打印

硬件和网页通信

[复制链接]
3985|20
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
sundyluo|  楼主 | 2012-12-7 14:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 sundyluo 于 2012-12-9 07:54 编辑

我有个手持设备,通信接口是USART的,现在想实现与网页的数据交互,也就是能够通过网页上向手持设备发送或读取数据,要怎么弄呢?是要用C++写一个网页插件,像U盾一样的功能?还是有其它方法?请各位大侠指教
问题补充说明:我采用了一片232-USB转换芯片,在上位机编写应用软件,调用芯片的驱动,能实现设备与PC的通信,但是现在想直接把数据传给WEB服务器,而不是先存到本地,然后在录入到服务器上。那么这个应用软件应该不是单独安装到本地PC上,而是要受浏览器控制了吧?

相关帖子

沙发
2389676302| | 2012-12-7 16:12 | 只看该作者
这个要请教专业人士了

使用特权

评论回复
板凳
chunyang| | 2012-12-7 21:39 | 只看该作者
只靠网页编程是不行的,需要针对串口编程,这需要专门写应用软件,然后再和网页交互。

使用特权

评论回复
地板
fp123123| | 2012-12-8 00:21 | 只看该作者
硬件部分:这个设备如果是TTL电平的串口,需要用一条USB转TTL串口的线,如果设备带有RS232接口,就用一条USB转RS232线

软件部分:使用一个第三方软件把串口转换成一个Socket,然后在PC机上就可以用各种语言和这个Socket通信,包括FLASH,JAVA,C++,VB等等,除了可以和PC通信,还可以和安卓,苹果等设备通信,各种资源具体请看playground.arduino.cc//Main/InterfacingWithSoftware

使用特权

评论回复
评分
参与人数 1威望 +2 收起 理由
ocon + 2
5
dqyubsh| | 2012-12-8 05:31 | 只看该作者
以前通行做法是硬件实现TCP/IP栈,并支持THHP协议,有它自己的主页,这才能被浏览器支持。这个方法PC无需自己开发客户端。你找一下有没有串口转以太网的转换器,看看他的功能能不能满足这一基本要求。如果不行,那就改硬件,加网卡芯片、变压器,再加软件了。最后结果是,你在浏览器地址栏敲上设备的IP地址,就可以访问设备了。

如果纯粹用软件来实现,应该自己写个客户端了,自己实现上述转换功能。我比较好奇的是,既然自己写个客户端,干嘛还要跟浏览器打交道,直接串口操作不就完事了?

使用特权

评论回复
6
江枫渔火| | 2012-12-8 16:01 | 只看该作者
你设备只能有UART通信的话,你用网页的意义是什么?直接一个上位机软件不行吗?
如果你是想你的设备配合WEB服务器,接受远程的控制,那好,我说一个简单的方案:
你的设备依然使用串口与电脑连接,此电脑安装windows下的IIS组件(提供WEB服务),然后你需要用vs2010中的任何一种语言,编写一个服务器组件,此组件完成串口通信功能。然后你编写一个动态网页,并引用此组件。
当你在其他电脑访问此电脑的你设计的网页时,便可以通过网页控制你的设备。
WEB服务器端的组件不会在浏览器端有什么反应,只处理由浏览器提交过了的数据信息而已。不同于客户端的组件,客户端的组件会产生下载和安装(类似支付宝安全组件那种,都是在客户端机器运行的)。
服务器端组件编写也不复杂,VB,VC,.net都可以。

使用特权

评论回复
7
xuyaqi| | 2012-12-8 21:08 | 只看该作者
楼主:你的手持设备和有浏览器主页的主机是如何硬件连接的,插到串口上?插到网口上?通过WIFI?

使用特权

评论回复
8
sundyluo|  楼主 | 2012-12-8 22:24 | 只看该作者
xuyaqi 发表于 2012-12-8 21:08
楼主:你的手持设备和有浏览器主页的主机是如何硬件连接的,插到串口上?插到网口上?通过WIFI? ...

使用了FT232芯片,通过USB线与电脑相连

使用特权

评论回复
9
sundyluo|  楼主 | 2012-12-8 22:27 | 只看该作者
xuyaqi 发表于 2012-12-8 21:08
楼主:你的手持设备和有浏览器主页的主机是如何硬件连接的,插到串口上?插到网口上?通过WIFI? ...

使用了FT232芯片,通过USB线与电脑相连

使用特权

评论回复
10
原野之狼| | 2012-12-8 23:47 | 只看该作者
要让浏览器能够访问,那么就要实现一个web server。
该server可以直接在设备端实现,这就要求设备具备网络接口以及相应的软件支持。
也可以把server放在别的功能更强的设备上(比如个人计算机或者高端的嵌入式工控板),然后再把你自己的设备挂上去。
具体采用什么方案取决于你的应用场景。

使用特权

评论回复
11
sundyluo|  楼主 | 2012-12-9 07:37 | 只看该作者
dqyubsh 发表于 2012-12-8 05:31
以前通行做法是硬件实现TCP/IP栈,并支持THHP协议,有它自己的主页,这才能被浏览器支持。这个方法PC无需自 ...

需要及时将数据传到web服务器上,共享数据,不只是让某一个区域的某一个些人查看这些数据,有点物联网的意味

使用特权

评论回复
12
xuyaqi| | 2012-12-9 08:56 | 只看该作者
楼主:不太明白你为什么要用网页与手持设备通信,这会使简单问题变复杂。

使用特权

评论回复
13
Tinnal| | 2012-12-9 11:45 | 只看该作者
现在的SOA思想,基于服务的体系结构。这种体系结构可以构建大型的异构系统(也就是说系统内的组件无论性能、特性、表现型式等都非常不一致,但却能有效的进行组织和联合工作)。
当前SOA思想的一个最常用的实现就是web services(不是server!)(就如TCP协议相对于ISO七层模型一样)。也就是说web services是当前最流行的SOA构建方式。
而web services中使用的通讯协议为SOAP,每个web services的组件必须通过SOAP对外提供service。而SOAP是基于HTTP协议的。

所以,楼主的领导有可能是想构件基于SOA的大型分布式系统。说是网页,其实只不过他也是基于HTTP而已,领导并不是想用HTML语言通讯,而是想用SOAP或简单一点的XML、JSON等。

单片机必须支持TCP、HTTP协议(如果不支持,由基上位机进行支持),把采集到的数据通过SOAP传输到远程的服务器上,或者接受其它组件的查询。各组件间可以通过SOA模型,完全屏蔽组件间的差异。

重新声明一下,这是一种大型异构系统的规划,请大家不要用传统的系统架构想法,这里,我们不是仅要想如做好一个节点,而更要考虑,如果屏蔽节点的差异。

楼主你问问你的领导是不是这么想的吧。如果是就回复我贴吧。

使用特权

评论回复
14
icecut| | 2012-12-9 12:40 | 只看该作者
这个我的开发板就预留了这个实验.哈哈.

开一个.net的软件,然后收到数据就提交给服务器就可以了...

使用特权

评论回复
15
sundyluo|  楼主 | 2012-12-9 13:47 | 只看该作者
xuyaqi 发表于 2012-12-9 08:56
楼主:不太明白你为什么要用网页与手持设备通信,这会使简单问题变复杂。 ...

将数据一次性发布到英特网上,而不是先导到本地计算机,然后再上传

使用特权

评论回复
16
sundyluo|  楼主 | 2012-12-9 13:56 | 只看该作者
icecut 发表于 2012-12-9 12:40
这个我的开发板就预留了这个实验.哈哈.

开一个.net的软件,然后收到数据就提交给服务器就可以了...

类似吧,不过我的这个软件应该是一个后台程序,在设备与PC机连接时能自动后台运行,不需要用户去手动打开,断开时又自动关闭

使用特权

评论回复
17
xuyaqi| | 2012-12-9 14:18 | 只看该作者
楼主的问题是要把手持设备的数据通过包装发布到英特网上,楼主的专长是上位机编程吗?要熟悉usb编程,网络编程。

使用特权

评论回复
18
byeyear| | 2012-12-9 19:58 | 只看该作者
使用ActiveX。

使用特权

评论回复
19
beanandpeach| | 2012-12-9 23:29 | 只看该作者

使用特权

评论回复
20
江枫渔火| | 2012-12-10 11:21 | 只看该作者
wc~
总体过程是这样的,你的电脑要暴露在公网上,并且有web服务,这样别人才能在其他地方通过网络访问到你的电脑。
其次要实现中间数据的交换方案:
串口连接设备读取数据保存在电脑,web服务通过控件(组建)访问你前面保存在电脑的数据,这样别人在其他地方通过网络就能访问到你的数据。
交换方案可以是xml文件方案或数据库存储方案~

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

23

帖子

1

粉丝