本帖最后由 小菜儿 于 2014-10-8 13:52 编辑
接上一帖7.继续更新 前一段时间事情比较多,先是出差了几天,而后张罗买车的事情,还好事情都顺利的办妥了,有了时间,继续同大家分享bananapi的使用心得。其实对于一个新鲜的事物,总归是需要有个摸索的过程的。在摸索当中会逐渐发现其中的注意点与奥妙所在。比如我前几天买车吧,对于我而言,刚刚拿到驾照不久,对车也不很了解,怎么办呢。就是多跑,多跑几家4S店,主要听听销售怎么夸自己的车,也听听他们说说别的同级别车的不足。这么一来二去的,逐渐就能形成对不同车的较为全面的认识。最后结合自己的关注点,选定爱车。这点同做技术工作其实是非常相似的,首先是自己尝试,不怕弯路,不怕不成功。反正做了就比不做强。其次就是多看看别人的分享,看看别人是怎么操作的,对于技术上的全面认识是百利无一害的。但是主次需要分明,不管别人的东西怎么的好,自己如果不亲自操作,怕是也难以得到想要的效果。 好了,言归正传,前面我们说明了如何在Bananapi上构建服务器,那么接下来我们先说说基于Linux的应用程序的开发。一般而言,如果不考虑人机交互内容,仅仅使用Linux下的C语言编程,然后通过GCC编译就可以实现Linux下的后台应用程序。这种编程方式对于Linux下的执行效率是最高的,当然也是最考验编程者水平的。另外一种方案,如果需要人机交互(当然这里所说的人机交互指的是有个交互界面,可以用鼠标等输入设备进行交互)的话,可以考虑使用GTK或者Qt,网络上有很多对于这两种UI开发工具的对比,其实就我个人感觉而言,如果考虑执行效率的问题,且你习惯与C语言的编程习惯,可以考虑GTK,如果你注重开发效率,且你习惯C++的编程习惯,可以考虑Qt。我个人一般而言选择Qt,因为平时做项目,项目周期压缩非常紧,所以没办法,由不得考虑其他问题了。我想国内很多工程师选择Qt做开发也是因为这个原因吧。O(∩_∩)O~。 下面我们考虑我们的项目功能,首先第一步,我们先考虑网口转串口的功能。即,把以太网数据转化为串口数据发出。我们先考虑网络通信的内容,Bananpi做服务器端,其他与其通信的终端作为客户端处理,那么,Bnanapi需要设置的信息应该包括IP地址及通信端口号,网关地址,子网掩码等基本的网络信息。然后考虑串口需要设置的内容,不外乎波特率、数据位、停止位、校验位、控制流这几项。当我们考虑设置信息的时候,实际上就是在考虑我们交互界面的布局问题了。我们的界面上应该有上述几个功能。今天先到这,明天开始上代码具体实现。但是需要说明的是,真正项目开发是需要有完整的软件流程图的,只有这样才能保障产品品质,当然作为分享的内容,相对功能单一简单,这里就把流程图省略了。 |