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

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

单片机解密STM32F407读取ADS1115双通道电压值程序

单片机解密ADS1115,是一款高精度16位ADC芯片
    测试平台STM32F407VET6
    读取双通道电压,通道1是IN0脚对地电压    ,通道2是IN2脚对地电压

  1. 单片机解密#include "iic_2.h"
  2. 单片机解密#include "delay.h"
  3. //////////////////////////////////////////////////////////////////////////////////         


  4. //初始化IIC
  5. void IIC_2_Init(void)
  6. {                       
  7.   GPIO_InitTypeDef  GPIO_InitStructure;

  8.   RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC, ENABLE);

  9.    
  10.   GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1;
  11.   GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
  12.   GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
  13.   GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
  14.   GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;
  15.   GPIO_Init(GPIOC, &GPIO_InitStructure);
  16.         IIC_2_SCL=1;
  17.         IIC_2_SDA=1;
  18. }
  19. //产生IIC起始信号
  20. void IIC_2_Start(void)
  21. {
  22.         IIC_2_SDA_OUT();      
  23.         IIC_2_SDA=1;                    
  24.         IIC_2_SCL=1;
  25.         delay_us(4);
  26.         IIC_2_SDA=0;  
  27.         delay_us(4);
  28.         IIC_2_SCL=0;
  29. }          
  30. //产生IIC停止信号
  31. void IIC_2_Stop(void)
  32. {
  33.         IIC_2_SDA_OUT();
  34.         IIC_2_SCL=0;
  35.         IIC_2_SDA=0;
  36.         delay_us(4);
  37.         IIC_2_SCL=1;
  38.         IIC_2_SDA=1;
  39.         delay_us(4);                                                                  
  40. }
  41. //等待应答信号到来
  42. //返回值:1,接收应答失败
  43. //        0,接收应答成功
  44. u8 IIC_2_Wait_Ack(void)
  45. {
  46.         u8 ucErrTime=0;
  47.         IIC_2_SDA_IN();      
  48.         IIC_2_SDA=1;delay_us(1);          
  49.         IIC_2_SCL=1;delay_us(1);         
  50.         while(IIC_2_READ_SDA)
  51.         {
  52.                 ucErrTime++;
  53.                 if(ucErrTime>250)
  54.                 {
  55.                         IIC_2_Stop();
  56.                         return 1;
  57.                 }
  58.         }
  59.         IIC_2_SCL=0;   
  60.         return 0;  
  61. }
  62. //产生ACK应答
  63. void IIC_2_Ack(void)
  64. {
  65.         IIC_2_SCL=0;
  66.         IIC_2_SDA_OUT();
  67.         IIC_2_SDA=0;
  68.         delay_us(2);
  69.         IIC_2_SCL=1;
  70.         delay_us(2);
  71.         IIC_2_SCL=0;
  72. }
  73. //不产生ACK应答                    
  74. void IIC_2_NAck(void)
  75. {
  76.         IIC_2_SCL=0;
  77.         IIC_2_SDA_OUT();
  78.         IIC_2_SDA=1;
  79.         delay_us(2);
  80.         IIC_2_SCL=1;
  81.         delay_us(2);
  82.         IIC_2_SCL=0;
  83. }                  



联系方式

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

在线客服
热线电话

企业微信