C# 单片机 的问题

gogobox   2008-11-24 10:18 楼主
我是一个小公司,公司现在要开发一个煤矿管理系统,现在单片机的程序研发结束了。
单片机的数据格式,命令及命令格式,都以文档的形式给我了。
我现在想用C#与其通讯。
单片机:P89V51R
单片机接口:现用的是电话线。RS-232接口同时也在开发中。
我应该如何做,给出思路,附加代码分析更好。先谢过各位了。



回复评论 (14)

附加代码肯定是不可能的,你还没有阐述清楚是通过电话线通讯还是通过rs232通讯,按理针对这样的应用,RS232通讯可能性不高的,不过你可以使用透明协议设备来中继RS232

如果是RS232的话,直接使用.NET中的SerialPort组件即可
点赞  2008-11-24 10:20
只要有办法让电脑与单片机通信,C#就能做。
如果有电脑与单片机通信的API,C#直接调用API就可以了。如果没有,你可以试着自己做这个API,因为你手头上有资料,你可以用C/C++做个串口、并口通信的函数库,然后利用这个函数库封装一个单片机的控制库(由于你已经有了数据格式、命令以及命令格式,因此这个实现并不会太难)。最后,在C#中用p/invoke调用这个控制库即可。
点赞  2008-11-24 10:24
cnming

为什么RS232通讯可能性不高呢?
现在单片机与PC数据的传输用的是电话线。


如果用RS232,vs2005自带的组件serial可以是吗?
点赞  2008-11-24 10:43
RS232的传输距离不超过15米。
你没有说电话线和PC如何连接?
使用MODEM的话,对PC机编程而言就是串口。
vs2005自带的组件serial就可以完成串口的通讯。
点赞  2008-11-24 11:14
SERIVALPORT现成的控件,就在SYSTEM。IO的空间下,你看一下就OK。
点赞  2008-11-25 08:41
帮顶
点赞  2008-11-25 09:09
帮顶
点赞  2008-11-25 09:09
你确认单片机接口是电话线?
那弄个猫就好了,上位机用串口
点赞  2008-11-25 20:08
帮顶!!
点赞  2008-11-26 17:58
帮顶!!
点赞  2008-11-26 18:25
只说到线,没说单片机与电脑通信用的是什么口?
还是什么通信口没确定,只是确定了用电话线做传输?
点赞  2008-11-28 19:48
你的通讯距离有多元,也就是下位机个数及网络格式,

1),现在也有RS232 转 双绞线的 TCP/IP 集线器,长距离用双绞线末端又用转回RS232
2),用RS232转为RS485 最长可1km,在接250个端口,用IP访问控制,

软件上:
     根据实际情况用API控制即可,因为windows已经傻瓜试将RS232端口控制已经做到
用API简化,只要你合理使用即可。
点赞  2008-11-28 20:44
可以的,现在的GPS很多都是c#+串口
楼主,这方面有不少书的。
点赞  2008-11-30 14:53
GPS在矿井里面收不到卫星信号的...?
点赞  2008-11-30 16:17
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复