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 跳转至页
回复
我要赚赏金打赏帖 |
|
|---|---|
| 【S32DS】S32K3 RTD7.0.1 HSE 组件配置报错问题解决被打赏¥27元 | |
| 【S32K3XX】MCME 启动 CORE1被打赏¥23元 | |
| AG32VH407下温度大气压传感器及其检测被打赏¥20元 | |
| AG32VH407下光照强度传感器BH1750及其检测被打赏¥22元 | |
| AT32VH407下使用温湿度传感器DHT22进行检测被打赏¥20元 | |
| DIY一个婴儿澡盆温度计被打赏¥34元 | |
| 【FreeRtos】FreeRtos+MPU region 配置规则被打赏¥23元 | |
| 【分享开发笔记,赚取电动螺丝刀】三分钟快速上手驱动墨水屏(ArduinoIDE)被打赏¥28元 | |
| 【S32K3XX】LIN 通讯模块使用被打赏¥31元 | |
| 【FreeRtos】FreeRtos + MPU模块的配置使用被打赏¥32元 | |

我要赚赏金
