Linux系统中如何实现串口的格式化功能方法

简介: Linux系统中如何实现串口的格式化功能方法

第一:串口格式化基本简介

      前面虽然实现了串口的功能,但是只能输出字符。如果需要输出数字的时候需要自己将数字转换为字符,非常不方便。可以模仿单片机将printf函数映射到串口上,这样就可以使用printf函数来完成格式化输出了。

      格式化函数包括printf、sprintf和scanf这样的函数,分为格式化输入和输出两类函数。学习C语言的时候常常通过printf函数在屏幕上显示字符串,通过scanf函数从键盘获取输入。这样就有了输入和输出,实现了基本的人机交互,那么我们也可以将printf函数映射到串口上,这样就可以使用超级终端作为开发板的终端,完成与开发板的交互。

第二:实验程序的操作

       在进行移植的过程中,需要使用到相应的源码文件,文件夹stdio里面的文件就是我们要移植的源文件。stdio里面有两个文件夹:include 和 lib,这两个文件夹里面的内容如下:

                                           

       stdio 里面的文件其实是从 uboot 里面移植过来的。后面学习 uboot 以后大家有兴趣的话可以自行从 uboot 源码里面“扣”出相应的文件,完成格式化函数的移植。这里要注意一点,stdio 中并没有实现完全版的格式化函数,比如 printf 函数并不支持浮点数,但是基本够我们使用了。

第三:具体的代码实现

#include "stdio.h"
#include "uart.h"
int main(void)
{
    unsigned char state = OFF;
    int a, b ;
    uart_init();    //初始化串口,对应的波特率115200
    while(1)
    {
        printf("输入两个整数, 使用空格隔开:");
        scanf("%d %d",&a,&b);  //输入两个整数
        printf("\r\n数据 %d + %d = %d\r\n",a,b,a+b);  //输出和
        state = !state;
    }
        return 0;
}

总结:串口中的功能函数,可以通过移植的方式实现,利用其中的函数,可以将字符串的信息进行输出和打印。

目录
相关文章
|
8天前
|
资源调度 JavaScript 搜索推荐
Linux系统之部署envlinks极简个人导航页
【4月更文挑战第11天】Linux系统之部署envlinks极简个人导航页
45 2
|
11天前
|
缓存 Linux 测试技术
安装【银河麒麟V10】linux系统--并挂载镜像
安装【银河麒麟V10】linux系统--并挂载镜像
61 0
|
9天前
|
存储 算法 Linux
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
26 6
|
1天前
|
Ubuntu 安全 Linux
《Linux 简易速速上手小册》第1章: Linux 系统基础(2024 最新版)
《Linux 简易速速上手小册》第1章: Linux 系统基础(2024 最新版)
21 1
|
4天前
|
运维 网络协议 Unix
18.系统知识-Linux常用命令
18.系统知识-Linux常用命令
|
12天前
|
Web App开发 Linux 网络安全
工作中常用到的Linux命令
工作中常用到的Linux命令
|
12天前
|
Web App开发 Java Linux
Linux之Shell基本命令篇
Linux之Shell基本命令篇
Linux之Shell基本命令篇
|
9天前
|
NoSQL Linux Shell
常用的 Linux 命令
常用的 Linux 命令
32 9