编码
字符串
python里的字符串就是文本,用于与人类交互,像这样:
阿拉伯数字:a = '12345'
英语: b = 'I can eat glass, it doesn't hurt me.'
简体中文:c = '我能吞下玻璃而不伤身体'
繁体中文:d = '我能吞下玻璃而不傷身體'
粤语:e = '我可以食玻璃,佢信唔到我㗎'
日语:f = '私は硝子を食べられます。私を傷付けません。'
拉丁文:g = 'Vitrum edere possum; mihi non nocet.'
因为Python3的字符串是utf8编码的,可以支持世界上所有的语言,并且是ASCII兼容的。
bytes
python中,bytes是二进制数据,与string不同的是,bytes是用来传输的,就是一个一个的二进制数据。
string与bytess转换
那么,什么是编码?
推荐阅读:
http://www.ituring.com.cn/article/1115
粗暴来说,将字符串转成bytes,就是编码;将bytes转成字符串,就是解码。
通过不同的编码方式,比如ASCII,UTF-8,Unicode,一样的bytes代表的string是不同的(不严格)。
同理,一个string,用 ASCII,UTF-8,Unicode,分别编码,也是不同的(不严格)。
串口
micropython的串口操作,除了发送uart.write(string)外,还有:
注意:不要直接使用uart.read(),不加参数的话,会持续1s,会拖慢程序。
自收发实验
把X1与X2接在一起,做一个自发自收的实验。因为这两个引脚是UART4的RX,TX。
USB连接到电脑
pyboard
USB-TTL
X1-TX
RX
X1-RX
TX
GND
GND
USB-TTL模块连接到电脑,打开串口软件,设置好波特率。
在pyboard运行以下代码
电脑每秒会显示Hello world!
收到指令字符串,亮灯实验
收到指令char,亮灯实验