ADC Temperature
ADC Temperature示例实现了ADC对芯片内部温度的测量。
ADC Temperature示例的源代码和工程文件位于SDK_Folder\projects\peripheral\adc\temperature,其中工程文件在文件夹Keil_5下。
代码理解
示例工程流程图如图 5所示:
- 配置ADC模块。
g_adc_handle.init.channel_p = ADC_INPUT_SRC_TMP; g_adc_handle.init.channel_n = ADC_INPUT_SRC_TMP; g_adc_handle.init.input_mode = ADC_INPUT_SINGLE; g_adc_handle.init.ref_source = ADC_REF_SRC_BUF_INT; g_adc_handle.init.ref_value = ADC_REF_VALUE_0P8; g_adc_handle.init.clock = ADC_CLK_1P6M;ADC配置参数细节请参考ADC。此示例中init.channel_p、init.channel_n选择ADC_INPUT_SRC_TMP。init.ref_value选择ADC_REF_VALUE_0P8即0.85 V。
- 调用hal_gr551x_temp_init()接口初始化ADC TEMPERATURE模块。
- 调用hal_gr551x_temp_read()接口读取温度值。接口返回值即为芯片内部温度,单位摄氏度(℃)。
测试验证
- 用GProgrammer下载temperature.bin至开发板。
- 将开发板串口连接至PC端,打开并配置GRUart。
- 在GRUart的Receive Data窗口中将会显示转化后的温度值。