打印
[其他ST产品]

【正点原子K210连载】第九章 打印输出实验 摘自【正点原子】DNK210使用指南-CanMV版指南

[复制链接]
294|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
第九章 打印输出实验



本章节为实验篇的第一章,将通过打印输出实验为后续实验中的交互打下基础。通过本章的学习,读者将学习到CanMVprint()函数的使用。
本章分为如下几个小节:
9.1 打印输出函数介绍
9.2 硬件设计
9.3 程序设计
9.4 运行验证
9.1 打印输出函数介绍
CanMV的使用过程中,为了方便观察脚本程序的运行情况,通常需要通过串口等方式,展示脚本程序运行过程中的数值、字符串等数据信息。
为此,CanMV提供了print()函数,print()函数用于打印输出指定的文本流数据,print()函数如下所示:
print(*objects, sep=' ', end='\n', file=sys.stdout)
print()函数的作用是将objects中的所有对象转换为字符串,然后以sep进行分隔并在末尾加上end后打印输出至file指定的文本流。
若在函数调用时,没有提供sependfile,则print()函数将使用上面展示的默认值,其中,sepend必须都是字符串,file必须是一个具有write(string)方法的对象。
从上面可以看到,print()函数file参数的默认值为sys.stdout,也就是系统的标准输出,系统的标准输出中write(string)方法的实现是将文本流数据通过UARTHS进行输出,当然也可以在调用print()函数时通过file参数指定为其他对象,例如打开的文件等。
下面列出print()函数的使用示例:
>>> print('Hello, World!')
Hello, World!
>>> print('Hello', 'World', sep=', ', end='!\n')
Hello, World!
>>> f = open('/flash/log.txt', 'w')
>>> print("Hello, World!", file=f)
>>> f.close()
>>> f = open('/flash/log.txt', 'r')
>>> print(f.read())
>>> f.close()
Hello, World!
9.2 硬件设计
9.2.1 例程功能
1. 使用print()函数,在CanMV的“串行终端”窗口中输出“Hello, DNK210!\n”
2. 使用print()函数,将Hello, DNK210!\n”写入/flash/test.txt文件中
9.2.2 硬件资源
本章实验内容,主要讲解print()函数的使用,无需关注硬件资源。
9.2.3 原理图
本章实验内容,主要讲解print()函数的使用,无需关注原理图。
9.3 程序设计
9.3.1 print()函数
有关print()函数的介绍,请见第9.1小节《打印输出函数介绍》。
9.3.2 程序流程图
9.3.2.1 打印输出实验流程图
9.3.3 main.py代码
main.py中的脚本代码如下所示:
# 打印输出到系统标准输出
print('Hello, DNK210!')
# 打印输出到文件
f = open('/flash/test.txt', 'w')
print('Hello, DNK210!', file=f)
f.close()
可以看到,首先通过print()函数将字符串Hello, DNK210!”打印输出至系统标准输出,然后打开文件“/flash/test.txt”,再通过print()函数将字符串Hello, DNK210!”打印输出至文件后关闭文件。因此在脚本运行后,应该能够通过CanMV IDE的“串行终端”窗口看到输出了“Hello, DNK210!”字符串,并且字符串“Hello, DNK210!”将会被写入文件“/flash/test.txt”中。
9.4 运行验证
将DNK210开发板连接CanMV IDE,并点击CanMV IDE上的“开始(运行脚本)”按钮后,可以看到“串行终端”窗口中输出了“Hello, DNK210!”的字符串,如下图所示:
9.4.1 “串行终端”窗口打印输出
同时,字符串Hello, DNK210!”也被写入文件“/flash/test.txt”中,该文件可以通过以下脚本进行查看:
# 打印输出到文件
f = open('/flash/test.txt', 'r')
print(f.read())
f.close()
运行后,如下图所示:
图9.4.2 /flash/test.txt”文件中的内容

d0dba2fd39a3c14dc8b4770761372349 (2.17 KB )

d0dba2fd39a3c14dc8b4770761372349

93c20b36ea1741ba4e01e5fdbf26de83 (2.1 KB )

93c20b36ea1741ba4e01e5fdbf26de83

第九章 打印输出实验1241.png (7.6 KB )

第九章 打印输出实验1241.png

355586695d6e81fe02.png (7.6 KB )

355586695d6e81fe02.png

294876695d7039ac1d.png (7.6 KB )

294876695d7039ac1d.png

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

65

主题

66

帖子

1

粉丝