最近测试“单byte数据传输” 接收时,PC端发过去的数据一直无法正常显示,查了好久才发现是自己在串口助手这里配置的问题,虽然是以二进制形式一位一位传输的,但是不能在串口助手这里直接写0101 0101 这种二进制数,(且不说这里的空格都会影响数据的发送),
这些小知识掌握的不牢固呐(悲伤)(学起来)
以正点原子的串口助手软件为例:当我不勾选时,串口助手默认发送ASCLL码格式


左图是 默认的ASCLL格式,这里的 A (不是16进制的),而是ASCLL码里面的 'A'
右图是 左图的基础上 点 以16进制发送对应是 41 (发送的二进制数据是0100 0001)已验证,确实如此

再来个 栗子(用16进制搞一下)

二进制
0010 0010对应的十进制数是34。在ASCII码表中,十进制数34对应的字符是双引号(
")。十六进制
22H在ASCII码表的上下文中通常不会直接出现,因为ASCII码表是基于十进制数来定义的;但如果你将十六进制22H转换为十进制数(即34),则可以找到对应的ASCII字符是双引号(")
1806

被折叠的 条评论
为什么被折叠?



