英飞凌TC264之ADC

ADC: ADC理论有8个转换器,可同步转换;每个转换8个通道,精度为8/10/12位。 ADC端口AN可以作为输入口,不可作为输出口,与ARM单片机不同!

ADC初始化:

/** 参数说明:channel ADC通道* 参数说明:Freq_Hz ADC通道采样频率 注意 ADC有三个模块 通道0-13 16-25 35-49分别属于这三个通道 这里使用扫描采样方式,因此如果一个ADC模块同时初始化了N个通道,则ADC实际采用率 = Freq_Hz / N* 函数返回:无*/void ADC_InitConfig(ADC_Channel_t channel, unsigned long Freq_Hz){}

初始化后在使用读ADC_Read就可以读取ADC的值

unsigned short ADC_Read(ADC_Channel_t chn){}

例程:

void Test_ADC_7mic(void){ char txt[200]; unsigned int MICVmin[8]; ADC_InitConfig(ADC0, 80000); //初始化 ADC_InitConfig(ADC1, 80000); //初始化 ADC_InitConfig(ADC2, 80000); //初始化 ADC_InitConfig(ADC3, 80000); //初始化 ADC_InitConfig(ADC4, 80000); //初始化 ADC_InitConfig(ADC5, 80000); //初始化 ADC_InitConfig(ADC6, 80000); //初始化 ADC_InitConfig(ADC7, 80000); //初始化 delayms(500); //延时等待UART_PutStr(UART0," ------------------------------------------------- ");//分界线while(1){MICVmin[0]=ADC_Read(ADC0);MICVmin[1]=ADC_Read(ADC1);MICVmin[2]=ADC_Read(ADC2);MICVmin[3]=ADC_Read(ADC3);MICVmin[4]=ADC_Read(ADC4);MICVmin[5]=ADC_Read(ADC5);MICVmin[6]=ADC_Read(ADC6);MICVmin[7]=ADC_Read(ADC7);//转换结果为字符串,串口发送或者屏幕显示sprintf(txt,"[0]:%05d [1]:%05d [2]:%05d [3]:%05d [4]:%05d [5]:%05d [6]:%05d [7]:%05d ",MICVmin[0],MICVmin[1],MICVmin[2],MICVmin[3],MICVmin[4],MICVmin[5],MICVmin[6],MICVmin[7]);//串口发送到上位机UART_PutStr(UART0,txt);//AN0--AN7十进制数据输出到上位机 LED_Ctrl(LED0,RVS); //电平翻转,LED闪烁delayms(500); //延时等待}}

先初始化ADC,采样频率是80000,初始化完后在while里一直读取ADC的数值,然后再通过串口发送给上位机。


比丘资源网 » 英飞凌TC264之ADC

发表回复

提供最优质的资源集合

立即查看 了解详情