1) 绝对的原创
外设 的初始化函数
包括相对应的IO初始化,包括设备的Initial,以及简单的读写程序,该部分初始化使用到的外设的地址寄存器等,尽量使用#define来定义,但是读写使用的参数传递,尽量不用全局变量。这些初始化函数,包括了大量的外设初始化工作,如AD初始化,包括工作方式采样率、PGA等工作
2)
与MCU相关的初始化部分
主要包括timer、usart等常见的只是与MCU有关而外部基本不用设置的初始化,这部分会使用到全局变量较多,多数为了中间的参量的传递,要整理好,这部分函数主要处理的是外部的非可设定外设的应用。外部设备只是转接功能的,如MAX232,实现的只是电平转换。
3)
应用函数
应用函数包括键盘扫描显示、数据转换、滤波算法、显示介面的设计等与外围设备关系很大,但是这里全部的函数,不允许出现直接操作外部设备IO等情况。此处会调用外设的基础应用函数以及MCU的基础应用函数,整合为相对起联合作用的应用函数。
4)
业务函数
这部分函数主要是为了使整机联调而来,这部分函数会不停的调用应用函数,将应用函数串联起来,实现一定的业务。业务函数中会包括大量的逻辑操作,如键盘与显示之间的切换,如串行通信的数据解析以及数据传递等,至此,全部结束。 |