完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本帖最后由 gjianw217 于 2015-10-18 00:46 编辑 本帖主要内容:本帖子主要使用庆科提供的MiCOKit开发环境,来测试板上的DHT11温湿度传感器数据的采集,并简单了解MiCOKit的封装。 一、测试环境: 庆科开发套件EMW3165底板和扩展板 庆科SDK_MiCOKit_v2.3.0.2 USB串口线 JLink仿真器 串口调试助手 二、硬件分析: 在EMW3165套件的扩展板上,设计了常用的温湿度传感器DHT11,该传感器是一款含有已校准数字信号输出的温湿度复合传感器。具体的原理图如下图所示,DHT11数据采用单线制串行接口,电路连接比较简单, 而DTH11的时序图如下图所示: 数据1和数据0的时序图如下图所示: 三、软件分析: 1 软件分层 在庆科提供的SDK_MiCOKit_v2.3.0.2开发包中,进行了三层的软件封装,即:用户层(外设层),平台层,驱动层。 (1)用户层(外设层),定义在 SDK_MiCOKit_v2.3.0.2/Platform/Drivers/MiCOKit_EX/目录下,主要通过调用平台层的封装函数,定义了各扩展板上外设的操作,用户只要调用它们,而无需知道各外设的原理,即可对其进行操作。 (2)平台层 定义在SDK_MiCOKit_v2.3.0.2/Platform/Peripherals/目录下,以platform_xxx.h命名,主要通过调用驱动层的封装函数,定义了MiCO系统需要调用的接口,方便将MiCO移植到不同的芯片平台上。 (3)驱动层 定义在SDK_MiCOKit_v2.3.0.2/Platform/Peripherals/Libraries/STM32F4xx_StdPeriph_Driver/目录下,以stm32f4xx_xx.c命名,主要移植了有关芯片提供商提供的对芯片操作的接口函数。 2 软件定义在 SDK_MiCOKit_v2.3.0.2PlatformDriversMiCOKit_EXTtemp_hum_sensor目录下的temp_hum_sensor.c文件中,庆科已经为用户封装好了针对DHT11的操作接口,,而这些接口都是基于子目录DHT11下的函数进行封装的。在DHT11目录下,根据上面所述的DHT11时序图,进行了对DHT11采集数据的封装。现对用户操作接口作一说明(temp_hum_sensor.c)。 1 指定头文件(1)初始化函数 OSStatus temp_hum_sensor_init(void); (2)读数据函数 OSStatus temp_hum_sensor_read(int32_t *temperature, uint32_t *humidity)其中OSStatus 是一个MiCo定义的一个int32_t 类型 四、测试程序: 由于在IAR开发环境中,SDK_MiCOKit_v2.3.0.2已经指定了头文件目录 ,如下图所示, 开板板效果:故在测试文件中,指定头文件的方法如下:
2 编写测试程序
五、测试结果: |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-28 06:23 , Processed in 0.316920 second(s), Total 35, Slave 26 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号