PIC18单片机的AD采样频率是怎么计算的(要具体) 10
刚接触PIC单片机,什么都不懂啊。。。晶振为4MHz,是按照上图标记那里设置吗?我采集的是单通道的音频信号,多次连续采样,根据采样定理,我需要确保采样的频率。以下是我自己...
刚接触PIC单片机,什么都不懂啊。。。
晶振为4MHz,是按照上图标记那里设置吗?
我采集的是单通道的音频信号,多次连续采样,根据采样定理,我需要确保采样的频率。
以下是我自己的理解,好像要等转换结束才能进行下一次采样,所以两次采样的间隔=保持电路采集时间+AD转换时间
PIC18F452手册中计算的最小采集时间为12.86μs,假设13μs。
A/D转换时间需要12个TAD时间,即12×8μs=96μs。
所以,采样的频率为1/(13+96)≈9KHz
不知道这样算对不对,请高手指教。或者还有什么更适合的设置AD的方法?
回答要具体,谢谢! 展开
晶振为4MHz,是按照上图标记那里设置吗?
我采集的是单通道的音频信号,多次连续采样,根据采样定理,我需要确保采样的频率。
以下是我自己的理解,好像要等转换结束才能进行下一次采样,所以两次采样的间隔=保持电路采集时间+AD转换时间
PIC18F452手册中计算的最小采集时间为12.86μs,假设13μs。
A/D转换时间需要12个TAD时间,即12×8μs=96μs。
所以,采样的频率为1/(13+96)≈9KHz
不知道这样算对不对,请高手指教。或者还有什么更适合的设置AD的方法?
回答要具体,谢谢! 展开
2个回答
展开全部
AD的采样总时间为采集时间+转换时间:
每位的A/D 转换时间定义为TAD。
最小采集时间TACQ为1.4us,但与你在ADCON2中的ACQT2:ACQT0有关:
ACQT2:ACQT0
111 = 20 个TAD
110 = 16 个TAD
101 = 12 个TAD
100 = 8 个TAD
011 = 6 个TAD
010 = 4 个TAD
001 = 2 个TAD
000 = 0 个TAD,这个是手动采样,
TAD的最小时间为0.7us,TAD由ADCON2的ADCS2:ADCS0设置:
ADCS2:ADCS0:A/D 转换时钟选择位
111 = FRC (时钟来自A/D 模块RC 振荡器)
110 = FOSC/64
101 = FOSC/16
100 = FOSC/4
011 = FRC (时钟来自A/D 模块RC 振荡器)
010 = FOSC/32
001 = FOSC/8
000 = FOSC/2
这个还是有点复杂,用一个图来说明采样的时间过程,图中假设采集时间TACQ=4TAD
展开全部
对于PIC18F452我不太清楚,但我学过PIC16F877A,如果需要连续采样的话,我不用去管单片机的采样速度多快,然后刻意延时等待它规定的时间后再去采集下一次的数据。。
因为PIC单片机里有一个寄存器定义两个Bit,其中有一个Bit是用来控制转换开关的,假设设置为1的时候,PIC会开始转换,等转换完,PIC硬件会自动将其设置为0,所以你需要做的就是等待那个标志位变为0,至于标志位是什么,寄存器是哪个我就不清楚了,因为我没有学过PIC18F452,16F877A的是标志位在C语言中关键字为ADGO
因为PIC单片机里有一个寄存器定义两个Bit,其中有一个Bit是用来控制转换开关的,假设设置为1的时候,PIC会开始转换,等转换完,PIC硬件会自动将其设置为0,所以你需要做的就是等待那个标志位变为0,至于标志位是什么,寄存器是哪个我就不清楚了,因为我没有学过PIC18F452,16F877A的是标志位在C语言中关键字为ADGO
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询