m5stack / M5Unified

Unified library for M5Stack series
MIT License
302 stars 54 forks source link

Add cast to _batAdc in Power_Class.cpp #68

Closed HyperSuperMetaCtrl closed 1 year ago

HyperSuperMetaCtrl commented 1 year ago

I had troubles compiling when using M5Unified with platformio without an explicit cast from 'int' to 'adc_channel_t.

In file included from .pio/libdeps/m5stack-core-esp32/M5Unified/src/utility/Power_Class.cpp:24:
.pio/libdeps/m5stack-core-esp32/M5Unified/src/utility/Power_Class.cpp: In member function 'bool m5::Power_Class::begin()':
/home/marcel/.platformio/packages/framework-espidf/components/soc/esp32/include/soc/adc_channel.h:15:33: error: invalid conversion from 'int' to 'adc1_channel_t' [-fpermissive]
   15 | #define ADC1_GPIO38_CHANNEL     2
      |                                 ^
      |                                 |
      |                                 int
.pio/libdeps/m5stack-core-esp32/M5Unified/src/utility/Power_Class.cpp:84:18: note: in expansion of macro 'ADC1_GPIO38_CHANNEL'
   84 |       _batAdc =  ADC1_GPIO38_CHANNEL;
      |                  ^~~~~~~~~~~~~~~~~~~
*** [.pio/build/m5stack-core-esp32/libc7a/M5Unified/utility/Power_Class.o] Error 1

Adding this explicit cast resolves the issue.

lovyan03 commented 1 year ago

@HyperSuperMetaCtrl Thanks for sending this pull request!