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

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

stm32测量数据通过nrf24l01无线通信芯片解密

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


  1. 芯片解密#include "main.h"                //main.h 中含有TX/RX、软件SPI/硬件SPI选择配置选项
  2. 芯片解密#include <string.h>
  3. 芯片解密#include <stdio.h>
  4. 芯片解密#include "Main.h"
  5. 芯片解密#include "stm32f10x_rcc.h"
  6. #include "stm32f10x_gpio.h"
  7. #include "drv_UART.h"
  8. #include "UART2.h"
  9. #include "drv_delay.h"
  10. #include "JY901.h"
  11. #include "celiang.h"


  12. uint8_t g_UartRxBuffer1[ 100 ] = "zmbyaaaaa";
  13. const char *g_Ashining = "receive";
  14. uint8_t g_TxMode = 0, g_UartRxFlag = 0;
  15. uint8_t g_UartRxBuffer[ 100 ] = { 0 };
  16. uint8_t g_RF24L01RxBuffer[ 32 ] = { 0 };

  17. struct SAcc                 stcAcc;                                        //加速度
  18. struct SGyro                 stcGyro;                                //角速度
  19. struct SAngle         stcAngle;    //角度


  20. //CopeSerialData为串口2中断调用函数,串口每收到一个数据,调用一次这个函数。
  21. void CopeSerial2Data(unsigned char ucData)
  22. {
  23.         static unsigned char ucRxBuffer[250];
  24.         static unsigned char ucRxCnt = 0;        

  25.         ucRxBuffer[ucRxCnt++]=ucData;        //将收到的数据存入缓冲区中
  26.         if (ucRxBuffer[0]!=0x55) //数据头不对,则重新开始寻找0x55数据头
  27.         {
  28.                 ucRxCnt=0;
  29.                 return;
  30.         }
  31.         if (ucRxCnt<9) {return;}//数据不满11个,则返回
  32.         else
  33.         {
  34.                 switch(ucRxBuffer[1])//判断数据是哪种数据,然后将其拷贝到对应的结构体中,有些数据包需要通过上位机打开对应的输出后,才能接收到这个数据包的数据
  35.                 {
  36.         //memcpy为编译器自带的内存拷贝函数,需引用"string.h",将接收缓冲区的字符拷贝到数据结构体里面,从而实现数据的解析。
  37.                         case 0x51:        memcpy(&stcAcc,&ucRxBuffer[2],8);break;
  38.                         case 0x52:        memcpy(&stcGyro,&ucRxBuffer[2],8);break;
  39.             case 0x53:        memcpy(&stcAngle,&ucRxBuffer[2],8);break;
  40.                
  41.                 }
  42.                 ucRxCnt=0;//清空缓存区
  43.         }
  44. }


  45. void CopeSerial1Data(unsigned char ucData)
  46. {        
  47.         UART2_Put_Char(ucData);//转发串口1收到的数据给串口2(JY模块)
  48. }



  49. uint16_t Array_Size(uint8_t  * array_pt)
  50. {
  51.    uint8_t * pt;
  52.         uint16_t size;
  53.         for(pt = array_pt; *pt != '\n'; pt++)
  54.         {
  55.                 size++;        
  56.         }
  57.         return size;
  58. }



联系方式

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

在线客服
热线电话

企业微信