PT100通过op07c芯片接到C8051F020芯片,用网上找的例程改的测到的温度室温只有8度,而且显示25以上就又称0了,大神们帮我看看是程序哪里不对? 万分感谢!! #include <stdio.h> #include <INTRINS.H> #define uchar unsigned char #define uint unsigned int sfr16 ADC0= 0xbe; // ADC0 data sfr16 ADC0GT = 0xc4; // ADC0 greater than window sfr16 ADC0LT = 0xc6; // ADC0 less than window sfr16 DAC0= 0xd2; // DAC0 data sfr16 DAC1= 0xd5; // DAC1 data //#define SYSCLK 22118400 // SYSCLK frequency in Hz //#define SAMPLE_RATE 50000 // Sample frequency in Hz //#define AMX0SL_AIN 0 // 0=AIN0....7=AIN7,8=TEMP uint ADCdata; bit ADCflag; uchar volarray[3]; //读到的数值缓存 //----------------------------------------------------------------------------- //----------------------------------------------------------------------------- // ADC0配置,ADC0BUSY为转换启动源, 并在转换完成时产生中断 //----------------------------------------------------------------------------- void ADC0_Init (void) { AMX0CF = 0x60; // AMUX Configuration Register AMX0SL = 0; // 第0个通道 ADC0CF = (22118400/50000)<< 3; // ADC conversion clock = .5MHz ADC0CN = 0x80; // ADC Control Register REF0CN = 0x03; // 启用内部基准源 EIE2 |= 0x02; // 启用 ADC 中断 } //----------------------------------------------------------------------------- // 显示子程序 //----------------------------------------------------------------------------- void ADZH() { float Voltage; int Vol; uint temp; if (ADCflag) { ADCflag=0; Voltage=(ADCdata*2.4)/4096; Vol=Voltage*100; volarray[0]=Vol/100; //数码管第一位 temp=Vol%100; volarray[1]=temp/10; //数码管第二位 volarray[2]=temp%10; //数码管第三位 AD0BUSY=1; } } //----------------------------------------------------------------------------- void ADCSH () { ADC0_Init(); // init ADC AD0BUSY=1; } //----------------------------------------------------------------------------- // ADC0采样中断 //----------------------------------------------------------------------------- void ADC0_ISR (void) interrupt 15 { AD0INT = 0; // 清 ADC 中断标志位 ADCdata= ADC0; // ADC采样数据 ADCflag=1; } |
共4条
1/1 1 跳转至页
关于silabs公司的C8051F020芯片的ADC数据采集问题
关键词: silabs C8051F020 数据采集 ADC
共4条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
与电子爱好者谈读图二被打赏50分 | |
【FRDM-MCXN947评测】Core1适配运行FreeRtos被打赏50分 | |
【FRDM-MCXN947评测】双核调试被打赏50分 | |
【CPKCORRA8D1B评测】---移植CoreMark被打赏50分 | |
【CPKCORRA8D1B评测】---打开硬件定时器被打赏50分 | |
【FRDM-MCXA156评测】4、CAN loopback模式测试被打赏50分 | |
【CPKcorRA8D1评测】--搭建初始环境被打赏50分 | |
【FRDM-MCXA156评测】3、使用FlexIO模拟UART被打赏50分 | |
【FRDM-MCXA156评测】2、rt-thread MCXA156 BSP制作被打赏50分 | |
【FRDM-MCXN947评测】核间通信MUTEX被打赏50分 |