本文档介绍嵌入式上串口通用的基础知识和测试方法。
请注意文档中,关于硬件的很多描述都带有“一般情况”这样的字样,表明是有特殊情况
的,但是在大多数情况下,去掉“一般情况”都是正确的。硬件很多情况下是“模糊”,偏向
于“差不多”,执着于“硬件系统长时间在特定环境下稳定运行最重要”,在设计上一定有
“取舍”,虽然有一个“最优解”,我们只能尽量接近“最优解”,但是永远不能到达。
硬件不像软件,每一个接口都是严格定义,不允许有差不多的情况。
1 基础电平知识
1.1 TTL 电平和 CMOS 电平
在大学电子专业课《数字电路分析》中,有提到电平的概念,通常有 TTL 和 CMOS 电
平,TTL 和 CMOS 又各自细分为多种电平,这里为了方便文字描述,统称为 TTL 电平。TTL
和 CMOS 是有很大区别的,但是对于纯粹的数字电路,区别不是很大,唯一要注意的是信号
的电压值,电压不一样则需要使用电平转换芯片,抬高或者降低信号的电压。
另外为了达成文档目标--为了让大家能够快速掌握串口的快速测试,这里将 TTL 根据电平
值分为 1.8VTTL 电平、3.3VTTL 电平和 5VTTL 电平。
TTL 电平在一般情况下,高电平(1.8V、3.3V 或者 5V)表示逻辑 1,0V 表示逻辑 0。
一般情况下,CMOS 和 TTL 进行数据传输的时候,只要电平相同和 IO 的类型,就可以正
常通信。
那么这里有一个基本的结论:TTL 电平的串