1
CH432 中文手册(一)
双串口芯片 CH432
中文手册
版本:1A
http://wch.cn
1、概述
CH432 是双 UART 芯片,包含两个兼容 16C550 的异步串口,支持半双工收发自动切换和 IrDA 红
外编解码,支持最高 4Mbps 的通讯波特率,可以用于单片机/嵌入式系统的 RS232 串口扩展、带自动
硬件速率控制的高速串口、RS485 通讯、IrDA 通讯等。下图为其一般应用框图。
TXD/RTS/DTR
8 位并口
串口 0
MCU
单片机
或
ISA 等
并行总线
SPI 接口
CH432Q
芯片
INT#
并口
或 SPI
RXD/CTS/DSR/RI/DCD
TXD1/RTS1/DTR1
串口 1
INT0
RXD1/CTS1/DSR1/RI1/DCD1
INT1
TXD/RTS
SCS#
串口 0
SCK
SDI
MCU
单片机
SDO
CH432T
芯片
SPI
RXD/CTS/RI
TXD1/RTS1
串口 1
INT#
RXD1/CTS1
2、特点
●
●
●
●
●
●
●
●
●
完全独立的两个异步串口,兼容 16C450、16C550 及 16C552 并且有所增强。
支持 5、6、7 或者 8 个数据位以及 1 或者 2 个停止位。
支持奇、偶、无校验、空白 0、标志 1 等校验方式。
可编程通讯波特率,支持 115200bps 以及最高达 4Mbps 的通讯波特率。
内置 16 字节的 FIFO 先进先出缓冲器,支持 4 个 FIFO 触发级。
支持 MODEM 调制解调器信号 CTS、DSR、RI、DCD、DTR、RTS,可由 75232 芯片转成 RS232 电平。
支持硬件流控制信号 CTS 和 RTS 自动握手和自动传输速率控制,兼容 TL16C550C。
支持串口帧错误检测、支持 Break 线路间隔检测。
支持全双工和半双工串口通讯,提供 RTS 串口发送状态信号支持 RS485 收发自动切换。
2
CH432 中文手册(一)
●
●
●
●
●
●
●
●
内置 SIR 红外线编解码器,支持 2400bps 到 115200bps 波特率的 IrDA 红外通讯。
内置时钟振荡器,支持频率范围 0.9216MHz~32MHz 的晶体,默认使用 22.1184MHz 晶体。
可选两种单片机接口:10MB 速度的 8 位被动并行接口和 3MB/24MHz 速度的 SPI 串行接口。
并行接口包含 8 位数据总线,4 位地址,3 线控制:片选输入、写选通以及可选的读选通。
SPI 串行接口包含 SPI 片选、串行时钟、串行输入和输出,并且 SPI 输出与输入可以并联。
中断输出引脚是可选连接,低电平有效,可以通过查询寄存器中的中断标志位代替。
支持 5V 或者 3.3V 电源电压,支持串口低功耗睡眠模式。
提供 QFP-44 和 SSOP-20 两种无铅封装,兼容 RoHS。
3、封装
封装形式
QFP-44
SSOP-20
塑体宽度
10*10mm
5.30mm
209mil
引脚间距
0.8mm
31.5mil
0.65mm
25mil
封装说明
标准 QFP44 脚贴片
超小型 20 脚贴片
订货型号
CH432Q
CH432T
4、引脚
4.1. 一般说明
CH432T 芯片采用 SSOP-20 封装,是 QFP-44 封装的 CH432Q 芯片的简装版,两者相同名称的引脚
具有相同的功能。下表中直接列出的引脚号适用于 QFP-44 封装,而括号中的引脚号适用于 SSOP-20
封装,表中标为灰色的引脚是对双功能引脚的重新定义。
4.2. 电源和系统信号线
引脚号
11,34
(18)
12,23
(3,19)
24 (9)
25 (10)
28 (12)
引脚名称
类型
引脚说明
VCC
电源
正电源端
GND
电源
公共接地端
XI
XO
HLF#
输入
输出
输入
晶体振荡的输入端,需要外接晶体及振荡电容
晶体振荡的反相输出端,需要外接晶体及振荡电容
半双工通讯模式使能,低电平有效,内置弱上拉电阻
4.3. 本地接口信号线
3
CH432 中文手册(一)
引脚号
13
引脚名称
SPI#
类型
输入
36
ALE#
输入
1-4,
41-44
1 (20)
42 (17)
41 (16)
37-40
37
9
8
7
7 (2)
10
5 (1)
14
6
D7~D0
SCK
SDI
SDO
A3~A0
ALE
RD#
WR#
CS#
SCS#
CS1
INT#
INT0
INT1
三态输出
及输入
输入
输入
三态输出
输入
输入
输入
输入
输入
输入
输入
开漏输出
三态输出
三态输出
引脚说明
接口方式选择,高电平为并口方式,低电平为 SPI 方式
并口的地址方式选择,
高电平为直接地址方式,低电平为复用地址方式
并口方式的双向数据信号线,
并口复用地址方式的地址和数据复用信号线
SPI 方式的 SPI 串行时钟输入
SPI 方式的 SPI 串行数据输入
SPI 方式的 SPI 串行数据输出
并口直接地址方式的地址线输入
并口复用地址方式的地址锁存使能输入,高电平有效
并口方式的读选通输入,低电平有效
并口方式的写选通输入,低电平有效
并口方式的片选控制输入,低电平有效
SPI 方式的 SPI 片选输入,低电平有效
并口方式的片选控制输入,高电平有效
中断请求输出,低电平有效
串口 0 中断请求输出,高电平有效,内置弱上拉电阻
串口 1 中断请求输出,高电平有效,内置弱上拉电阻
4.4. 串口 0 信号线
引脚号
引脚名称
类型
引脚说明
22 (8)
21
20 (7)
19
18 (6)
17
CTS
DSR
RI
DCD
RXD
DTR
输入
输入
输入
输入
输入
输出
16 (5)
RTS
输出
15 (4)
TXD
输出
MODEM 信号,清除发送,低电平有效,内置弱上拉
MODEM 信号,数据装置就绪,低电平有效,内置弱上拉
MODEM 信号,振铃指示,低电平有效,内置弱上拉
MODEM 信号,载波检测,低电平有效,内置弱上拉
异步串行数据输入,内置弱上拉电阻
MODEM 信号,数据终端就绪,低电平有效
MODEM 信号,请求发送,低电平有效
在半双工通讯时为串行数据正在发送状态指示,高有效
异步串行数据输出
4.5. 串口 1 信号线
引脚号
33 (14)
32
31
30
29 (13)
26
引脚名称
CTS1
DSR1
RI1
DCD1
RXD1
DTR1
类型
输入
输入
输入
输入
输入
输出
35 (15)
RTS1
输出
27 (11)
TXD1
输出
5、配置
引脚说明
MODEM 信号,清除发送,低电平有效,内置弱上拉
MODEM 信号,数据装置就绪,低电平有效,内置弱上拉
MODEM 信号,振铃指示,低电平有效,内置弱上拉
MODEM 信号,载波检测,低电平有效,内置弱上拉
异步串行数据输入,内置弱上拉电阻
MODEM 信号,数据终端就绪,低电平有效
MODEM 信号,请求发送,低电平有效
在半双工通讯时为串行数据正在发送状态指示,高有效
异步串行数据输出
CH432 中文手册(一)
4
5.1. 半双工配置
CH432 芯片的串口支持全双工或者半双工通讯。当 HLF#引脚接地或者接低电平时,CH432 工作于
半双工通讯方式。这种半双工通讯又可以分为两种具体应用:半双工串口(包括但不限于 RS485 通讯
应用)
、IrDA 红外串口 SIR。在半双工串口应用中,RTS 引脚(串口 1 则是 RTS1 引脚)用于串行数据
正在发送状态指示,高电平有效,可以用于自动控制 RS485 收发器的收发切换。在红外串口 SIR 应用
中,RXD 和 TXD 引脚可以直接连接 ZHX1810、HSDL3000、TFBS4711、TFDU4100 等红外线收发器的 RXD
和 TXD 引脚,CH432 内部自动实现红外编解码。下表为串口的半双工配置。
引脚组合状态
HLF#引脚悬空或者接高电平
HLF#引脚接地或者接低电平
CTS 引脚接高电平
串口 0 为红外串口 SIR
串口 0 为全双工通讯
CTS 用于 MODEM 信号
CTS 引脚接地或者接低电平
串口 0 为半双工通讯,如 RS485
CTS1 引脚接高电平
串口 1 为全双工通讯
串口 1 为全双工通讯
CTS1 用于 MODEM 信号
CTS1 引脚接地或者接低电平
串口 1 为半双工通讯,如 RS485
5.2. 内部时钟
CH432 芯片内部具有时钟振荡器,只需要在 XI 和 XO 引脚之间连接一个晶体,并且分别为 XI 和
XO 引脚对地连接振荡电容,就能产生串口所需的外部时钟信号,如果不接晶体和电容,CH432 芯片也
可以通过 XI 引脚从外部时钟源直接输入时钟。
CK2X 是串口 1 的 IER 寄存器的位 5,CH432 芯片内部由 CK2X 选择对 XI 引脚的外部时钟信号进行
1/12 分频或者 2 倍频,产生内部基准时钟提供给两个串口。CK2X 默认为 0,为 0 时选择 1/12 分频,
为 1 时选择 2 倍频。如果需要与现有 16C550 串口芯片兼容,那么内部时钟频率应该是 1.8432MHz,
对应的最大串口波特率是 115200bps,所以默认的外部时钟频率为 22.1184MHz。如果需要产生较高的
串口波特率,那么应该设置 CK2X 为 1,并且选择较高的外部时钟频率。如果需要产生特殊数值的串
口波特率,那么应该选择特定频率的外部时钟或者晶体。
下表是根据 CK2X 值和外部晶体频率产生串口的内部时钟频率和最大串口波特率。
外部输入时钟频率
CK2X=0,内部 1/12 分频
CK2X=1,内部 2 倍频
或者外部晶体频率
最大波特率
内部时钟频率
最大波特率
内部时钟频率
32MHz
64MHz
4Mbps
22.1184MHz
1.8432MHz
115.2Kbps
44.2368MHz
2.7648Mbps
18.432MHz
36.864MHz
2.304Mbps
14.7456MHz
29.4912MHz
1.8432Mbps
11.0592MHz
0.9216MHz
57.6Kbps
22.1184MHz
1.3824Mbps
7.3728MHz
0.6144MHz
38.4Kbps
14.7456MHz
921.6Kbps
3.6864MHz
0.3072MHz
19.2Kbps
7.3728MHz
460.8Kbps
0.9216MHz
1.8432MHz
115.2Kbps
5.3. 本地接口方式
CH432T 芯片在本地端只支持 SPI 同步串行接口,而 CH432Q 芯片在本地端提供了两种接口方式:
通用的 8 位被动并行接口和 SPI 同步串行接口。在 CH432Q 芯片上电复位时,CH432Q 将采样 SPI#引脚
的状态,如果 SPI#为低电平(接地)
,那么选择 SPI 串行接口,否则选择并行接口。
如果选择了并行接口,那么 CH432Q 芯片会根据 ALE#引脚的状态选择地址方式:直接地址和复用
地址。当 ALE#引脚为低电平时选择复用地址方式,否则选择直接地址方式。在直接地址方式下,地
址是从 A3~A0 引脚直接输入;在复用地址方式下,地址是由 ALE 引脚控制从 D3~D0 引脚输入锁存。
引脚状态
ALE#引脚为高电平
ALE#引脚为低电平
SPI#引脚为高电平
直接地址的 8 位并口方式
复用地址的 8 位并口方式
SPI#引脚为低电平
SPI 串行接口方式
CH432 中文手册(一)
5
6、寄存器
CH432 兼容工业标准 16550 并有所增强,表中标为灰色的寄存器位为增强功能,除此之外的寄存
器可以参考单串口芯片 16C550 的说明。在寄存器地址空间分布上,从地址 00H 开始的 8 个寄存器为
串口 0 的寄存器,从地址 08H 开始的 8 个寄存器为串口 1 的寄存器,除了起始地址不同以及下表中的
SLP/CK2X 寄存器位之外,串口 0 与串口 1 的寄存器都相同。表中 DLAB 为寄存器 LCR 的位 7,X 表示
不关心 DLAB 值,RO 表示寄存器只读,WO 表示寄存器只写,R/W 表示寄存器可读可写。
地
名
DLAB R/W
位7
位6
位5
位4
位3
位2
位1
位0
址
称
0
0
1
2
2
3
4
5
6
7
0
1
0 RO RBR
位7
位6
位5
位4
位3
位2
位1
位0
0 WO THR
位7
位6
位5
位4
位3
位2
位1
位0
0 R/W IER RESET LOWPOWER SLP/CK2X
0
IEMODEM IELINES IETHRE IERECV
X RO IIR FIFOENS FIFOENS
0
0
IID3
IID2
IID1
NOINT
X WO FCR RECVTG1 RECVTG0
0
0
0
TFIFORST RFIFORST FIFOEN
X R/W LCR
DLAB
BREAKEN PARMODE1 PARMODE0 PAREN
STOPBIT WORDSZ1 WORDSZ0
X R/W MCR
0
0
AFE
LOOP
OUT2
OUT1
RTS
DTR
X RO LSR RFIFOERR TEMT
THRE
BREAKINT FRAMEERR PARERR
OVERR DATARDY
X RO MSR
DCD
RI
DSR
CTS
△DCD
△RI
△DSR
△CTS
X R/W SCR
位7
位6
位5
位4
位3
位2
位1
位0
1 R/W DLL
位7
位6
位5
位4
位3
位2
位1
位0
1 R/W DLM 位 15
位 14
位 13
位 12
位 11
位 10
位9
位8
下表是串口寄存器在上电复位或者串口软复位之后的默认值。
寄存器名称
位7
位6
位5
位4
位3
位2
位1
位0
IER
0
0
0
0
0
0
0
0
IIR
0
0
0
0
0
0
0
1
FCR
0
0
0
0
0
0
0
0
LCR
0
0
0
0
0
0
0
0
MCR
0
0
0
0
0
0
0
0
LSR
0
1
1
0
0
0
0
0
MSR
DCD
RI
DSR
CTS
0
0
0
0
SCR
保持
保持
保持
保持
保持
保持
保持
保持
FIFO
复位,包括发送 FIFO 和接收 FIFO
TSR
复位,TSR 是串口发送移位寄存器
RSR
复位,RSR 为串口接收移位寄存器
其它
未定义
RBR:接收缓冲寄存器,如果 LSR 的 DATARDY 位为 1 则可以从该寄存器读取接收到的数据。如果 FIFOEN
为 1 则从串口移位寄存器 RSR 接收到的数据首先被存放于接收 FIFO 中,然后通过该寄存器读出。
THR:发送保持寄存器,包括发送 FIFO,用于写入准备发送的数据。如果 FIFOEN 为 1 则写入的数据
首先被存放于发送 FIFO 中,然后通过发送移位寄存器 TSR 逐个输出。
IER:中断使能寄存器,包括增强功能控制位以及串口中断使能。
RESET:该位置 1 则软复位该串口,该位能够自动清 0,无需软件清 0。
LOWPOWER:该位为 1 则关闭该串口的内部基准时钟,从而使该串口进入低功耗状态。
SLP/CK2X:串口 0 与串口 1 的该位用途不同,串口 0 是 SLP,该位为 1 则关闭时钟振荡器,从而
使串口 0 与串口 1 全部进入睡眠状态,串口 1 是 CK2X,该位为 1 则强制将外部时钟信号 2 倍
频后作为串口 0 和串口 1 的内部基准时钟。
IEMODEM:该位为 1 则允许调制解调器输入状态变化中断。
IELINES:该位为 1 则允许接收线路状态中断。
6
CH432 中文手册(一)
IETHRE:该位为 1 则允许发送保持寄存器空中断。
IERECV:该位为 1 则允许接收到数据中断。
IIR:中断识别寄存器,用于分析中断源并处理。
FIFOENS:该位为 FIFO 启用状态,为 1 表示已经启用 FIFO。
IIR 寄存器位
优先
IID3 IID2 IID1 NOINT 级
0
0
0
1
无
0
1
1
0
1
0
1
0
0
2
1
1
0
0
2
中断类型
没有中断产生
接收线路状态
接收数据可用
接收数据超时
中断源
清中断
方法
没有中断
OVERR、PARERR、FRAMEERR、BREAKINT 读 LSR
接收到的字节数达到 FIFO 的触发点
读 RBR
超过 4 个数据的时间未收到下一数据
读 RBR
发送保持寄存器空,
读 IIR
0
0
1
0
3
THR 寄存器空
IETHRE 从 0 变 1 可以重新使能中断 或写 THR
0
0
0
0
4
MODEM 输入变化
△CTS、△DSR、△RI、△DCD
读 MSR
FCR:先进先出缓冲区 FIFO 控制寄存器,用于使能和复位 FIFO。
RECVTG1 和 RECVTG0:设置接收 FIFO 的中断和硬件流控制的触发点,00 对应 1 个字节,即接收
满 1 个字节产生接收数据可用的中断,并在使能硬件流控制时自动无效 RTS 引脚,01 对应 4
个字节,10 对应 8 个字节,11 对应 14 个字节。
TFIFORST:该位置 1 则清空发送 FIFO 中的数据(不含 TSR)
,该位能够自动清 0,无需软件清 0。
RFIFORST:该位置 1 则清空接收 FIFO 中的数据(不含 RSR)
,该位能够自动清 0,无需软件清 0。
FIFOEN:该位为 1 则启用 FIFO,该位清 0 则禁用 FIFO,禁用 FIFO 后为 16C450 兼容模式,相当
于 FIFO 只有一个字节。
LCR:线路控制寄存器,用于控制串口通讯的格式。
DLAB:该位为除数锁存器存取使能,为 1 时才能存取 DLL 和 DLM,为 0 时才能存取 RBR/THR/IER。
BREAKEN:该位为 1 则强制产生 BREAK 线路间隔。
PARMODE1 和 PARMODE0:当 PAREN 为 1 时设置奇偶校验位的格式:00 则奇校验,01 则偶校验,10
则标志位(MARK,置 1)
,11 则空白位(SPACE,清 0)
。
PAREN:该位为 1 则允许发送时产生和接收时校验奇偶校验位,为 0 则无奇偶校验位。
STOPBIT:该位为 1 则两个停止位,为 0 则一个停止位。
WORDSZ1 和 WORDSZ0:设置字长度,00 则 5 个数据位,01 则 6 个数据位,10 则 7 个数据位,11
则 8 个数据位。
MCR:调制解调器 MODEM 控制寄存器,用于控制 MODEM 输出。
AFE:该位为 1 则允许 CTS 和 RTS 硬件自动流控制。如果 AFE 为 1,那么仅在检测到 CTS 引脚输
入有效(低电平有效)时串口才继续发送下一个数据,否则暂停串口发送,当 AFE 为 1 时的
CTS 输入状态变化不会产生 MODEM 状态中断。如果 AFE 为 1 并且 RTS 为 1,那么当接收 FIFO
空时,串口会自动有效 RTS 引脚(低电平有效)
,直到接收的字节数达到 FIFO 的触发点时,
串口才自动无效 RTS 引脚,并能够在接收 FIFO 空时再次有效 RTS 引脚。使用硬件自动带率控
制,可将己方的 CTS 引脚接到对方的 RTS 引脚,并将己方的 RTS 引脚送到对方的 CTS 引脚。
LOOP:该位为 1 则使能内部回路的测试模式。在内部回路的测试模式下,串口所有对外输出引脚
均为无效状态,TXD 内部返回到 RXD(即 TSR 的输出内部返回到 RSR 的输入)
,RTS 内部返回到
CTS,DTR 内部返回到 DSR,OUT1 内部返回到 RI,OUT2 内部返回到 DCD。
OUT2:该位为 1 则允许该串口的中断请求输出,否则该串口不产生实际中断请求。
OUT1:该位为用户可定义 MODEM 控制位,没有连接实际输出引脚。
RTS:该位为 1 则 RTS 引脚输出有效(低电平有效)
,否则 RTS 引脚输出无效。
DTR:该位为 1 则 DTR 引脚输出有效(低电平有效)
,否则 DTR 引脚输出无效。
LSR:线路状态寄存器,用于查询方式分析串口状态。
RFIFOERR:该位为 1 表示在接收 FIFO 中存在至少一个 PARERR、FRAMEERR 或 BREAKINT 错误。
TEMT:该位为 1 表示发送保持寄存器 THR 和发送移位寄存器 TSR 全空。
THRE:该位为 1 表示发送保持寄存器 THR 空。
BREAKINT:该位为 1 表示检测到 BREAK 线路间隔。
CH432 中文手册(一)
7
FRAMEERR:该位为 1 表示正在从接收 FIFO 中读取的数据的帧错误,缺少有效的停止位。
PARERR:该位为 1 表示正在从接收 FIFO 中读取的数据的奇偶校验错。
OVERR:该位为 1 表示接收 FIFO 缓冲区溢出。
DATARDY:该位为 1 表示接收 FIFO 中有接收到的数据,读取 FIFO 中所有数据后,该位自动清 0。
MSR:调制解调器 MODEM 状态寄存器,用于查询 MODEM 状态。
DCD:该位是 DCD 引脚的位反,为 1 表示 DCD 引脚有效(低电平有效)
。
RI:该位是 RI 引脚的位反,为 1 表示 RI 引脚有效(低电平有效)
。
DSR:该位是 DSR 引脚的位反,为 1 表示 DSR 引脚有效(低电平有效)
。
CTS:该位是 CTS 引脚的位反,为 1 表示 CTS 引脚有效(低电平有效)
。
△DCD:该位为 1 表示 DCD 引脚输入状态发生过变化。
△RI:该位为 1 表示 RI 引脚输入状态发生过变化。
△DSR:该位为 1 表示 DSR 引脚输入状态发生过变化。
△CTS:该位为 1 表示 CTS 引脚输入状态发生过变化。
SCR:用户可定义寄存器。
DLL 和 DLM:波特率除数锁存器,DLL 是低字节,DLM 是高字节,两者组成的 16 位除数用于由 16 位计
数器构成的串口波特率产生器。该除数 = 串口内部基准时钟 / 16 / 所需通讯波特率。如果串口
内部基准时钟为 1.8432MHz,所需波特率为 9600bps,则除数=1843200/16/9600=12。
7、功能说明
7.1. 查询与中断
CH432 芯片共有 3 个中断请求输出引脚:INT0 引脚是串口 0 的中断请求,由串口 0 的 MCR 寄存器
的 OUT2 控制其三态输出,当 OUT2 为 1 时输出允许;INT1 引脚是串口 1 的中断请求,由串口 1 的 MCR
寄存器的 OUT2 控制其三态输出,当 OUT2 为 1 时输出允许;INT#引脚是低电平有效的开漏输出引脚,
连接单片机时可能需要外加上拉电阻,在逻辑功能上是 INT0 和 INT1 的“或非”
,当 INT0 或者 INT1
其中一个有效时(三态输出允许且输出高电平)
,INT#引脚输出低电平,否则 INT#引脚不输出。
如果只连接 INT#引脚,即两个串口合用一个中断请求,那么单片机在进入中断服务程序后,首
先应该分析出是哪个串口的中断请求。当进入中断服务程序后,单片机首先读取串口 0 的 IIR 寄存器,
有中断则处理并退出,无中断则读取串口 1 的 IIR 寄存器,有中断则处理并退出,无中断则直接退出。
当确认是某个串口的中断后,如果有必要还可以进一步分析 LSR 寄存器,分析中断原因并处理。
如果连接了 INT0 和 INT1 引脚,那么单片机就能够直接判断出是哪个串口的中断请求,可以直接
读取其 IIR 寄存器分析并处理中断。INT0 和 INT1 在三态输出禁止时(MCR 寄存器的 OUT2 为 0)
,内
置的弱上拉电阻会使其输出微弱的高电平,
通过外接 10KΩ~100KΩ的下拉电阻可使其默认为低电平。
如果串口工作于中断方式,那么需要设置 IER 寄存器以允许相应的中断请求,并设置 MCR 寄存器
中的 OUT2 以允许中断输出。
如果串口工作于查询方式,那么无需设置 IER 和 MCR 的 OUT2,只需查询 LSR 寄存器并分析处理。
7.2. 串口操作
串口发送的保持寄存器 THR 空中断(IIR 寄存器的低 4 位为 02H)是指发送 FIFO 空。当读取 IIR
寄存器后,该中断被清除,或者当向 THR 写入下一个数据后,该中断也能被清除。如果仅仅是向 THR
写入一个字节,那么由于该字节很快被转移到发送移位寄存器 TSR 中开始发送,所以 CH432 很快会再
次产生发送保持寄存器 THR 空中断的请求,此时可以写入下一个准备发送的数据。当 TSR 寄存器中的
数据被全部移出后,串口发送才真正完成,此时 LSR 寄存器的 TEMT 位变为 1 有效。
当单片机收到串口发送保持寄存器 THR 空的中断后,如果使能 FIFO,那么可以向 THR 寄存器及
FIFO 一次写入最多 16 个字节,由 CH432 按顺序自动发送;如果禁止 FIFO,那么一次只能写入一个字
节;如果没有数据需要发送,那么可以直接退出(之前读取 IIR 时已经自动清除中断)
。
在查询方式下,单片机可以根据 LSR 寄存器的 THRE 位判断发送 FIFO 是否为空,THRE 为 1 则可
以向 THR 寄存器及 FIFO 写入数据,如果使能 FIFO,那么一次可以写入最多 16 个字节。
CH432 中文手册(一)
8
串口接收的数据可用中断(IIR 寄存器的低 4 位为 04H)是指接收 FIFO 中的已有数据字节数已经
达到或超过由 FCR 寄存器的 RECVTG1 和 RECVTG0 选择的 FIFO 触发点。当从 RBR 读取数据使 FIFO 中字
节数低于 FIFO 触发点时,该中断被清除。串口接收的数据超时中断(IIR 寄存器的低 4 位为 0CH)是
指接收 FIFO 中至少有一个字节的数据,并且从上一次串口接收到数据和从上一次被单片机取走数据
开始,已经等待了相当于接收 4 个数据的时间。当再次接收到一个新的数据后,该中断被清除,或者
当单片机读取一次 RBR 寄存器后,该中断也能被清除。当接收 FIFO 全空时,LSR 寄存器的 DATARDY
位为 0,当接收 FIFO 中有数据时,DATARDY 位为 1 有效。
当单片机收到串口接收数据超时的中断后,可以先从 RBR 寄存器读取一个字节,然后查询 LSR 寄
存器的 DATARDY 位,如果 DATARDY 位有效则再读取一个字节,直到 DATARDY 位无效。
当单片机收到串口接收数据可用的中断后,可以先从 RBR 寄存器读取由 FCR 寄存器的 RECVTG1 和
RECVTG0 设定的字节数,然后再查询 LSR 寄存器的 DATARDY 位,如果 DATARDY 位有效则再读取一个字
节,直到 DATARDY 位无效,或者全部是通过查询 LSR 寄存器的 DATARDY 位有效后再读取。
在查询方式下,单片机可以根据 LSR 寄存器的 DATARDY 位判断接收 FIFO 是否为空,DATARDY 为 1
则可以从 RBR 寄存器读取一个字节的数据,然后查询 DATARDY 位的状态,如果有效则再次读取 RBR 寄
存器,直到 DATARDY 位为 0。
接收线路状态中断(IIR 寄存器的低 4 位为 06H)是指上次单片机读取 LSR 寄存器之后,CH432
在串口接收过程中检测到错误或者异常。当从 LSR 寄存器读取线路状态后,该中断及 LSR 寄存器中的
状态位被清除。该中断是 LSR 寄存器的位数据 BREAKINT、FRAMEERR、PARERR 和 OVERR 的逻辑“或”。
MODEM 输入变化中断(IIR 寄存器的低 4 位为 00H)是指上次单片机读取 MSR 寄存器之后,CH432
检测到调制解调器的输入信号发生了变化。当从 MSR 寄存器读取 MODEM 状态后,该中断及 MSR 寄存器
中的状态位被清除。该中断是 MSR 寄存器的位数据△DCD、△RI、△DSR 和△CTS 的逻辑“或”
。
7.3. 硬件流控制
硬件流控制包括自动 CTS(MCR 寄存器的 AFE 为 1)和自动 RTS(MCR 寄存器的 AFE 和 RTS 都为 1)
。
如果使能自动 CTS,那么 CTS 引脚在串口发送数据之前必须有效。串口发送器在发送下一个数据
之前会检测 CTS 引脚,当 CTS 引脚状态有效时,发送器发送下一个数据。为了使发送器停止发送后面
的数据,CTS 引脚必须在当前发送的最后一个停止位的中间时刻之前被无效。自动 CTS 功能减少了向
单片机系统申请的中断。当使能硬件流控制后,由于 CH432 会根据 CTS 引脚状态自动控制发送器,所
以 CTS 引脚电平的改变不会触发 MODEM 中断。
如果使能自动 RTS,那么仅当 FIFO 中有足够空间接收数据时才使 RTS 引脚输出有效,而在接收
FIFO 满时使 RTS 引脚输出无效。如果接收 FIFO 中的数据被全部取走或清空,那么 RTS 引脚输出有效。
当到达接收 FIFO 的触发点时(接收 FIFO 中已有的字节数不少于 FCR 寄存器的 RECVTG1 和 RECVTG0 设
定的字节数)
,RTS 引脚输出无效,并且允许对方的发送器在 RTS 引脚无效后再发送一个另外的数据。
一旦接收 FIFO 被取空数据,RTS 引脚就会自动重新有效,从而使对方的发送器恢复发送。
如果自动 CTS 和自动 RTS 都被使能(MCR 寄存器的 AFE 和 RTS 都为 1)
,那么当己方的 RTS 引脚连
接对方的 CTS 引脚时,除非己方的接收 FIFO 中有足够的空间,否则对方不会发送数据。因此,通过
CH432 芯片的这种硬件流控制,可以避免串口接收时的 FIFO 溢出和超时错误。
7.4. 并行接口
并口信号线包括:8 位双向数据总线 D7~D0、读选通输入引脚 RD#、写选通输入引脚 WR#、片选
输入引脚 CS#和 CS1,以及地址输入引脚 A3~A0 或地址锁存使能引脚 ALE。通过被动并行接口,CH432
芯片可以很方便地挂接到各种 8 位单片机、DSP、MCU 的系统总线上,并且可以与多个外围器件共存。
CH432 芯片的 CS#和 CS1 由地址译码电路驱动,用于当单片机具有多个外围器件时进行设备选择。
当外围器件较少时,
也可以由低电平有效的 CS#和高电平有效的 CS1 直接对地址进行简单的片选译码。
对于类似 Intel 并口时序的单片机,CH432 芯片的 RD#引脚和 WR#引脚可以分别连接到单片机的
读选通输出引脚和写选通输出引脚。对于类似 Motorola 并口时序的单片机,CH432 芯片的 RD#引脚应
该接低电平,并且 WR#引脚连接到单片机的读写方向输出引脚 R/-W。
在直接地址方式下,当前操作地址是由 A3~A0 引脚在存取操作时直接输入。
9
CH432 中文手册(一)
在复用地址方式下,当前操作地址是在存取操作之前 ALE 引脚高电平期间从 D3~D0 引脚输入并
锁存。ALE 引脚是 A3 引脚的别名,当 ALE 引脚为高电平时,在 D3~D0 引脚上出现的数据被作为地址
锁存,而在存取操作期间,ALE 引脚应该是低电平,所以之前已经锁存的地址不受影响。
下表为并口 I/O 操作的真值表(表中 X 代表不关心此位,Z 代表 CH432 三态禁止)
。
CS1
CS#
WR#
RD#
D7-D0
对 CH432 芯片的实际操作
0
X
1
1
1
X
1
0
0
0
X
X
1
0
1
X
X
1
X
0
X/Z
X/Z
X/Z
输入
输出
未选中 CH432,不进行任何操作
未选中 CH432,不进行任何操作
虽然选中但无操作,不进行任何操作
向 CH432 芯片的指定地址写入数据
从 CH432 芯片的指定地址读出数据
7.5. SPI 串行接口
SPI 同步串行接口信号线包括:SPI 片选输入引脚 SCS#、串行时钟输入引脚 SCK、串行数据输入
引脚 SDI 和串行数据输出引脚 SDO。通过 SPI 串行接口,CH432 可以用较少的连线挂接到各种单片机、
DSP、MCU 的 SPI 串行总线上,或者进行较远距离的点对点连接。
CH432 芯片的 SCS#引脚由单片机的 SPI 片选输出引脚或者普通输出引脚驱动,SCK 引脚由单片机
的 SPI 时钟输出引脚 SCK 驱动,SDI 引脚由单片机的 SPI 数据输出引脚 SDO 或 MOSI 驱动,SDO 引脚则
连接到单片机的 SPI 数据输入引脚 SDI 或 MISO。对于硬件 SPI 接口,建议 SPI 设置是 CPOL=CPHA=0
或者 CPOL=CPHA=1,并且数据位顺序是高位在前 MSB first。
CH432 的 SPI 接口支持单片机用普通 I/O 引脚模拟 SPI 接口进行通讯。CH432 的 SDO 是三态输出
引脚,只在收到读操作命令后才输出。为了节约引脚,CH432 的 SDO 引脚可以与 SDI 引脚并联后再连
接到单片机的双向 I/O 引脚,建议 CH432 的 SDO 引脚先串接几百欧姆的电阻后再并联到 SDI 引脚。
CH432 的 SPI 接口支持 SPI 模式 0 和 SPI 模式 3,CH432 总是从 SPI 时钟 SCK 的上升沿输入数据,
并在允许输出时从 SCK 的下降沿输出数据,数据位顺序是高位在前,计满 8 位为一个字节。
上图是 SPI 逻辑时序图,前一个是向 02H 地址写入 34H,后一个是从 05H 地址读出 78H。
SPI 的操作步骤是:
① 单片机产生 CH432 芯片的 SPI 片选,低电平有效;
② 单片机按 SPI 输出方式发出一个字节的地址码,用于指定操作地址和读写操作方向,其位 1
为数据传输方向,为 1 则写操作转③,为 0 则读操作转④,位 5~位 2 指定当前操作地址;
③ 如果是写操作,单片机发出一个字节的待写数据,CH432 收到并保存到指定地址,转⑤;
④ 如果是读操作,CH432 从指定地址读出一个字节数据并输出,单片机收到数据并保存,转⑤;
⑤ 单片机禁止 CH432 芯片的 SPI 片选,以结束当前 SPI 操作。
10
CH432 中文手册(一)
7.6. 应用说明
CH432 芯片的输出引脚都是 CMOS 电平,兼容 TTL 电平,输入引脚能够兼容 CMOS 电平和 TTL 电平,
通过外加 RS232 电平转换器,可以进一步转换为 RS232 串口。实际电路中未使用到的 CH432 芯片的任
何引脚都可以悬空不接。
CH432 芯片的串口正常工作时需要外部向 XI 引脚提供时钟信号。一般情况下,时钟信号由 CH432
内置的反相器通过晶体稳频振荡产生。为了减小功耗,如果只使用一个串口,那么可以通过设置另一
个串口 IER 寄存器的 LOWPOWER 位为 1 关闭未使用的串口;如果两个串口暂时都不使用,那么可以通
过设置串口 0 的 IER 寄存器的 SLP 位为 1 关闭时钟振荡器,但是在重新开启时钟振荡器时,必须在串
口操作之前等待至少 3 个毫秒的起振和稳定时间。
CH432 芯片的串口引脚包括:数据传输引脚和 MODEM 联络信号引脚。数据传输引脚包括:TXD 引
脚和 RXD 引脚,默认都是高电平。MODEM 联络信号引脚包括:CTS 引脚、DSR 引脚、RI 引脚、DCD 引
脚、DTR 引脚、RTS 引脚,默认都是高电平。所有这些 MODEM 联络信号都可以作为通用 IO 引脚,由单
片机应用程序控制并定义其用途。
CH432 内置了独立的收发缓冲区及 FIFO,支持单工、半双工或者全双工异步串行通讯。串行数据
包括 1 个低电平起始位、8 个数据位、0 个或者 1 个附加校验位或者标志位,1 个或者 2 个高电平停
止位,支持奇校验/偶校验/标志校验/空白校验。CH432 支持常用通讯波特率:1200、2400、4800、
9600、19.2K、38.4K、57.6K、115.2K、230.4K、460.8K、921.6K、1.8432M、2.7648M 等。串口发送
信号的波特率误差小于 0.2%,串口接收信号的允许波特率误差不小于 2%。
CH432 可以用于通过并口或者 SPI 接口为单片机/嵌入式系统扩展额外的高速 RS232 串口、支持
自动硬件速率控制的高波特率串口、RS422 或者 RS485 通讯接口、SIR 红外通讯接口等。现有的基于
工业标准 16C450 或者 16C550 芯片开发的串口程序能够直接应用,通常不需要作任何修改。
8、参数
8.1. 绝对最大值(临界或者超过绝对最大值将可能导致芯片工作不正常甚至损坏)
名称
TA
TS
VCC
VIO
参数说明
工作时的环境温度
VCC=5V
VCC=3.3V
储存时的环境温度
电源电压(VCC 接电源,GND 接地)
输入或者输出引脚上的电压
最小值
最大值
-40
-40
-55
-0.5
-0.5
85
65
125
6.0
VCC+0.5
单位
℃
℃
V
V
8.2. 电气参数(测试条件:TA=25℃,VCC=5V)
(如果电源电压为 3.3V,则表中所有电流参数需要乘以 40%的系数)
名称
参数说明
最小值
典型值
VCC
电源电压
3.3
5
ICC
5V 电源电压工作时的电源电流
2
5
ICC3
3.3V 电源电压工作时的电源电流
0.5
1.5
ISLP3
3.3V 电源电压低功耗睡眠时的电源电流
50
400
VIL
低电平输入电压
-0.5
VIH
高电平输入电压
2.0
VOL
低电平输出电压(4mA 吸入电流)
VOH
高电平输出电压(2mA 输出电流)
VCC-0.5
IIN
无上拉的输入端的输入电流
IUP1
带弱上拉的输入端的输入电流
2
5
VR
电源上电内部复位的电压门限
2.4
2.7
最大值
5.3
10
4
600
0.8
VCC+0.5
0.5
10
170
3.0
单位
V
mA
mA
uA
V
V
V
V
uA
uA
V
CH432 中文手册(一)
11
8.3. 基本时序(测试条件:TA=25℃,VCC=5V,括号中参数 VCC=3.3V,参考附图)
名称
FXI
TPR
TIC
参数说明
XI 输入频率、晶体频率
电源上电的内部复位时间
从收到清除中断操作到撤消中断的时间
最小值
0.9216
0.1
2
典型值
22.1184
1
20
最大值
32 (24)
20
100
单位
MHz
mS
nS
8.4. 并口时序(测试条件:TA=25℃,VCC=5V,括号中参数 VCC=3.3V,参考下面附图)
(RD 是指 RD#信号有效并且 CS1 和 CS#信号有效,WR#=1&RD#=CS#=0&CS1=1 执行读操作)
(WR 是指 WR#信号有效并且 CS1 和 CS#信号有效,WR#=CS#=0&CS1=1 执行写操作)
名称
参数说明
最小值
典型值
最大值
单位
TWW
TRW
TWS
TAS
TAH
TIS
TIH
TON
TOF
TLW
TLS
TLH
TLZ
有效的写选通脉冲 WR 的宽度
有效的读选通脉冲 RD 的宽度
读选通或写选通脉冲的间隔宽度
RD 或 WR 前的地址输入建立时间
RD 或 WR 后的地址输入保持时间
写选通 WR 前的数据输入建立时间
写选通 WR 后的数据输入保持时间
读选通 RD 有效到数据输出有效
读选通 RD 无效到数据输出无效
有效的地址锁存脉冲 ALE 的宽度
地址锁存 ALE 前的地址输入建立时间
地址锁存 ALE 后的地址输入保持时间
复用地址输出无效到读选通 RD 有效
40
40
60
5
(60)
(60)
(90)
(8)
3
0
3
18 (30)
6 (9)
5 (8)
3
0
25 (40)
20 (35)
nS
nS
nS
nS
nS
nS
nS
nS
nS
nS
nS
nS
nS
CH432 中文手册(一)
12
8.5. SPI 串口时序(测试条件:TA=25℃,VCC=5V,括号中参数 VCC=3.3V,参考上面附图)
名称
TSS
TSH
TNS
TNH
TN
TCH
TCL
TDS
TDH
TOE
TOX
TOZ
参数说明
SCK 上升沿之前 SCS#有效的建立时间
SCK 上升沿之后 SCS#有效的保持时间
SCK 上升沿之前 SCS#无效的建立时间
SCK 上升沿之后 SCS#无效的保持时间
SCS#无效时间(SPI 操作间隔时间)
SCK 时钟的高电平时间
SCK 时钟的低电平时间
SCK 上升沿之前 SDI 输入的建立时间
SCK 上升沿之后 SDI 输入的保持时间
SCK 下降沿到 SDO 输出有效
SCK 下降沿到 SDO 输出改变
SCS#无效到 SDO 输出无效
最小值
20 (30)
20 (30)
20 (30)
20 (30)
80 (100)
20 (30)
20 (30)
10 (15)
5
2
典型值
最大值
12 (20)
8 (12)
20 (30)
12 (20)
20 (30)
单位
nS
nS
nS
nS
nS
nS
nS
nS
nS
nS
nS
nS
9、应用
9.1. 并口复用地址方式(下图)
这是基于 CH432Q 芯片的双通道异步串口的电路。CH432 与单片机的接口方式是复用地址的 8 位
并口方式,ALE 引脚用于输入复用地址的锁存使能信号,片选信号 CS1 和 CS#直接由单片机的地址信
号驱动,在 CH432 内部进行简单的地址译码,图中 CH432 芯片的片选地址为 8000H-0BFFFH。
图中 CH432 的两个串口合用了 INT#中断输出引脚,如果需要使两个串口的中断完全独立,单片
机可以连接 CH432 芯片的 INT0 和 INT1 两个引脚(这两个中断输出是高电平有效,可以用于查询)。
晶体 X2 和电容 C3 及 C4 用于时钟振荡电路,X2 的频率可以根据实际需要的最大通讯波特率进行
选择,为减小功耗和电磁辐射,建议为晶体 X2 优先选择较低的频率,例如 7.3728MHz 晶体。
CH432 的串口和 MODEM 信号是 CMOS/TTL 电平,通过外加 75232/MAX213/ADM213/SP213 等 RS232
电平转换器可以实现双 RS232 串口。
9.2. 并口直接地址方式(下图)
CH432 中文手册(一)
13
图中 CH432Q 芯片与单片机的接口方式是直接地址的 8 位并口方式,ALE#引脚接高电平,A3-A0
引脚用于输入直接地址,片选信号 CS#由地址译码器 U5 的输出信号驱动。
9.3. SPI 方式完整串口(下图)
CH432 中文手册(一)
14
这是基于 CH432Q 芯片 SPI 接口方式的双通道异步串口的电路,图中 SPI#引脚接低电平。
9.4. SPI 方式简化串口(下图)
这是基于 CH432T 芯片的双串口电路,去掉了一些不常用的 MODEM 信号,其它功能和使用方法都
与 CH432Q 芯片的 SPI 接口方式相同。
9.5. RS485 和 IrDA 应用(下图)
图中 CH432 芯片的 HLF#引脚接低电平选择半双工通讯方式。
串口 0 的 CTS 引脚为高电平,选择 IrDA 红外线编解码方式,通过外加红外收发器 U10,用于 SIR
红外通讯。
串口 1 的 CTS1 引脚为低电平,选择半双工方式,通过外加 RS485 收发器 U9,用于 RS485 通讯。
在半双工通讯方式下,RTS 和 RTS1 引脚是高电平有效的串行数据正在发送状态指示,可以用于
RS485 等半双工通讯的收发自动切换。
很抱歉,暂时无法提供与“CH432T”相匹配的价格&库存,您可以联系我们找货
免费人工找货- 国内价格
- 1+15.56280
- 10+13.44600
- 30+12.12840
- 69+10.76760
- 国内价格
- 1+21.18151
- 10+20.39701
- 100+18.04351
- 500+17.57281