尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

单片机IO软件模拟UART打印

单片机IO软件模拟UART打印
📅 发布时间:2026/6/19 13:55:55

波特率(Baud Rate)是每秒传输的位数(bits per second, bps),位时间(Bit Time)是每 bit 的持续时间:

Bit Time (μs)=Baud Rate1​×106
 
波特率
理论位时间 (ΜS)
DELAYUS 应设值
适用场景
9600
104.17
104
低速稳定通信
19200
52.08
52
常用中速
38400
26.04
26
中高速
57600
17.36
17
高速(需优化代码)
115200
8.68
9
极限(需硬件支持)
 
注意 :软件 UART 的波特率越高,时序误差的影响越大。一般推荐 ≤ 38400,超过需硬件 UART。 

 

#include "stdarg.h"
#include "stdio.h"
#define    SIMGPIO_PIN    GPIO_Pin_4
#define    delaytime      52      //19200波特率
/******************************************************************************** @fn      SoftwareUART_SendChar** @brief   SoftwareUART_SendChar** @param   Char** @return  None.*/
void SoftwareUART_SendChar(char c)
{// 起始位(低电平)
  GPIOA_ResetBits(SIMGPIO_PIN);DelayUs(delaytime);// 数据位(低位在前)for (int i = 0; i < 8; i++){if (c & (1 << i)){GPIOA_SetBits(SIMGPIO_PIN);}else{GPIOA_ResetBits(SIMGPIO_PIN);}DelayUs(delaytime);}// 停止位(高电平)
  GPIOA_SetBits(SIMGPIO_PIN);DelayUs(delaytime);
}/******************************************************************************** @fn      SoftwareUART_SendString** @brief   SoftwareUART_SendString** @param   *str** @return  None.*/
void SoftwareUART_SendString(char* str)
{while (*str){SoftwareUART_SendChar(*str++);}
}/******************************************************************************** @fn      SoftwareUART_Printf** @brief   SoftwareUART_Printf** @param** @return  None.*/
void SoftwareUART_Printf(const char* format, ...)
{char buffer[256]; // 定义一个足够大的缓冲区
    va_list args;va_start(args, format);vsnprintf(buffer, sizeof(buffer), format, args);va_end(args);SoftwareUART_SendString(buffer);
}

调用SoftwareUART_Printf即可完成数据打印

 

相关新闻

  • 本地源配置
  • 第八届中国PostgreSQL数据库生态大会圆满收官,IvorySQL 荣获产品创新奖
  • 不会安装该公布应用程序,因为它可能不安全。请于管理员联系将程序包的安装用户界面选项更改为基本

最新新闻

  • DeepSeek-V4高效长上下文推理技术解析
  • 技术解析-CPR曲面重建:从血管拉直到三维可视化的核心算法与临床价值
  • S12XS中断系统XINT配置详解:从原理到汽车电子实战
  • 【新】5p229基于python的新能源汽车数据分析系统的设计与实现3(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码
  • MCU系统集成模块(SIM)解析:复位、中断与低功耗设计实战
  • 从零到一:基于JasperGold的FPV实战入门与避坑指南

日新闻

  • 信任的进化:技术实现详解——如何用JavaScript构建博弈论模拟器
  • Terrakube自定义工作流:如何集成OPA、Infracost等工具扩展IaC能力
  • grunt-concurrent快速入门:5分钟学会并行运行Grunt任务

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号