1) ADC0 配置
工程建立后,首先在 Components Library 中,选中
进行配置。ADC0 工作参
数配置如下图所示。
【Input clock select】:根据要求选择 ADC 时钟源;
【Prescaler】:预分频器,根据实际需要选择相应的分频系数;
【Conversion mode】:选择 ADC 的采样模式;
【Result data format】:ADC 采样精度选择;
【Conversion trigger】:选择 ADC 采样的触发源;
【HW average】:使能或禁止硬件平均功能;
【HW average length】:选择硬件平均的 ADC 采样数量;
【Compare】:使能或禁止 ADC 比较功能;
ADC0 采样源配置如下图 2 所示,采样源选择采样内置温度传感器和 Bandgap。
ADC0 中断配置如下图 3 所示,使能 Conversion A 与 Conversion B 采样结束中断。
ADC0 初始化配置如下如图 4 所示,Conversion A 对应 Bandgap,Conversion B 对应内置
温度传感器。
2) TPM1 配置
在 Components Library 中,选中
进行配置。TPM1 工作参数配置如下图所示。
【BDM setting】:使能或禁止TPM在Debug状态下计数; 【Channels】:配置 Channel0,Channel1 工作模式;
至于 TPM1 的时钟选择需在 Cpu 配置界面中配置,展开 Processors,单击
后,在下图中配置。
TPM1 中断配置如下图 7 所示,使能 TPM1 溢出中断。
【Interrupt request】:中断使能寄存器(NVIC_ISERn)使能或禁止;
【Interrupt priority】:中断优先级选择;
【ISR Name】:中断函数名称;
【Timer overflow interrupt】:使能或禁止 TPM 溢出中断;
⑤ 主程序代码编写
PE 配置完成后,在 CW 界面左边的 Components 框中,单击
,PE 即可生成代码,但离
工程完成还有一段 “路程”,还需要我们在 ProcessorExpert.c 中对主函数进行编写。
中断函数编写:包括 ADC 采样完成中断(图 8 所示)﹑TPM1 溢出中断(图 9 所示);
温度转换﹑补偿函数(图 10 所示),代码细节在此不做特别说明,童鞋们可参考
温度传感器应用文档(AN3031);
结果打印输出函数;
使能 Bandgap:在对 Bandgap 进行 ADC 采样前,需要使能 Bandgap,即置位
PMC_REGSC[BGBE],在本例程的 PE_low_level_init()函数中添加此置位 PMC_REGSC[BGBE]
代码(如图 12 所示);
⑥ 工程运行调试
1. 运行工程
- 工程代码编写完成后,单击
进行工程编译;
- 编译通过后,单击
的向下箭头,在展开选项中选择 Debug Configurations(图 13 所示);
- 在 Debug Configurations 弹出框的左边栏中,选中工程,接着单击 Debug(图
14 所示);
·最后在 Debug 弹出框中(图 15 所示),单击
进行 Debug;
2. 调试过程
选择串口调试工具,使用图 16 所示的配置信息,然后按照如下步骤调试:
Ø 在串口工具的发码区发送字符‘s’;
Ø 串口工具的收码区开始接受串口的打印输出信息(图 17 所示);
Ø 在串口工具的发码区发送任意字符即可中止串口打印输出;
注:其中端口号为实际硬件的串口号,查看【我的电脑】 ->【设备 管理器 】->【端口】。