芯片解密,芯片破解,IC解密,单片机解密,MCU解密,STM解密

飞芯科技提供芯片解密,芯片破解,IC解密,单片机解密,MCU解密,STM解密逆向服务

单片机解密stm32单片机的水温控制PID控制源程序

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

  1. /************************************************************
  2. **实验名称:
  3. **功能:
  4. **注意事项:显示汉字采用了两种方式,一种是代码字库,一种是外FLASH字库.
  5. 单片机解密/

  6. 单片机解密#include "STM32Lib\\stm32f10x.h"
  7. 单片机解密#include "hal.h"
  8. 单片机解密#include "TFT\\TFTdriver.h"
  9. //#include "bmp_data.h"
  10. #include "KeyManage.h"
  11. #include <math.h>


  12. u16 temprature=100;//当前温度
  13. //u8 temprature_wei[]={0,0,1}; //小数--各位--十位
  14. u16 set_temprature=100;//设定温度。最后一位是小数
  15. u8 set_wei[]={0,0,1};//小数 --个位-- 十位
  16. char string1[]="当前温度:10.0毒";
  17. char string2[]="设定温度:10.0毒";
  18. char string3[]="请设定温度";
  19. extern void USART1_Putc(unsigned char c);
  20. extern void USART2_Putc(unsigned char c);
  21. extern void PID_temp(void);
  22. extern void PID_Ctrl(void);//增量式PID
  23. u16 temp[200]={0};//温度存储共1000s
  24. u8 flag=0;//超过200s的标志
  25. u16 temp_geshu=0;
  26. u8 flag_1s=0;//1s中断
  27. u8 flag_3s=0;//3s中断
  28. u8 heat_pwm=0;//加热时长
  29. u8 state=0;//当前状态 0--请输入数据        ;1--加热中;2--冷却中;//3--稳态
  30. int main(void)
  31. {
  32. //        u32 i,j,k;

  33.         ChipHalInit();                        //片内硬件初始化
  34.         ChipOutHalInit();                //片外硬件初始化
  35.         
  36.         Lcd_Init();                                //初始化

  37.         TFTRect(10,10,230,310,BLACK);

  38.         TFTHLine(10,30,220,BLACK);
  39.         TFTHLine(10,50,220,BLACK);

  40.         
  41.         BG_COLOR=GRAY1;//设置底色
  42.         TFTShowString16(20,12,string1,RED,0);
  43.         
  44.         
  45.         
  46.         TFTShowString16(20,32,string2,BLUE,0);
  47. //        BG_COLOR=RED;
  48.         TFTShowString16(20,72,string3,RED,0);
  49.         
  50.         //TFTShowBmp(120,120,64,64,(COLOR*)Bmp_1);
  51. //        TFTShowASC816(92,12,'0',RED);
  52. ////////坐标系
  53.         BG_COLOR=GRAY1;//设置底色
  54.         TFTRectFill(11,100,229,300,GRAY1);//清空
  55.         TFTHLine(11,300,219,GREEN);        //0度每格0.5度
  56.         TFTShowString16(11,300-8," 0",RED,0);
  57.         TFTHLine(11,280,219,GREEN);
  58.         TFTShowString16(11,280-8,"10",RED,0);
  59.         TFTHLine(11,260,219,GREEN);
  60.         TFTShowString16(11,260-8,"20",RED,0);
  61.         TFTHLine(11,240,219,GREEN);
  62.         TFTShowString16(11,240-8,"30",RED,0);
  63.         TFTHLine(11,220,219,GREEN);
  64.         TFTShowString16(11,220-8,"40",RED,0);
  65.         TFTHLine(11,200,219,GREEN);
  66.         TFTShowString16(11,200-8,"50",RED,0);
  67.         TFTHLine(11,180,219,GREEN);
  68.         TFTShowString16(11,180-8,"60",RED,0);
  69.         TFTHLine(11,160,219,GREEN);
  70.         TFTShowString16(11,160-8,"70",RED,0);
  71.         TFTHLine(11,140,219,GREEN);
  72.         TFTShowString16(11,140-8,"80",RED,0);
  73.         for(;;)
  74.         {
  75.            ManageKey(PollingKey());
  76. //           USART1_Putc('a');
  77. /*                for(j=0;j<200;j++)
  78.                 {
  79.                         TFTHLine(11,150,230,BLACK);
  80.                         for(i=0;i<200;i++)
  81.                         {
  82.                                 TFTPoint(i+11,150-(signed char)(sin(3.14*(i+j)/100)*50),RED);
  83.                         }
  84.                         for(k=0;k<30000;k++);
  85.                         TFTRectFill(11,100,211,200,GRAY1);         

  86.                 }                */
  87.                 if(flag_1s)
  88.                 {
  89.                         flag_1s=0;
  90.                
  91.                         USART2_Putc(temprature/100+'0');
  92.                         USART2_Putc(temprature%100/10+'0');
  93.                         USART2_Putc('.');
  94.                         USART2_Putc(temprature%10+'0');
  95.                         USART2_Putc(',');
  96.                         if(temp_geshu<199&&temp_geshu>0)
  97.                         {
  98.                                 temp[temp_geshu]=temprature; //29-229绘图
  99.                                 temp_geshu++;
  100.                                 TFTPoint(29+temp_geshu,300-temprature/5,RED);
  101.                         }
  102.                         else if(temp_geshu==0)
  103.                         {
  104.                                 temp[temp_geshu]=temprature; //29-229绘图
  105.                                 temp_geshu++;        
  106.                                 ////////重画坐标系
  107.                                 TFTRectFill(11,100,229,300,GRAY1);//清空
  108.                                 TFTHLine(11,300,219,GREEN);        //0度每格0.5度
  109.                                 TFTShowString16(11,300-8," 0",RED,0);
  110.                                 TFTHLine(11,280,219,GREEN);
  111.                                 TFTShowString16(11,280-8,"10",RED,0);
  112.                                 TFTHLine(11,260,219,GREEN);
  113.                                 TFTShowString16(11,260-8,"20",RED,0);
  114.                                 TFTHLine(11,240,219,GREEN);
  115.                                 TFTShowString16(11,240-8,"30",RED,0);
  116.                                 TFTHLine(11,220,219,GREEN);
  117.                                 TFTShowString16(11,220-8,"40",RED,0);
  118.                                 TFTHLine(11,200,219,GREEN);
  119.                                 TFTShowString16(11,200-8,"50",RED,0);
  120.                                 TFTHLine(11,180,219,GREEN);
  121.                                 TFTShowString16(11,180-8,"60",RED,0);
  122.                                 TFTHLine(11,160,219,GREEN);
  123.                                 TFTShowString16(11,160-8,"70",RED,0);
  124.                                 TFTHLine(11,140,219,GREEN);
  125.                                 TFTShowString16(11,140-8,"80",RED,0);
  126.                                 TFTPoint(29+temp_geshu,300-temprature/5,RED);
  127.                                 
  128.                         }



联系方式

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

在线客服
热线电话

企业微信