全部博文(240)
分类:
2012-07-20 19:17:31
上一部分说了固件和驱动的编程,这里再谈一下上位机的程序,因为我开发的范围也就是传传数据,所以太深入的没有去做,不过一般的工程调试应该足够了。
固件的程序和驱动编写好了后,把设备插入就可以正确识别到,接下来的工作就是如何用上位机读写设备了。其实读写操作跟读写串口一致的,就是用file进行操作。关键是打开设备,下面是我用到的程序,这里都贴出来吧,我都是用这个的,供大家参考,呵呵,如果刚开始弄的话,估计得弄上个一个星期才行,用这个程序修改一下,两分钟搞定。
其中GUID ClassGuid 是你在驱动中生成的一个号,它必须跟你的驱动对应起来,这个号的位置在驱动程序的XXXDeviceInterface.h中的#define XXXDevice_CLASS_GUID \....(XXX表示你起的工程名字)。把这个号替换之后用FpOpenDevice打开设备,得到一个读句柄,一个写句柄,然后在自己的程序中用readfile和writefile读写设备就可以了,注意,不管是读还是写,都是主机发出的,设备不能主动发发数据。比如上位机中运行readfile,就会发送一个IN指令,设备接到IN指令后,会把缓冲区的内容发出。
希望大家多多分享自己开发的经验,在开发学习中遇到的问题和困惑可能其他人都会有碰到,与其自己把这些心得憋在肚子里让大家都走一遍弯路不如把自己的经验与别人分享,这样不但自己有个总结再个使别人收益,何乐而不为,独乐乐不如众乐乐,于是而也。
其实开发也是一件具有艺术与哲学的事情,说其艺术,是其任凭你想象,散发的无边无际。说其有哲理,是万事皆有因,顺其自然(自然即客观规律),必能找其根本,体味其中奥妙,其乐无穷~