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

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

芯片解密STC单片机的AHT20温湿度计

芯片解密单片机源程序如下:

  1. 芯片解密#include "stc8.h"        //STC8头文件
  2. 芯片解密#include "def.h"        //宏定义 常用函数
  3. 芯片解密#include "delay.h"  //延时函数
  4. 芯片解密#include "aht10.h"
  5. 芯片解密#include "timer.h"
  6. 芯片解密#include "oled.h"



  7. u32  read_aht10_Cnt = 0;

  8. u32  CT_data[2];

  9. int  AHT10_Tem,AHT10_Hum;

  10. //本地函数申明

  11. void Read_TempAndHum(void);

  12. //外部扩展变量声明
  13. extern bit B_1ms;

  14. void main(void)
  15. {  
  16.     u8  ret = 0;  
  17.     u8  cnt = 0;
  18.    
  19.     //延时等待电源稳定
  20.     delay_ms(500);
  21.     delay_ms(500);
  22.    
  23.     Timer0_Init();         //定时器0初始化
  24.     Timer1_Init();         //定时器1初始化
  25.    
  26.     EA     = 1;            //开启总中断
  27.    
  28.     OLED_Init();                       //初始化OLED  
  29.     OLED_Clear();          //清屏

  30.     ret = JH_Init();

  31.     while(JH_Read_Cal_Enable()==0)//等到校准输出使能位为1,才读取。
  32.     {
  33.         ret = JH_Init();      //如果为0再使能一次
  34.         delay_ms(30);
  35.         
  36.         if(++cnt>3)
  37.             break;
  38.     }

  39.     while(1)
  40.     {
  41.         Read_TempAndHum();      //获取温湿度
  42.     }
  43. }

  44. void Read_TempAndHum(void)
  45. {
  46.     if(read_aht10_Cnt>=1000)     //1S读取一次温湿度
  47.     {
  48.         JH_Read_CTdata(CT_data);                //读取温度和湿度

  49.         //计算得到湿度值(放大了10倍,如果c1=523,表示现在湿度为52.3%)
  50.         AHT10_Hum = CT_data[0]*1000/1024/780;

  51.         //计算得到温度值(放大了10倍,如果t1=245,表示现在温度为24.5℃)
  52.         AHT10_Tem = CT_data[1] *200*10/1024/1024-512;

  53.         /*************  温湿度计  **********/
  54.         OLED_ShowCHinese(32,0, 1,16);//温
  55.         OLED_ShowCHinese(48,0, 2,16);//湿
  56.         OLED_ShowCHinese(64,0, 3,16);//度
  57.         OLED_ShowCHinese(80,0, 4,16);//计
  58.         
  59.         /*************  显示温度  **********/
  60.         OLED_ShowCHinese(0 ,3, 1,16); //温
  61.         OLED_ShowCHinese(16,3, 3,16); //度
  62.         OLED_ShowString( 32,3,":",16);
  63.         OLED_ShowString( 64,3,".",16);//显示小数点

  64.         OLED_ShowNum(48, 3,AHT10_Tem/100     , 1,16);//环境温度-十位
  65.         OLED_ShowNum(56, 3,(AHT10_Tem%100)/10, 1,16);//环境温度-个位
  66.         OLED_ShowNum(72, 3,AHT10_Tem%10      , 1,16);//环境温度-小数位
  67.         
  68.         OLED_ShowCHinese(96,3,0,16);  //"℃"
  69.         
  70.         /*************  显示湿度  **********/
  71.         OLED_ShowCHinese(0 ,6, 2,16); //湿
  72.         OLED_ShowCHinese(16,6, 3,16); //度
  73.         OLED_ShowString( 32,6,":",16);
  74.         OLED_ShowString( 64,6,".",16);//显示小数点
  75.         
  76.         OLED_ShowNum(48, 6,AHT10_Hum/100     , 1,16);//环境湿度-十位
  77.         OLED_ShowNum(56, 6,(AHT10_Hum%100)/10, 1,16);//环境湿度-个位
  78.         OLED_ShowNum(72, 6,AHT10_Hum%10      , 1,16);//环境湿度-小数位

  79.         OLED_ShowString(96, 6,"%",16);

  80.         read_aht10_Cnt = 0;
  81.     }
  82. }



联系方式

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

在线客服
热线电话

企业微信