RT-Thread-packages / at_device

AT component porting or samples for different devices
Apache License 2.0
215 stars 181 forks source link

<drivers/pin.h> needed in each module's file. #172

Open majianjia opened 2 years ago

majianjia commented 2 years ago

After excluded #include as mentioned in https://github.com/RT-Thread-packages/at_device/issues/171

Failed to compile with codes that related to pin driver. For example: https://github.com/RT-Thread-packages/at_device/blob/4d0186531962516f2819f59d50a856f71ba79072/class/sim800c/at_device_sim800c.c#L880

will post errors and warnings that cannot find these functions and macros.

By adding #include <drivers/pin.h> solve this problem. Should you consider adding the pin header for all classes.

But this is now a dependency of the pin driver. Should this be added to the Kconfig?

If we don't want the dependency, should it provide an interface or a function pointer for users to customize their own power on/power off method? Because sometimes, people are not using a native pin to control the power instead using an I2C IO expansion chip.