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

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

STM32H7单片机+SI5351双通道高频信号发生器IC解密

IC解密STM32H7单片机源程序:
/*************************
内部RC时钟8MHZ
***********************************/
#include "mega16.h"
#include "i2c.h"
#include "delay.h"
#asm
  .equ __i2c_port=0x12 //D端口地址0x12
  .equ __sda_bit=6 //6脚
  .equ __scl_bit=7 //7脚
#endasm
#define uchar unsigned char
#define uint unsigned int
#define uint8_t unsigned char
#define uint16_t unsigned int
#define uint32_t  signed long int
/////////////////////////////////////
#define SI_CLK0_CONTROL    16            
#define SI_CLK1_CONTROL    17
#define SI_CLK2_CONTROL    18
#define SI_SYNTH_PLL_A    26
#define SI_SYNTH_PLL_B    34
#define SI_SYNTH_MS_0        42  
#define SI_SYNTH_MS_1        50  
#define SI_SYNTH_MS_2        58  
#define SI_PLL_RESET        177

#define SI_R_DIV_1 0x00               
#define SI_R_DIV_2 0x16      
#define SI_R_DIV_4 0x20     
#define SI_R_DIV_8 0x30      
#define SI_R_DIV_16 0x40      
#define SI_R_DIV_32 0x50      
#define SI_R_DIV_64 0x60      
#define SI_R_DIV_128 0x70      

#define SI_CLK_SRC_PLL_A 0x00  
#define SI_CLK_SRC_PLL_B 0x20   

#define XTAL_FREQ    25000000 // 晶体频率

#define I2C_START 0x08
#define I2C_START_RPT 0x10
#define I2C_SLA_W_ACK 0x18
#define I2C_SLA_R_ACK 0x40
#define I2C_DATA_ACK 0x28
#define I2C_WRITE 0xc0  
#define I2C_READ  0xc1   

unsigned char Table[]="0123456789";
unsigned char Data[9];
/**********1602**************/
#define RS_1 PORTC.2=1
#define RS_0 PORTC.2=0

#define EN_1 PORTC.0=1
#define EN_0 PORTC.0=0

#define LCD_D4_1 PORTB.4=1
#define LCD_D4_0 PORTB.4=0

#define LCD_D5_1 PORTB.3=1
#define LCD_D5_0 PORTB.3=0

#define LCD_D6_1 PORTB.2=1
#define LCD_D6_0 PORTB.2=0

#define LCD_D7_1 PORTB.1=1
#define LCD_D7_0 PORTB.1=0
//////////函数声明//////////////////////////////////
void i2cSendRegister(uint8_t reg,uint8_t data);
void setupPLL(uint8_t pll, uint8_t mult, uint32_t num, uint32_t denom);
void setupMultisynth(uint8_t synth, uint32_t divider, uint8_t rDiv);
//void si5351aOutputOff(uint8_t clk);
void si5351aSetFrequency(uint8_t td,uint32_t frequency);

void LCD_en_write(void);//液晶使能
void LCD_by(uchar abc);//写字节
void LCD_set_xy(uchar x, uchar y);//写地址
void LCD_write_str(uchar X,uchar Y,uchar *s);//写字符串
void LCD_init(void);//液晶初始化
void delay_nus(uint n);
void del_ms(uint n);
void delay_us(unsigned  int n);
void process_8(unsigned long i,unsigned char *p);
void display_8(unsigned char x, unsigned char y, unsigned char *p);

/*8位数预处理函数*/
void process_8(unsigned long i,unsigned char *p)
{
  p[0]=i/100000000%10;
  p[1]=i/10000000%10;
  p[2]=i/1000000%10;
  p[3]=i/100000%10;
  p[4]=i/10000%10;
  p[5]=i/1000%10;
  p[6]=i/100%10;
  p[7]=i/10%10;
  p[8]=i%10;
}
/*8位数显示函数*/
void display_8(unsigned char x, unsigned char y, unsigned char *p)
{
  unsigned char i;
  LCD_set_xy( x, y );
  RS_1;            //RS=1,写显示内容
  for(i=0;i<9;i++)//8
  {
    if(i==3)
      {
        LCD_write_str(3,0,".");
      }
    if(i==6)
      {
        LCD_write_str(7,0,".");
      }
        LCD_by(Table[p[ i]]);
  }
}

void LCD_en_write(void)              
{
     delay_us(5);
     EN_1;                           
     delay_us(5);
     EN_0;                           
}


联系方式

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

在线客服
热线电话

企业微信