微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 硬件电路设计 > 硬件电路设计讨论 > ZIGBEE的CC2530芯片的ADC采样频率的设置

ZIGBEE的CC2530芯片的ADC采样频率的设置

时间:10-02 整理:3721RD 点击:
需要用CC2530的片内ADC进行信号采集,由于用的是协议栈,我对这里采样频率的设置没有弄懂,我是在SampleApp_Send_P2P_Message写的AD转换程序,协议栈中设置无线发送频率为40Hz,那么我的采样频率是否就是40Hz?网上查到这句话:

AD最高的采样频率跟转换时间有关系。但AD的采样频率是由程序控制决定的。为了使采样频率精准,一般用单片机的定时器来控制AD的转换,这样采样频率就由单片机定时器中断的时间决定了。


不用协议栈时,程序可能是类似这样(网上找的温度采集程序):

1 void main(void)

2 {   

3     char i;

4     float AvgTemp;  

5     char strTemp[6];

6     

7    InitUART();                          //初始化串口

8    InitSensor();                         //初始化 ADC

9     

10     while(1)

11     {

12         AvgTemp =GetTemperature();   

13         

14         for (i=0; i<63; i++)

15         {   

16            AvgTemp += GetTemperature();  

17            AvgTemp = AvgTemp/2;         //每次累加后除 2

18         }

19        

20        memset(strTemp, 0, 6);

21        sprintf(strTemp,"%.02f", AvgTemp);//将浮点数转成字符串

22        UartSendString(strTemp, 5);       //通过串口发给电脑显示芯片温度

23         DelayMS(1000);                    //延时

24     }


25 }


这里的采样频率是否可以理解为1Hz? 那么我在协议栈里封装好的函数下写程序,实际上SampleApp_Send_P2P_Message函数是周期性地向外发送无线数据的。假设目前我要求对信号的采样频率要大于30Hz,我应该从哪里入手?


Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top