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网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
vscode+cmake搭建雅特力AT32L021开发环境被打赏30分 | |
【换取逻辑分析仪】自制底板并驱动ArduinoNanoRP2040ConnectLCD扩展板被打赏47分 | |
【分享评测,赢取加热台】RISC-V GCC 内嵌汇编使用被打赏38分 | |
【换取逻辑分析仪】-基于ADI单片机MAX78000的简易MP3音乐播放器被打赏48分 | |
我想要一部加热台+树莓派PICO驱动AHT10被打赏38分 | |
【换取逻辑分析仪】-硬件SPI驱动OLED屏幕被打赏36分 | |
换逻辑分析仪+上下拉与多路选择器被打赏29分 | |
Let'sdo第3期任务合集被打赏50分 | |
换逻辑分析仪+Verilog三态门被打赏27分 | |
换逻辑分析仪+Verilog多输出门被打赏24分 |