cxs 1 год назад
Родитель
Сommit
707544c40d
3 измененных файлов с 38 добавлено и 7 удалено
  1. 20 0
      SConscript
  2. 3 7
      sensor_st_sths34pf80.c
  3. 15 0
      sensor_st_sths34pf80.h

+ 20 - 0
SConscript

@@ -0,0 +1,20 @@
+from building import *
+Import('rtconfig')
+
+src   = []
+cwd   = GetCurrentDir()
+
+src += Glob('libraries/sths34pf80_reg.c')
+src += Glob('libraries/sths34pf80.c')
+
+if GetDepend('PKG_STHS34PF80_USING_SENSOR_V1'):
+    src += ['sensor_st_sths34pf80.c']
+
+
+# add sths34pf80 include path.
+path  = [cwd, cwd + '/libraries']
+
+# add src and include to group.
+group = DefineGroup('sths34pf80', src, depend = ['PKG_USING_STHS34PF80'], CPPPATH = path)
+
+Return('group')

+ 3 - 7
sensor_st_sths34pf80.c

@@ -7,15 +7,11 @@
  * Date           Author       Notes
  * 2023-01-29     Rick       the first version
  */
-#include "rtthread.h"
-#include "rtdevice.h"
-#include "stdint.h"
-#include "sths34pf80.h"
 #include "sensor_st_sths34pf80.h"
 
 #define DBG_TAG "sensor.st.sths34pf80"
 #define DBG_LVL DBG_LOG
-#include <rtdbg.h>
+
 
 static STHS34PF80_Object_t sths34pf80;
 static struct rt_i2c_bus_device *i2c_bus_dev;
@@ -127,7 +123,7 @@ static rt_err_t _sths34pf80_set_odr(rt_sensor_t sensor, rt_uint16_t odr)
 
     return RT_EOK;
 }
-static rt_size_t _sths34pf80_polling_get_data(rt_sensor_t sensor, struct rt_sensor_data *data)
+static RT_SIZE_TYPE _sths34pf80_polling_get_data(rt_sensor_t sensor, struct rt_sensor_data *data)
 {
     uint16_t val;
     switch(sensor->info.type)
@@ -182,7 +178,7 @@ static rt_err_t _sths34pf80_set_mode(rt_sensor_t sensor, rt_uint8_t mode)
     }
     return RT_EOK;
 }
-static rt_size_t sths34pf80_fetch_data(struct rt_sensor_device *sensor, void *buf, rt_size_t len)
+static RT_SIZE_TYPE sths34pf80_fetch_data(struct rt_sensor_device *sensor, void *buf, rt_size_t len)
 {
     if (sensor->config.mode == RT_SENSOR_MODE_POLLING)
     {

+ 15 - 0
sensor_st_sths34pf80.h

@@ -9,6 +9,21 @@
  */
 #ifndef APPLICATIONS_SENSOR_ST_S34F80_H_
 #define APPLICATIONS_SENSOR_ST_S34F80_H_
+#include "rtthread.h"
+#include "rtdevice.h"
+#include "stdint.h"
+#include "sths34pf80.h"
+#include <rtdbg.h>
+
+#if defined(RT_VERSION_CHECK)
+    #if (RTTHREAD_VERSION >= RT_VERSION_CHECK(5, 0, 2))
+        #define RT_SIZE_TYPE   rt_ssize_t
+    #else
+        #define RT_SIZE_TYPE   rt_size_t
+    #endif
+#endif
+
+int rt_hw_sths34pf80_init(const char *name, struct rt_sensor_config *cfg);