NXP MCU 技术论坛
直播中

芒果冰

11年用户 920经验值
私信 关注
[资料]

基于KL25的ADC乒乓模式采样——下篇

1)   ADC0 配置
工程建立后,首先在 Components Library 中,选中 1.jpg 进行配置。ADC0 工作参
数配置如下图所示。
2.jpg
【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。
3.jpg
ADC0 中断配置如下图 3 所示,使能 Conversion A 与 Conversion B 采样结束中断。
4.jpg

ADC0 初始化配置如下如图 4 所示,Conversion A 对应 Bandgap,Conversion B 对应内置
温度传感器。
5.jpg
2) TPM1 配置
在 Components Library 中,选中 6.jpg 进行配置。TPM1 工作参数配置如下图所示。

7.jpg

BDM setting】:使能或禁止TPMDebug状态下计数;
【Channels】:配置 Channel0,Channel1 工作模式;

至于 TPM1 的时钟选择需在 Cpu 配置界面中配置,展开 Processors,单击
8.jpg 后,在下图中配置。
9.jpg
TPM1 中断配置如下图 7 所示,使能 TPM1 溢出中断。
10.jpg
【Interrupt request】:中断使能寄存器(NVIC_ISERn)使能或禁止;
【Interrupt priority】:中断优先级选择;
【ISR Name】:中断函数名称;
【Timer overflow interrupt】:使能或禁止 TPM 溢出中断;

⑤ 主程序代码编写
PE 配置完成后,在 CW 界面左边的 Components 框中,单击 11.jpg ,PE 即可生成代码,但离
工程完成还有一段 “路程”,还需要我们在 ProcessorExpert.c 中对主函数进行编写。
中断函数编写:包括 ADC 采样完成中断(图 8 所示)﹑TPM1 溢出中断(图 9 所示);
12.jpg
温度转换﹑补偿函数(图 10 所示),代码细节在此不做特别说明,童鞋们可参考



温度传感器应用文档(AN3031);
13.jpg
结果打印输出函数;
14.jpg
使能 Bandgap:在对 Bandgap 进行 ADC 采样前,需要使能 Bandgap,即置位


PMC_REGSC[BGBE],在本例程的 PE_low_level_init()函数中添加此置位 PMC_REGSC[BGBE]
代码(如图 12 所示);
15.jpg
⑥ 工程运行调试
1.   运行工程
  • 工程代码编写完成后,单击 16.jpg 进行工程编译;
  • 编译通过后,单击 17.jpg 的向下箭头,在展开选项中选择 Debug Configurations(图 13 所示);
18.jpg
  • 在 Debug Configurations 弹出框的左边栏中,选中工程,接着单击 Debug(图
14 所示);
19.jpg
          ·最后在 Debug 弹出框中(图 15 所示),单击 20.jpg 进行 Debug;
21.jpg

2. 调试过程
选择串口调试工具,使用图 16 所示的配置信息,然后按照如下步骤调试:
Ø   在串口工具的发码区发送字符‘s’;
Ø   串口工具的收码区开始接受串口的打印输出信息(图 17 所示);
Ø   在串口工具的发码区发送任意字符即可中止串口打印输出;
22.jpg
注:其中端口号为实际硬件的串口号,查看【我的电脑】 ->【设备 管理器 】->【端口】。
23.jpg

Ping_Pong_KL25 _Test.rar (819.52 KB)
(下载次数: 13, 2015-1-20 11:30 上传)

回帖(2)

smyzhx

2015-4-16 12:48:36
哥,能告诉无我你用的是什么软件吗
举报

子宸丶

2017-2-8 09:13:57
新人表示感谢!
举报

更多回帖

发帖
×
20
完善资料,
赚取积分