品诺电子STC15W4K-实验29-ADC温敏电阻测量温度 单片机源程序如下: /************************************************************************************ * * 实验平台:品诺电子STC15W4K核心板 + 品诺电子"开拓者"扩展板 * 时钟选择:内部IRC时钟22.1184M * 功能说明:该实验通过ADC功能,使用扩展板上的温敏电阻测量当前温度,温度值显示在数码管上。温敏电阻相对于DS18B20温度传感器,价格低的多。 * ************************************************************************************/ #include "stc15f2k60s2.h" #include "my_type.h" #include "main.h" #include "num.h" #include "adc.h" #include "ntc_temp.h" /******************************************************************** 函数功能:对IAP15W4K,STC15W4K的IO口初始化为准双向IO口。 入口参数:无。 返 回:无。 备 注:STC15W4K系列的芯片,上电后所有与PWM相关的IO口(P0.6/P0.7 /P1.6/P1.7/P2.1/P2.2/P2.3/P2.7/P3.7/P4.2/P4.4/P4.5)均为高 阻态,需将这些口设置为准双向口或强推挽模式方可正常使用。 ********************************************************************/ void InitIO(void) { //初始化 P0 P1 P2 P3 P4 为准双向IO口 P0M0 = 0x00; P0M1 = 0x00; P1M0 = 0x00; P1M1 = 0x00; P2M0 = 0x00; P2M1 = 0x00; P3M0 = 0x00; P3M1 = 0x00; P4M0 = 0x00; P4M1 = 0x00; } /**///////////////////////Pino Electronics////////////////////////**/ /******************************************************************** 函数功能:主函数。 入口参数:无。 返 回:无。 备 注:无。 ********************************************************************/ void main (void) { u8 temp; InitIO(); InitTimer0(); InitADC(ADC_CHANNEL_TMP); EA=1; //允许所有中断 while(1){ if(GetAdcUpdatedFlag()){ temp=AdcDatToTemp(GetAdcData()); SetNumDisplayDecimal(temp); InitADC(ADC_CHANNEL_TMP); } if(GetSecondFlag()){ Led2Tog(); } } } /**///////////////////////Pino Electronics////////////////////////**/ |
|