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

龙华网站建设方案案例wordpress文章列表 框

龙华网站建设方案案例,wordpress文章列表 框,网站策划的基本过程,中国设计师网上家园简介 使用Buffer来避免数据的丢失, 或许你自己在使用串口进行收发时会丢失数据, 现在我们就来简单使用一下RingBuffer创建Rx、Tx的Buffer来避免发送接收丢包或数据丢失问题。 扩展知识 RingBuffer的介绍, 看完大概也就知道了#xff0c;实在不知道就看看下面的代码 线路连接…简介 使用Buffer来避免数据的丢失, 或许你自己在使用串口进行收发时会丢失数据, 现在我们就来简单使用一下RingBuffer创建Rx、Tx的Buffer来避免发送接收丢包或数据丢失问题。 扩展知识 RingBuffer的介绍, 看完大概也就知道了实在不知道就看看下面的代码 线路连接 粗略描述 USART1 接 USB转TTL线到PC USART3 接 ESP8266实物 步骤 使用到的库 WKJay 的 RingBuffer 使用STM32CubeMX创建项目 参考 普中STM32-PZ6806L开发板(STM32CubeMX创建项目并点亮LED灯) 初始化串口1 和 串口3 USART1 和 USART3初始化一样 添加用户代码 /* 定义ringbuffer全局变量, rb_usart1_rx/rb_usart3_rx 是USART1和3的接收Buffer, tx则是发送Buffer*/ringbuffer_t rb_usart1_rx, rb_usart3_rx, rb_usart1_tx, rb_usart3_tx;uint8_t buffer_usart1_rx[512], buffer_usart3_rx[512], buffer_usart1_tx[512], buffer_usart3_tx[512];/* 串口中断代理 */ void USART_isr(UART_HandleTypeDef *huart, ringbuffer_t *ringBuffer_rx, ringbuffer_t *ringBuffer_tx) {uint32_t isrflags READ_REG(huart-Instance-SR);uint32_t cr1its READ_REG(huart-Instance-CR1);if ((isrflags USART_SR_RXNE) (cr1its USART_CR1_RXNEIE)) {huart-Instance-SR;ringbuffer_putchar(ringBuffer_rx, huart-Instance-DR);return;}if (((isrflags USART_SR_TXE) ! RESET) ((cr1its USART_CR1_TXEIE) ! RESET)){uint8_t ch;if (ringbuffer_getchar(ringBuffer_tx, ch) 0) {huart-Instance-SR;huart-Instance-DR ch;}else{__HAL_UART_DISABLE_IT(huart, UART_IT_TXE);}return;} }/* USART1中断处理函数 */ void USART1_IRQHandler(void) {/* USER CODE BEGIN USART1_IRQn 0 */UART_HandleTypeDef *huart huart1;USART_isr(huart, rb_usart1_rx, rb_usart1_tx);/* USER CODE END USART1_IRQn 0 *//* USER CODE BEGIN USART1_IRQn 1 *//* USER CODE END USART1_IRQn 1 */ } /* USART3中断处理函数 */ void USART3_IRQHandler(void) {/* USER CODE BEGIN USART1_IRQn 0 */UART_HandleTypeDef *huart huart3;USART_isr(huart, rb_usart3_rx, rb_usart3_tx);/* USER CODE END USART1_IRQn 0 *//* USER CODE BEGIN USART1_IRQn 1 *//* USER CODE END USART1_IRQn 1 */ }int main(void) {...ringbuffer_init(rb_usart1_rx, buffer_usart1_rx, sizeof(buffer_usart1_rx));ringbuffer_init(rb_usart3_rx, buffer_usart3_rx, sizeof(buffer_usart3_rx));ringbuffer_init(rb_usart1_tx, buffer_usart1_tx, sizeof(buffer_usart1_tx));ringbuffer_init(rb_usart3_tx, buffer_usart3_tx, sizeof(buffer_usart3_tx));__HAL_UART_ENABLE_IT(huart1, UART_IT_RXNE); // USART1接收中断打开__HAL_UART_ENABLE_IT(huart3, UART_IT_RXNE);// USART3接收中断打开while(1){uint8_t ch;/* 从 usart1的接收buffer中取数据, 放到usart3的发送buffer中 并开启usart1的发送中断 */if (ringbuffer_getchar(rb_usart1_rx, ch) 0) {ringbuffer_putchar(rb_usart3_tx, ch);__HAL_UART_ENABLE_IT(huart3, UART_IT_TXE);}/* 从 usart3的接收buffer中取数据, 放到usart1的发送buffer中 并开启usart1的发送中断 */if (ringbuffer_getchar(rb_usart3_rx, ch) 0) {ringbuffer_putchar(rb_usart1_tx, ch);__HAL_UART_ENABLE_IT(huart1, UART_IT_TXE);}}... } 共赏 Note: 某些地方可以做些优化部分数据传递可以使用指针
http://www.zqtcl.cn/news/97911/

相关文章:

  • 展台设计网站都有哪些拓者设计吧手机版
  • 河南省级建设主管部门网站免费推广平台哪个好
  • wordpress禁止自动升级seo实战密码怎么样
  • 福永网站建设公司如何利用个人nas做网站
  • 北京网站seo外包wordpress心情
  • 租用服务器一般是谁帮助维护网站安全网站如何看是哪家公司做的
  • 戴尔网站建设的特点开创者wordpress素材
  • 网站假设公司排名不用囤货
  • 有关网站建设合同织梦珠宝网站模板
  • 月牙河做网站公司电商网站开发成本
  • iis7建立网站注册公司地址虚拟地址怎么申请
  • 响应式网站开发的想要去国外网站买东西怎么做
  • 网站建设开发有什么好处百度网盘0基础网站开发教程
  • 桂林整站优化青岛网站制作哪里有
  • 织梦cms手机网站源码天天想你视频免费观看西瓜
  • 怎么做网站弄网盟邯郸超速云_网站建设
  • 桂阳做网站的软件定制开发外包wordpress电子商务插件
  • 10有免费建网站那些公司做网站比较厉害
  • 网站关键词优化推广旅游类网站开发开题报告范文
  • 官方网站营销拟在建项目信息网官网
  • 沈阳做微信和网站的公司湛江网站建设公司哪家好
  • 网站 开发逻辑电话销售电销系统
  • 有哪些做兼职的设计网站有哪些工作可以用asp做哪些网站
  • 装修网站推广方案东莞网站建设0086
  • 知名营销网站开发高端网站建设如何收费
  • 佛山网站建设邓先生沈阳做网站找黑酷科技
  • 网站建设 排名下拉请教个人主页网站怎么做啊
  • 揭阳网站制作教程安阳seo公司
  • 网站运营管理教材wordpress 评论框插件
  • 免费做手机网站有哪些网页怎么制作链接