代码结构:I2C线路上的多个器件,具有多个源文件

时间:2017-05-17 04:14:13

标签: embedded integration codebase

我正在研究TI MSP432的编程。我们在一条I2C线路上有4种不同的器件。

为了保持我们的代码库清晰可见,我们将不同设备的功能保存在不同的C文件中。这些文件最初是在I2C线路上只使用一个器件开发的,因此I2C中断位于各个文件中。

整合这些文件的正确方法是什么?我们只是将I2C中断放在主文件中,让它在每个文件中调用一个函数吗?或者以某种方式动态地改变调用的中断或其他内容?

1 个答案:

答案 0 :(得分:1)

您应该创建一个通用的I2C设备驱动程序,并根据该驱动程序实现各个设备。如何做到这一点,取决于许多问题,例如您是使用RTOS还是多线程环境。

例如,您可能有一个EEPROM设备,该设备将使用I2C驱动程序,该驱动程序将根据应用程序的需要管理总线上的任何互斥或查询事务,而EEPROM设备接口可能会处理相互独占的访问权限。 EEPROM本身;将总线的需求与设备的需求分开,最终分离应用程序。