《DNK210使用指南 -CanMV版 V1.0》第九章 列印輸出實驗

正点原子發表於2024-07-04

第九章 列印輸出實驗

1)實驗平臺:正點原子DNK210開發板

2)章節摘自【正點原子】DNK210使用指南 - CanMV版 V1.0

3)購買連結:https://detail.tmall.com/item.htm?&id=782801398750

4)全套實驗原始碼+手冊+影片下載地址:http://www.openedv.com/docs/boards/k210/ATK-DNK210.html

5)正點原子官方B站:https://space.bilibili.com/394620890

6)正點原子K210技術交流企鵝群:605557868

本章節為實驗篇的第一章,將透過列印輸出實驗為後續實驗中的互動打下基礎。透過本章的學習,讀者將學習到CanMV中print()函式的使用。
本章分為如下幾個小節:
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指定的文字流。
若在函式呼叫時,沒有提供sep、end、file,則print()函式將使用上面展示的預設值,其中,sep和end必須都是字串,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”檔案中的內容

相關文章