12
返回列表 发新帖
楼主: angeline000

[已解决] 用PDB触发ADC遇到问题(已解决)

[复制链接]

该用户从未签到

124

主题

3600

帖子

0

金牌会员

Rank: 6Rank: 6

积分
5781
最后登录
1970-1-1
发表于 2013-12-5 10:44:16 | 显示全部楼层

回复:用PDB触发ADC遇到问题

回复第 6 楼 于2013-12-04 16:00:25发表:
发现时这样,不是CAN总线的问题,现在是在主循环中查询温度。
while(1)
{
temper = Ad_Convert(ADC0,11);
}
这样是没问题的
但是,如果在主循环中加一段延时,就转换不过去了。
while(1)
{
temper = Ad_Convert(ADC0,11);
dalay();
}
就是说,要不断的取值,不能打断,一旦断开一点时间,就不能转换
 
 

能将你的Ad_Convert()函数的代码贴出来吗?
回复 支持 反对

使用道具 举报

该用户从未签到

11

主题

64

帖子

0

注册会员

Rank: 2

积分
180
最后登录
1970-1-1
 楼主| 发表于 2013-12-5 11:27:55 | 显示全部楼层

RE:用PDB触发ADC遇到问题

我用的是拉普兰德的程序
uint16 LPLD_ADC_SE_Get(ADCx adcx, uint8 channel),然后再把转换成的值转换成温度值,合起来就是Ad_Convert()函数的内容。
回复 支持 反对

使用道具 举报

该用户从未签到

124

主题

3600

帖子

0

金牌会员

Rank: 6Rank: 6

积分
5781
最后登录
1970-1-1
发表于 2013-12-5 15:19:17 | 显示全部楼层

RE:用PDB触发ADC遇到问题

应该是delay()的原因,导致PDB下一个预触发来到时,由于delay()存在,程序还在配置LPLD_ADC_SE_Get中配置ADC采样通道,导致PDB预触发被忽略,从而使得PDB0_CH1S中的ERR为0x01.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2025-7-19 05:35 , Processed in 0.082793 second(s), 22 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

快速回复 返回顶部 返回列表