导航

  • 下一个
  • 以前的|
  • 使用SDK6外设驱动程序

6。DA14531温度传感器

笔记

您必须创建了一个修改的版本extent_peripheral_template.示例项目,如下所述初始项目在继续之前的章节!

6.1。使用温度传感器初始项目通过具有SDK6的GPADC外围驱动器读取温度传感器的章节。

6.1.1。添加GPADC驱动程序
#包括“adc.h”#包括“ADC_531.H”

6.1.2。读取温度传感器
静止的INT8_T.temp_sensor_read.(空白){INT8_T.临时;/ *大多数ADC配置由驾驶员在温度下执行选择传感器输入,以便我们可以将其留空。* /adc_config_t.ADC_CFG.={。输入模式=adc_input_mode_single_ended那。输入=adc_input_se_temp_sens.那};ADC_INIT.(&ADC_CFG.);临时=adc_get_temp.();adc_disable.();返回临时;}

笔记

这adc_get_temp.功能读取传感器,应用存储在OTP中的单点校准值,并返回温度值以摄氏度为单位。

我们现在将开始使用上述功能定期读取温度的软件计时器,并通过串行调试端口输出。

6.1.3。开始计时器
静止的空白timer_cb.(空白);静止的INT8_T.temp_sensor_read.(空白);静止的timer_hnd.timer_id.__属性__((部分(“Retention_mem_area0”),Zero_Init.));

要启动计时器将以下代码添加到user_on_set_dev_config_complete.功能包含在内user_empty_peripheral_template.c.:

/ *开始定时器 - 期间有10ms的单位,即200 = 2000ms * /timer_id.=app_easy_timer.(200.那timer_cb.);

笔记

因为内核尚未运行user_on_init.回调发生在该函数中无法启动计时器。

最后实现将在计时器到期时执行的回调。要执行此操作,请将以下功能添加到结尾user_empty_peripheral_template.c.文件:

静止的空白timer_cb.(空白){/ *使用GPADC测量温度* /INT8_T.temp_c.=temp_sensor_read.();Arch_printf.(“\ n \ r温度:%DC“那temp_c.);/ *重新启动定时器* /timer_id.=app_easy_timer.(200.那timer_cb.);}

现在构建项目并将其加载到目标上。当执行时,将通过每2秒通过串行调试端口输出测量的温度:

_images / temp_output.png.“src=

图9.温度测量串行调试输出

商标“></a></p>
     <h3><a href=目录

  • 1.介绍
  • 2.准备开发套件
  • 3.初始项目
  • 4. DA14531实时时钟(RTC)
  • 5. DA14531 SPI Flash
  • 6. DA14531温度传感器
  • 7. DA14531 OTP内存
  • 8. DA14531 Hibernate模式
  • 9. DA14531通用ADC(手动模式)
  • 10.修订历史
  • 11.状态定义
  • 12.免责声明
  • 13. RoHS合规

快速搜索

导航

  • 使用SDK6外设驱动程序
©版权所有2021,对话框半导体。雷竞技电竞平台