芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

飞芯科技-芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

芯片复制STC15单片机NTC测温程序

  1. 芯片复制/*
  2. 芯片复制*                        NTC测温,10位AD分辨率0.1度
  3. 芯片复制*                                                  硬件说明:IAP15W4K58S4  
  4. *                                第一位数码管 位引脚-->P41                                                                  *
  5. *                                                         第二位数码管 位引脚-->P42                                                                  *
  6. *                                                         第三位数码管 位引脚-->P44                                                                  *
  7. *                                                         第四位数码管 位引脚-->P45                                                                  *
  8. *                                                         所有的数码管 段引脚-->P2                                                                    *
  9. *******************************************************************************/
  10. #define         MAIN_Fosc                22118400L        //定义主时钟
  11. #include <STC15.H>
  12. #include <intrins.H>
  13. #define        Timer0_Reload        (65536UL -(MAIN_Fosc / 1000))                //Timer 0 中断频率, 1000次/秒
  14. //#define uchar unsigned char
  15. //#define uint unsigned int
  16. typedef         unsigned char        u8;
  17. typedef         unsigned int        u16;
  18. typedef         unsigned long        u32;

  19. #define DIS_DOT                0x20
  20. #define DIS_BLACK        0x10
  21. #define DIS_                0x11

  22. u8 code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//共阳数字编码  0.1.2.3.4....9
  23. u8 qian,bai,shi,ge;

  24. bit        B_1ms;                        //1ms标志
  25. u16        msecond;
  26. u8 flag0;                      //正负温度标志位
  27. u8 flag1;                                        //温度超过100度,千位数正常显示
  28. u16        Get_ADC10bitResult(u8 channel);         //AD转换函数声明,channl输入通道选择
  29. u16        get_temperature(u16 adc);                          //温度转换函数声明

  30. /********************************************************************
  31. * 名称 : Delay()
  32. * 功能 : 延时
  33. * 输入 : i
  34. * 输出 : 无
  35. ***********************************************************************/
  36. void delay(u8 i)         //延时函数
  37. {
  38.   u16 j,k;
  39.   for(j=i;j>0;j--)
  40.     for(k=500;k>0;k--);
  41. }

  42. /********************************************************************
  43. * 名称 : display()
  44. * 功能 : 数码管显示函数
  45. * 输入 : 无
  46. * 输出 : 无
  47. ***********************************************************************/
  48. void display(u8 qian,u8 bai,u8 shi,u8 ge) //显示函数
  49. {
  50.                 if(flag0)    //温度低于0度千位数码管显示-
  51.                 {
  52.                                 P2=0XBF;
  53.                                 P41 = 0;
  54.                                 delay(5);
  55.                                 P41 = 1;
  56.                 }
  57.                 if(flag1)   //温度超过100度,千位显示
  58.                 {
  59.                                 P2=table[qian];
  60.                                 P41 = 0;
  61.                                 delay(5);
  62.                                 P41 = 1;
  63.                 }
  64.                 P2=table[bai];
  65.                 P42 = 0;
  66.                 delay(5);
  67.                 P42 = 1;

  68.                 P2=table[shi]&0X7F;                //十位显示小数点
  69.                 P44 = 0;
  70.                 delay(5);
  71.                 P44 = 1;

  72.                 P2=table[ge];
  73.                 P45 = 0;
  74.                 delay(5);
  75.                 P45 = 1;
  76. }



联系方式

地址:石家庄市新华区民族路77号华强广场D座2009
电话:0311-88816616/87087811
手机:13315190088
传真:0311-67901001
联系人:张工
网址:www.feixindz.com
邮箱:feixindz@163.com
微信:xinpianjiemi
QQ:527263666/568069805

在线客服
热线电话

企业微信