[Keil 学习] printf, scanf函数的用法 您所在的位置:网站首页 keil使用方法 [Keil 学习] printf, scanf函数的用法

[Keil 学习] printf, scanf函数的用法

2023-02-22 12:34| 来源: 网络整理| 查看: 265

C语言库函数中有一批“标准输入输出函数”,它是以标准的输入输出设备(一般为终端设备)为输入输出对象的,其中用得比较多的是printf和scanf函数了。

在嵌入式设备中加入C语言的标准输入输出函数,对调试是很有帮助, 这样就可以通过串口来显示结果。根据Keil的帮助文档,虽然printf和scanf函数的高层部分和所使用的目标硬件没有关系,但是底层部分(物理层)却与所使用的硬件密切相关,因此在使用这两个函数之前,需先将与底层相关的程序写好(一般是串口的初始化函数),放到合适的地方。

 

以LM4F120 Cortex-M4目标芯片为例,来说明printf, scanf函数的使用方法。

 

Step 1. 编写以下两个输入输出函数

1 int fputc(int ch, FILE *f) 2 { 3 UARTCharPut(UART1_BASE, ch); 4 } 5 6 int fgetc(FILE *f) 7 { 8 return UARTCharGet(UART1_BASE); 9 }

上面代码中L3是LM4F120 通过串口发送一个字符串的函数,L8是通过串口接收一个字符串的函数(该函数会一直等待直到接收到数据)

 

Step 2. 按照下图配置工程

 

Step 3. 添加头文件后即可使用

1 int 2 main(void) 3 { 4 char ubuf[20]; 5 6 /* 设置系统时钟为 50MHz */ 7 SysCtlClockSet(SYSCTL_SYSDIV_4 | SYSCTL_USE_PLL | SYSCTL_XTAL_16MHZ | SYSCTL_OSC_MAIN); 8 9 /* 初始化串口 */ 10 InitConsole(); 11 12 /* 输入一个字符串 */ 13 scanf("%s", ubuf); 14 15 /× 显示输入的字符串 */ 16 printf("%s", ubuf); 17 18 while(1); 19 }


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有