Ctrl+C、Ctrl+Z对应的0x03和0x1A,在串口发送的时候,需要发送十六进制的数据,而不是字符
奋斗STM32中的USART_OUT函数,参数默认是发送字符串
但是进入到USART_OUT的函数实现的地方,可以看到USART_SendData()这个函数是可以发送十六进制数据
在程序中加入 USART_SendData(USART1,0x1A) 即可发送字符串,可以看到串口助手接收端收到一个向右的箭头→
下表摘自:http://www.crifan.com/files/doc/docbook/char_encoding/release/html/char_encoding.html#tbl.ascii_ctrl
十进制 | 十六进制 | 控制字符 | 转义字符 | 说明 | Ctrl + 下列字母 |
---|---|---|---|---|---|
0 | 00 | NUL | \0 | Null character(空字符) | @ |
1 | 01 | SOH | Start of Header(标题开始) | A | |
2 | 02 | STX | Start of Text(正文开始) | B | |
3 | 03 | ETX | End of Text(正文结束) | C | |
4 | 04 | EOT |