笔记
前2周, 用同事留下的模块板子(4路3.3VTTL转4路RS485/RS232)时, 将其中的2路485不焊接, 焊接1片MAX3232, 但是2路RS232不通讯.
因为同事没见过这模块板子上用RS232的情况, 就只能分析修正.
当时分析,是3.3VMCU和5V供电的模块板子没做TTL电平转换引起的问题.当然这肯定是问题之一.
打了样板回来, 发现RS232还不能通讯.
去查MAX3232的datasheet, 才发现以前同事将232的TTL端和232端搞反了. 这真是想不到, 也只能说, 没有验证过的电路, 啥幺蛾子都会出. 以前同事留这么一个瓜在板子上, 也许是有原因的, 但是没有留下文档,就猜测不到具体原因了. 也许他这板子是有其他用途的.
同事的局部原始电路如下
UARTx_TX/RX 是接3.3VMCU的串口
AX/TX 是接232或485端子.
查了datasheet, 才发现TTL端和232端反了.
修正后的电路如下
我觉得画原理图时, 将一些细节(原理图管脚要和datasheet相同, 不要搞自己的管脚别名, 啥电压用啥外围元件, 数据流方向)标注上, 可以有利于维护者(以后的自己或接手自己工程的未知新同事)维护工程.
除非你能保证这个板子以后打死都不会改, 包用…
可是又有几个人能保证自己做的东西包用, 永久不用改呢?
我加了电平转换的样板(第1次改版)不好使(如果好使了, 就不用写这篇笔记了), 上面用的电容都是0.1uf, 看数据表, 只有3V3供电时, 电容才是0.1uf, 如果5V供电或者用不标准的电压(3~5V)供电时, 电容值都是不一样的.
第2次样板已经改好(将MAX3232电路修正, 修正了不合适的ASM117-3V3的10uf钽电容封装), 准备打样.
既然仔细看过(其实只是看自己关心的部分)数据表, 就将细节就记录一下.
MAX3232电路细节
打样板子用的MAX3232具体型号 = MAX3232IDR
datasheet是TI(www.ti.com.cn)出的max3232.pdf
datasheet下载链接 = http://www.ti.com/cn/lit/gpn/max3232
- MAX3232可以用3.3V或5V供电.
- 有路232通讯可用.
引脚定义
都是贴装16脚, 数据引脚命名初步看, 含义不是很清楚, 需要看引脚说明
引脚说明
从引脚说明可以看出数据流向.
(MCU_TTL端)DINX => (RS232端)DOUTX
(RS232端)RINX => (MCU_TTL端)ROUTX
这样,就理解了管脚命名含义, 就不会将原理图上的数据流向搞反了.
电平和电压定义
可以看出MAX3232芯片供电电压为3.3V~5V
2V(3.3V供电)/2.4V(5V供电)以上是TTL高电平
0.8V以下是TTL低电平
典型应用电路
V+的外接电容
有一句说明, 这个V+的外接电容, 可以接到VCC或者GND 都行.
外接电容的极性
典型电路上使用的电容都是有极性的, 可以使用无极性的陶瓷电容.
但是如果使用极性电容(钽电容或电解电容), 极性必须和典型电路的极性电容方向一致.
外接电容的值
根据自己需要外接的电压, 将4棵电容的值搞对.
官方有说明, 将外接电容值搞对, 可以得到最好的性能.
并不说不管3.3V或者5V, 都用0.1uf就不行, 可以试试对通讯质量的影响.
按照官方说明照做, 这样最简单.
TTL电平和RS232电平长的啥样?
可以看出RS232电平是个-5V到5V的方波, 参见DOUT波形. 网上查RS232是一个-15V到+15V的方波.
TTL电平波形是0V~3V或者5V的方波(依赖于VCC是3V还是5V), 参见DIN, ROUT波形.
PCB布局
这4个电容都要尽量靠近对应的管脚. 这个和一般IC外围元件布局要求是一样的.
MAX3232IDR的封装和温度说明
这次打样的MAX3232IDR是商业级的, -40~85度的. SOIC16封装.
封装如果力创上有, 就用买到芯片对应的力创封装, 如果用以前的封装, 可能和买到的芯片封装不一样(吃过亏). 你真不知道同事的SO16 和力创对应芯片的MAX3232IDR是否一致, 如果非要用同事以前的封装, 下载力创芯片对应PCB, 将封装导出后, 放一个到PCB上和同事的封装比对一下.