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

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

单片机解密STM8S USB电压电流表制作

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


  1. <font style="font-size: 14px">#include <iostm8s103f2.h>
  2. #include "ST7565_12864.h"
  3. #include "ziku.h"
  4. #define uchar  unsigned char
  5. #define uint   unsigned int
  6. #define KEY PA_IDR_IDR3    //PA 的第3位做KEY

  7. void EEP_Init(void)  //EEPROM初始化        
  8. {
  9.   FLASH_CR1  = 0x00;
  10.   FLASH_CR2  = 0x00;
  11.   FLASH_NCR2 = 0xFF;
  12.   FLASH_DUKR = 0xae;          //写入第一个秘钥
  13.   FLASH_DUKR = 0x56;          //写入第二个秘钥
  14.   while(!(FLASH_IAPSR&0x08)); //等待就绪
  15. }
  16. void EEP_W(uchar addr,float data) //写EEPROM
  17. {
  18.   float *p;
  19.   p=(float *)(0x4000+addr);
  20.   *p=data;
  21.   while(!(FLASH_IAPSR&0x04)); //等待完成
  22. }
  23. float EEP_R(uchar addr)  //读EEPROM
  24. {
  25.   float *p;
  26.   p=(float *)(0x4000+addr);
  27.   return *p;
  28. }

  29. void Hellow(void)     //初始屏幕
  30. {
  31.     ClearScreen();    //清除屏幕
  32.     DisplayFont(2, 8+4, FONT_8X16,19);  //U
  33.     DisplayFont(2, 16+4, FONT_8X16,17); //S
  34.     DisplayFont(2, 24+4, FONT_8X16,14); //B
  35.     DisplayFont(2, 32+4, FONT_16X16,0);//电
  36.     DisplayFont(2, 48+4, FONT_16X16,1);//压
  37.     DisplayFont(2, 64+4, FONT_16X16,0);//电
  38.     DisplayFont(2, 80+4, FONT_16X16,2);//流
  39.     DisplayFont(2, 96+4, FONT_16X16,3);//表
  40.     DisplayFont(5, 40+4, FONT_16X16,9);//丑
  41.     DisplayFont(5, 56+4, FONT_16X16,10);//孩
  42. }

  43. void ADC_Init(void)
  44. {
  45.     ADC_CR1  = 0x20;       //分频系数为4 单次转换模式 先不启动ADC转换      
  46.     ADC_CR2  = 0x00;       //非外部触发  数据左对齐   禁止扫描模式   
  47.     ADC_CSR  = 0x03;       //禁止转换结束中断 设置转换通道为AIN3
  48.     ADC_TDRL|= 0x60;      //禁止AIN5AIN6施密特触发器功能  
  49. }


  50. uint Get_Adc(uchar ac)           //获取adc值
  51. {
  52.         uint Value;
  53.         ADC_CSR  = ac;                 //选择通道
  54.     ADC_CR1 |= 0x01;       //第一次写1是从低功耗模式唤醒
  55.         ADC_CSR &= ~0x80;              //清除转换标志
  56.         ADC_CR1 |= 0x01;               //开始转换
  57.         while(!(0x80&ADC_CSR));        //等待转换完成
  58.         Value  = (uint) ADC_DRH;       //取高8位
  59.         Value  = Value<<2;             //左移两位
  60.         Value += ADC_DRL;              //取低两位
  61.         return(Value);                 //返回adc值
  62. }



联系方式

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

在线客服
热线电话

企业微信