【掌控板】3、向txt文件写入字符串、声音数据获取

1. 向txt文件写入字符串

# MindPlus
# mpython
import os

path="test\\c.txt"	#define file path
xxx = open(path,"a")
print(type(xxx))

xxx.write('ccc\n')
#file_mic.write("\n")
#print(file_mic.read())
print('write ok')
xxx.close()

需要加载os访问文件。

需要注意的是open的第二个入参"a"为追加,如果想清空写入则为"w"

type(xxx)是显示open后的类型,所以open函数返回的类型问TextIOWrapper。
在这里插入图片描述
PS:需要注意的是,相对于读取而言,读取时直接打在控制台上的(实时),但是写入是写到txt文件中。
我们运行完成后直接点击txt查看,会发现没有任何数据,其实设备内部的数据是有的,只不过我们再mind+上的文件系统没有及时更新,我尝试点击刷新,此时会发现运行了多次。

在这里插入图片描述
在这里插入图片描述

2.读取声音数值

# MindPlus
# mpython
from mpython import *
import os
a=0
path="test\\b.txt"
xxx=open(path,"w")

while True:
  print(a)
  oled.fill(0)		# clear display
  y=sound.read()	# get voice level
  oled.DispChar(oct(y), 33, 33, 1)	#set value
  #oled.DispChar('aaa', 33, 33, 1)
  oled.show()		# lcd display
  print("y",y)		# cmd display
  
  xxx.write(oct(y))	# write to txt
  xxx.write("\n")	# next line
  a = a + 1
  if a == 10:
    xxx.close()
    print('close file')
    break

结果显示
在这里插入图片描述
sound.read()是用于读取声音的函数。
下图是声音传感器的电路图。
在这里插入图片描述
需要注意的是sound.read()读取的数值是int型,我们无论是用于显示和写入文件都是字符型。
我这里使用的是oct(y),显示的是十进制的数值。

可以自己写函数将十进制转换为字符串,这个下次再改进。

然后查看生成的文件,数据确实以0oXXX存储到了txt文件中。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值