项目简介
本项目名为ZUPM,是一个用于 Zephyr Project 的UPM C源仓库。它提供多种传感器和设备的C语言驱动程序,助力开发者在Zephyr项目中便捷集成和使用各类硬件设备。不过该项目已不再由Intel维护,Intel停止了对其的开发和贡献。
项目的主要特性和功能
- 丰富的驱动程序:包含A110X传感器、AD8232心率监测模块、APA102 LED驱动板等多种传感器和设备的驱动程序,具备模拟输入、数字输出、通信接口等多种功能。
- 多版本支持:提供多个版本的ZUPM,支持不同版本的Zephyr内核,如ZUPM v1.2.0支持Zephyr Kernel 1.8。
- 示例代码:提供不同接口类型(AIO、SPI、I2C、GPIO)的代码示例,便于开发者快速上手。
安装使用步骤
前提条件
用户已下载本项目的源码文件。
安装步骤
- 复制Zephyr内核:
sh export ZEPHYR_GCC_VARIANT=zephyr export ZEPHYR_SDK_INSTALL_DIR=<path to your sdk installation directory> source zephyr-env.sh
- 复制ZMRAA:
sh
- 复制ZUPM:
sh
- 设置Kbuild以包含MRAA和UPM,并将UPM示例链接到Zephry示例:
sh cd $ZEPHYR_BASE patch -p1 < $ZEPHYR_BASE/ext/lib/mraa/install.patch patch -p1 < $ZEPHYR_BASE/ext/lib/upm/install.patch ln -s $ZEPHYR_BASE/ext/lib/upm/samples/upm $ZEPHYR_BASE/samples/
注意事项
ZUPM对ZMRAA有严格依赖,请先复制并修补ZMRAA,然后再进行ZUPM的操作。
代码示例运行
AIO示例(DFRobot pH传感器)
sh
cd $ZEPHYR_BASE/samples/upm/dfrph
make BOARD=arduino_101_sss
SPI示例(板载加速度计、陀螺仪、磁力计)
sh
cd $ZEPHYR_BASE/samples/upm/bmi160
make BOARD=arduino_101_sss
I2C示例(LCD显示屏)
sh
cd $ZEPHYR_BASE/samples/upm/jhd1313m1
make BOARD=arduino_101_sss
GPIO示例(板载LED)
以不同开发板为例:
- arduino_101
sh
cd $ZEPHYR_BASE/samples/upm/led
make BOARD=arduino_101
按照 Flash the target 操作,复位目标后,板载LED应闪烁。
- quark_d2000_crb
sh
cd $ZEPHYR_BASE/samples/upm/led
make BOARD=quark_d2000_crb
按照 Flash the target 操作,复位目标后,板载LED应闪烁。
- quark_se_c1000_devboard
sh
cd $ZEPHYR_BASE/samples/upm/led
make BOARD=quark_se_c1000_devboard
make BOARD=quark_se_c1000_devboard flash
复位目标后,板载LED应闪烁。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】