如何编写应用程序
Posted wangjian1226
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何编写应用程序相关的知识,希望对你有一定的参考价值。
每次要编写嵌入式应用程序的时候总是不知道该如何入手,于是简单的研究了下现在普遍的扫码支付模块的SDK开发结构。
1. 模块化
拿到一个项目需求时,我们需要看下该项目分为几个模块,每个模块之间又是以什么形式连接的。模块化会使程序结构清晰,维护也会方便很多。比如说扫码支付模块就分为三个部分,底层core部分,mqtt功能模块,uart功能模块。分好了模块之后开始入手写程序了。
2.模块初始化
在函数入口写各模块的初始化程序,底层core部分,里面的许多功能底层已经能够初始化好了,我们只要等待消息即可。mqtt模块我们需要建立一个task,该task有四个功能函数,连接,关闭,读,发送。
uart功能模块有两个功能函数,读和写。初始化也就是各种准备工作,每个模块都需要,就不写了。
3.工作逻辑
1.底层自动附着上网络后,会有消息上报,消息的分类用switch函数。在这种情况下,mqtt才可以去连接服务器。连接好后,mqtt线程阻塞等待底层的读消息上报。(也有初始化的时候将读函数当作回调函数传入底层的)。
2.串口收到消息上报时(也有在初始化的时候将读函数当作回调函数传入底层的),一顿处理之后(组协议包),调用mqtt发送接口将数据发送给服务器。
3.mqtt收到服务器发来的消息之后,一顿分析之后(分析协议包),调用uart写函数将数据发送给外设主板,至于外设怎么再操作就不用关系了(外设与uart口之间也有串口协议)。
以上是关于如何编写应用程序的主要内容,如果未能解决你的问题,请参考以下文章
JAVA如何调用C语言编写的程序,并且传参数,读取返回结果?