芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

飞芯科技-芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

芯片破解ADXL345倾角传感器的51单片机源程序

芯片破解STC12C5160S2这块单片机芯片做控制,实现ADXL345倾角传感器模块测量角度

芯片破解单片机源程序如下:

  1. /********************************************************************
  2. * 文件名  :GY-29 ADXL345 测角度,角度值显示
  3. * 创建人  :飞翔的猫
  4. * 描述    : 该文件实现了用GY-29 ADXL345角度的采集,并在数码管上显示出来。
  5.                         使用单片机STC89C51
  6. *晶振          :11.0592M
  7. *显示     :LCD1602
  8. *编译环境 :Keil uVision4
  9. ****************************************/
  10. #include  <REG51.H>       
  11. #include  <math.h>    //Keil library  
  12. #include  <stdio.h>   //Keil library       
  13. #include  <INTRINS.H>
  14. #define   uchar unsigned char
  15. #define   uint unsigned int       

  16. //这个一定要根据自己接的引脚来改,否则不出数据
  17. sbit          SCL=P2^0;      //IIC时钟引脚定义
  18. sbit           SDA=P2^1;      //IIC数据引脚定义

  19. #define   DataPort P0    //LCD1602数据端口
  20. sbit      LCM_RS=P2^4;   //LCD1602命令端口               
  21. sbit      LCM_RW=P2^5;   //LCD1602命令端口               
  22. sbit      LCM_EN=P2^7;   //LCD1602命令端口

  23. #define        SlaveAddress   0xA6          //定义器件在IIC总线中的从地址,根据ALT  ADDRESS地址引脚不同修改
  24.                               //ALT  ADDRESS引脚接地时地址为0xA6,接电源时地址为0x3A
  25. typedef unsigned char  BYTE;
  26. typedef unsigned short WORD;

  27. BYTE BUF[8];                         //接收数据缓存区             
  28. uchar ge,shi,bai,qian,wan;           //显示变量
  29. int  dis_data;                       //变量
  30. int  data_xyz[3];



  31. void delay(unsigned int k);
  32. void InitLcd();                      //初始化lcd1602
  33. void Init_ADXL345(void);             //初始化ADXL345

  34. void WriteDataLCM(uchar dataW);
  35. void WriteCommandLCM(uchar CMD,uchar Attribc);
  36. void DisplayOneChar(uchar X,uchar Y,uchar DData);
  37. void conversion(uint temp_data);

  38. void  Single_Write_ADXL345(uchar REG_Address,uchar REG_data);   //单个写入数据
  39. uchar Single_Read_ADXL345(uchar REG_Address);                   //单个读取内部寄存器数据
  40. void Mutiple_Read_ADXL345(void);     
  41. void clear(void);                               //连续的读取内部寄存器数据
  42. //------------------------------------
  43. void Delay5us();
  44. void Delay5ms();
  45. void ADXL345_Start();
  46. void ADXL345_Stop();
  47. void ADXL345_SendACK(bit ack);
  48. bit  ADXL345_RecvACK();
  49. void ADXL345_SendByte(BYTE dat);
  50. BYTE ADXL345_RecvByte();
  51. void ADXL345_ReadPage();
  52. void ADXL345_WritePage();
  53. //-----------------------------------

  54. //*********************************************************
  55. void conversion(uint temp_data)  
  56. {  
  57.     wan=temp_data/10000+0x30 ;
  58.     temp_data=temp_data%10000;   //取余运算
  59.         qian=temp_data/1000+0x30 ;
  60.     temp_data=temp_data%1000;    //取余运算
  61.     bai=temp_data/100+0x30   ;
  62.     temp_data=temp_data%100;     //取余运算
  63.     shi=temp_data/10+0x30    ;
  64.     temp_data=temp_data%10;      //取余运算
  65.     ge=temp_data+0x30;        
  66. }



联系方式

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

在线客服
热线电话

企业微信