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

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

芯片解密STM8S103F3P6的手表设计

芯片解密STM8S103F3P6主程序

  1. #include"iostm8s103f3.h"
  2. #include"init.c"
  3. #include"OLED12864.c"
  4. #include"OLED12864_6X8.c"
  5. #include"OLED12864_8X16.c"
  6. #include"OLED12864_12X24.c"
  7. #include"DS3231.c"
  8. #include"BMP180.c"
  9. #include"ADC.c"

  10. /************************************************************
  11. 名称:基于STM8S103F3P6、OLED12864、BMP180和DS3231的手表设计
  12. 平台:STM8S103F3P6,HSI:16MHz不分频,Flash:8K,RAM:1K
  13. 简介:本设计采用STM8S103F3P6核心板主控。
  14.         实时时钟RTC芯片采用DS3231;
  15.         气压和温度数据来自BMP180;
  16.  
  17. ************************************************************/

  18. //运行数组
  19. unsigned char Display_Time[6]={0};
  20. unsigned char Display_Date[9]={2,0,1,9,0,3,0,9,6};
  21. unsigned char Display_Pressure[4]={0};//前3位为整数部分,后1位是小数部分
  22. unsigned char Display_Temperature[3]={0};//前2位为整数部分,后1位是小数部分
  23. unsigned char Display_Voltage[3]={0};//前1位为整数部分,后2位是小数部分

  24. //静态显示,上电只运行一次
  25. void Display_Flash_Fixed()
  26. {
  27.         OLED12864_6X8_AnyChar(18,0,'.',1);
  28.         OLED12864_6X8_AnyString(30,0,"Kpa",0);
  29.         OLED12864_6X8_AnyChar(69,0,'.',1);
  30.         OLED12864_6X8_AnyChar(87,0,'V',0);
  31.         OLED12864_6X8_AnyChar(110,0,'.',1);
  32.         OLED12864_6X8_AnyChar(122,0,'C',0);
  33.         OLED12864_12X24_MH(40,1);
  34.         OLED12864_12X24_MH(76,1);
  35.         _OLED12864_8X16_AnyChar(40,5,'.',1);
  36.         _OLED12864_8X16_AnyChar(64,5,'.',1);
  37.         OLED12864_6X8_AnyString(1,7,"  Linyar Lab. Watch  ",0);
  38. }

  39. //动态扫描,刷新变化的数据
  40. void Display_Flash_Dynamic()
  41. {
  42.         //气压显示
  43.         if(Display_Pressure[0]==0)
  44.         {
  45.                 OLED12864_6X8_AnyChar(0,0,' ',1);
  46.         }
  47.         else
  48.         {
  49.                 OLED12864_6X8_AnyNumber(0,0,Display_Pressure[0],1);
  50.         }
  51.         OLED12864_6X8_AnyNumber(6,0,Display_Pressure[1],1);
  52.         OLED12864_6X8_AnyNumber(12,0,Display_Pressure[2],1);
  53.         OLED12864_6X8_AnyNumber(24,0,Display_Pressure[3],1);
  54.         //电压显示
  55.         OLED12864_6X8_AnyNumber(63,0,Display_Voltage[0],1);
  56.         OLED12864_6X8_AnyNumber(75,0,Display_Voltage[1],1);
  57.         OLED12864_6X8_AnyNumber(81,0,Display_Voltage[2],1);
  58.         //温度显示
  59.         if(Display_Temperature[0]==0)
  60.         {
  61.                 OLED12864_6X8_AnyChar(98,0,' ',1);
  62.         }
  63.         else
  64.         {
  65.                 OLED12864_6X8_AnyNumber(98,0,Display_Temperature[0],1);
  66.         }
  67.         OLED12864_6X8_AnyNumber(104,0,Display_Temperature[1],1);
  68.         OLED12864_6X8_AnyNumber(116,0,Display_Temperature[2],1);
  69.         //时间显示
  70.         OLED12864_12X24_AnyNumber(16,1,Display_Time[0]);
  71.         OLED12864_12X24_AnyNumber(28,1,Display_Time[1]);
  72.         OLED12864_12X24_AnyNumber(52,1,Display_Time[2]);
  73.         OLED12864_12X24_AnyNumber(64,1,Display_Time[3]);
  74.         OLED12864_12X24_AnyNumber(88,1,Display_Time[4]);
  75.         OLED12864_12X24_AnyNumber(100,1,Display_Time[5]);
  76.         //日期显示
  77.         OLED12864_8X16_AnyNumber(8,5,Display_Date[0]);
  78.         OLED12864_8X16_AnyNumber(16,5,Display_Date[1]);
  79.         OLED12864_8X16_AnyNumber(24,5,Display_Date[2]);
  80.         OLED12864_8X16_AnyNumber(32,5,Display_Date[3]);
  81.         if(Display_Date[4]==0)
  82.         {
  83.                 _OLED12864_8X16_AnyChar(48,5,' ',1);
  84.         }
  85.         else
  86.         {
  87.                 OLED12864_8X16_AnyNumber(48,5,Display_Date[4]);
  88.         }
  89.         OLED12864_8X16_AnyNumber(56,5,Display_Date[5]);
  90.         if(Display_Date[6]==0)
  91.         {
  92.                 _OLED12864_8X16_AnyChar(72,5,' ',1);
  93.         }
  94.         else
  95.         {
  96.                 OLED12864_8X16_AnyNumber(72,5,Display_Date[6]);
  97.         }
  98.         OLED12864_8X16_AnyNumber(80,5,Display_Date[7]);
  99.         //星期显示
  100.         switch(Display_Date[8])
  101.         {
  102.                 case 1:OLED12864_8X16_AnyString(96,5,"MON");break;
  103.                 case 2:OLED12864_8X16_AnyString(96,5,"TUE");break;
  104.                 case 3:OLED12864_8X16_AnyString(96,5,"WED");break;
  105.                 case 4:OLED12864_8X16_AnyString(96,5,"THU");break;
  106.                 case 5:OLED12864_8X16_AnyString(96,5,"FRI");break;
  107.                 case 6:OLED12864_8X16_AnyString(96,5,"SAT");break;
  108.                 case 7:OLED12864_8X16_AnyString(96,5,"SUN");break;
  109.                 default:OLED12864_8X16_AnyString(96,5,"ERR");break;
  110.         }
  111. }



联系方式

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

在线客服
热线电话

企业微信