当前位置: 首页 > news >正文

企业自建服务器网站建设流程广元网站设计

企业自建服务器网站建设流程,广元网站设计,网站上如何做天气插件,宁波高端网站开发一、CRC的背景知识 1、什么是CRC (1)CRC#xff08;Cyclic Redundancy Check#xff09;#xff0c;循环冗余校验 (2)什么是校验#xff0c;为什么需要校验#xff1a;数据传输#xff0c;数据存储过程中需要使用到的 (3)什么是冗余#xff1a;表示比实际上要传输的数据…一、CRC的背景知识 1、什么是CRC (1)CRCCyclic Redundancy Check循环冗余校验 (2)什么是校验为什么需要校验数据传输数据存储过程中需要使用到的 (3)什么是冗余表示比实际上要传输的数据还要多 (4)校验实现的关键冗余少、运算少、识错纠错能力强有些算法只能识别错误但是无法纠错 2、CRC原理介绍 (1)N,K码NK数据信息R校验码K位信息码R位校验码N位总信息长度 (2)CRC多项式由K位信息码计算得到R位校验码的算法以移位左移右移和mod2取余为主的叠加 3、CRC的实现方法软件OR硬件 (1)纯软件实现靠CPU的运算能力硬算。好处纯软件坏处效率低因为占用CPU资源 (2)纯软件实现查表确定。好处纯软件效率高坏处死板且占内存在表中查找相当于在内存中进行搜索 (3)硬件实现靠SoC内置的CRC运算模块实现内部外设类似于集成显卡STM32就是使用内置的CRC (4)硬件实现靠SoC外置的运算模块实现类似于独立显卡没必要。 4、CRC使用场景 主要用于数据传输和存储过程中随机引起的错误。但是CRC只能检验错误但是无法纠错。 二、STM32使用CubeMX 1.CRC生成多项式计算 1.CRC16 1CRC16表示最高位应该是2的16次方 2因为是16所以最高位16的系数应该是1不能是0 30-15位所以最高位16的系数不计算进去 41*x^16不计算进去1*x^151*x^21*x^01000 0000 0000 01018005 2.配置 1.配置CRC 2.使用串口 3.HAL_CRC_Calculate  VS  HAL_CRC_Accumulate Calculate和accumulate两者不同 calculate的计算与上一次的计算结果无关 accumulate的计算结果是从上一次的计算结果来的 如果你的计算是分成多次计算来实现则调用【HAL_CRC_Accumulate】如果算法是一次性实现完成则调用【HAL_CRC_Calculate 】 4.使用串口添加串口相关的代码 在usart.c文件中添加 #ifdef __GNUC__//当前在Linux系统下#define PUTCHAR_PROTOTYPE int __io_putchar(int ch) #else//在windows下#define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f) #endif /*** brief Retargets the C library printf function to the USART.* param None* retval None*/ //PUTCHAR_PROTOTYPE 宏是一个用户在使用HAL库时可以自定义的宏 //用于实现 printf 函数的输出重定向。 PUTCHAR_PROTOTYPE //int fputc(int ch, FILE *f) {/* Place your implementation of fputc here *//* e.g. write a character to the EVAL_COM1 and Loop until the end of transmission */HAL_UART_Transmit(huart1, (uint8_t *)ch, 1, 0xFFFF);return ch; } 5.代码编写 1.使用HAL_CRC_Calculate /* USER CODE BEGIN PV */ uint32_t buf[]{0x11111111,0x22222222};//要发送的数据自己随便定义一个 //存放crc uint32_t crcValue0; /* USER CODE END PV */while (1){//调试printf(使用rcr成功);HAL_Delay(100);printf(CRC test\r\n);//使用crc算法将发送的值记录起来crcValueHAL_CRC_Calculate(hcrc,buf,sizeof(buf)/sizeof(buf[0]));printf(crcValue%x\r\n,crcValue);/* USER CODE END WHILE *//* USER CODE BEGIN 3 */} 2.验证传输过程是否正确 CRC在线计算 (lddgo.net) 与串口输出的数值进行比较判断是否正确----结果正确 3.注意点 0和任何值异或原值不变 不同点 1结果异或值的不同 2数据反转不同
http://www.w-s-a.com/news/755006/

相关文章:

  • 网站怎样上传到空间重庆有多少网站
  • 用模板建商城购物网站嘉定专业网站建设
  • 网站开发与应用 论文dede手机医院网站模板
  • 织梦 网站栏目管理 很慢自学网页设计难吗
  • 茶文化建设网站的意义平顶山网站建设服务公司
  • 建设网站详细流程南京宣传片制作公司
  • 合肥网站排名什么网站做电气自动化兼职
  • 如何用api做网站交通建设门户网站
  • 阳西住房和城乡规划建设局网站长沙网站seo技巧
  • 长沙知名网站推广手机画设计图软件
  • 顺德公司做网站自己有网站怎么优化
  • 南京网站开发南京乐识专业外贸流程知乎
  • 盐田区住房和建设局网站分类网站有哪些
  • 建一个团购网站WordPress文章字号设置
  • 做漂亮的网站东营网站seo
  • 网站开发摊销做设计哪个网站可以接单
  • 惠州h5网站建设建设公司网站报价
  • 做网站多少钱 优帮云嘉兴五县两区网站建设
  • 三亚旅游网站策划书企业网站建设的定位
  • 网站建设工作台账网站建设的实验结论
  • 商业网站建设平台制作软件的软件
  • 本地网站开发wordpress页面关键词和描述
  • 微网站 合同软件开发培训方案
  • 怎么做淘宝客网站备案广告公司图片大全
  • 微信小程序展示网站建设多少钱做网站用什么软件初二
  • 瀑布流资源网站模板打码网站建设
  • wordpress 支付宝打赏网站视觉优化的意义
  • 建设网站需要几个文件夹永久免费内存大服务器
  • 可信赖的手机网站建设wordpress 显示摘要
  • 谁给我一个企业邮箱认证wordpress优化攻略