第4章 LPC2000系列ARM硬件结构(14~18)(1)
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
UnRBR
• 中断源说明
CTI中断:当接收FIFO中的有效数据少于预定的触发点数量(至少有一个字 节)时,如果在一定时间内仍然没有接收到新的数据,那将触发该中断。这个 时间为:3.5~4.5个字节所需要的时间。注:对接收FIFO的任何操作都会清零 该中断标志。 RxDn
UnRSR 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
4.14 UART(0、1)
• 中断接口
UART0和UART1的中断接口包含中断使能寄存器 (UnIER)和中断标识寄存器(UnIIR)。
UART0中断源
UART0接收单元
UART1中断源
中断
UART1接收单元 UART1发送单元 Modem模块
中断使能寄存器 UnIER 中断标志寄存器 UnIIR
4.14 UART(0、1)
• 回写模式
在Modem回写模式下,发 送器输出的串行数据在内部连接 到接收器的串行输入端。输入脚 RxD1对回写模式无影响,输出脚 TxD1保持总为1的状态。4个 Modem输入(CTS, DSR, RI和 DCD)与外部断开。此时, U1MSR的高4位分别由U1MCR的 低4位驱动。
LPC2000系列ARM硬件结构
1.LPC2000系列简介 2.引脚描述 3.存储器寻址 4.系统控制模块 5.存储器加速模块 (MAM) 6.外部存储器控制器 (EMC) 7.引脚连接模块 8. GPIO 9. 向量中断控制器 10.外部中断输入 11.定时器0和定时器1 12. SPI接口 2 13. I C接口 14. UART(0、1) 15. A/D转换器 16. 看门狗 17. 脉宽调制器(PWM) 18. 实时时钟
CTS DSR RI DCD
检测到DCD状态发生变化时,该位置位。读取U1MSR时清零。
反映输入信号CTS的补码。回写模式下该位连接U1MCR的bit1。 反映输入信号DSR的补码。回写模式下该位连接U1MCR的bit0。 反映输入信号RI的补码。回写模式下该位连接U1MCR的bit2。 反映输入信号DCD的补码。回写模式下该位连接U1MCR的bit1。
• 中断源说明
RDA中断:该中断与CTI中断并列为第二优先级。当接收的有效 数据到达接收FIFO设置寄存器(UnFCR)中设置的触发点时,RDA被 激活。当接收FIFO中的有效数据少于触发点时,RDA复位;
UnRSR
RxDn
UnIIR[0] UnIIR[3:1]
0 1
010 xxx
触发点设置=8
4.14 UART(0、1)
• UART中断示意图
UnIER bit3 RLS中断(UnIIR[3:1]=011) RDA中断(UnIIR[3:1]=010) CTI中断(UnIIR[3:1]=110) THRE中断(UnIIR[3:1]=001) Modem中断(UnIIR[3:1]=001) 注意:只有UART1才有Modem中断。 bit2 bit1 bit0
010:2a. 接收数据可用中断(RDA)
110:2b. 字符超时指示(CTI) 001:3. 发送中断(THRE) 000:4. Modem中断 注:只有UART1具有 未定义 0
3 : 1
7 : 3
保留,用户软件不要向这些位写入1。
UnIIR提供状态代码用于指示一个挂起中断的中断源和优先级。在访问 UnIIR过程中,中断被冻结。如果在访问UnIIR时产生了中断,该中断将被 记录,在下次访问UnIIR时可以读出,避免了中断的丢失。
VIC 中断控制器
ARM7TDMI 内核
4.14 UART(0、1)
• UART中断优先级
UnIER bit3 优先级 RLS中断 RDA中断 CTI中断 THRE中断 Modem中断 最高 第二 第二 第三 bit2 bit1 bit0
VIC 中断控制器
ARM7TDMI 内核
第四
注意:只有UART1才有Modem中断。
• UART发送FIFO缓冲区
• UART0、UART1各含有1 个16字节的发送FIFO缓冲 区。 • UnTHR是UARTn发送 FIFO的最高字节。 • UART的发送FIFO是一直 使能的。
UnTHR
发送FIFO
UnTSR
TXD
• UART接收模块
RXD AHB-VPB桥 A H B 总 线
UART线状态寄存器 位 功能 7 RXFE 6 TEMT 5 THRE 4 BI 3 FE 2 PE 1 OE 0 RDR
4.14 UART(0、1)
• UART波特率发生器
UART0和UART1各含有一个单独的波特率发生 器,两者的功能相同,且相互独立。
名称 UnDLL[7:0] UnDLM[7:0] 除数锁存寄存器低字节 除数锁存寄存器高字节 描述 复位值
UnIER可以控制UARTn的4个中断源。其中RBR中断使能包括两个中断, 一个是接收数据可用(RDA)中断,一个是接收超时中断(CTI)。稍后将 对各中断源作详细介绍。
4.14 UART(0、1)
• 中断标识寄存器
UnIIR 0 描述 中断挂起。1:没有挂起的中断;0:至少有一个中断被挂起。 011:1. 接收线状态中断(RLS) 中断标识。 这3位表示了对应于UARTn Rx FIFO的中断。未列出的其它组 合作为保留值。 复位值 0 0
• 应用示例
LPC2000的I/O电压为 3.3V,连接时须注意电平 的匹配。 与PC机相连时,由于PC机 串口是RS232电平,所以 连接时需要使用RS232转 换器。
TxD0 TxD0
LPC2000 RxD0
TxD0
RxD0
其它 通信设备
LPC2000
232 RxD0 电平转换
TxD0
RxD0
R XD
接收FIFO
UnFCR
UnRBR
UART FIFO控制寄存器 位 功能 7 6 [5 : 3] — 2 复位TxFIFO 1 复位RxFIFO 0 使能FIFO Rx触发点设置
4.14 UART(0、1)
• UART线状态寄存器——UnLSR
线状态寄存器(UnLSR)为只读寄存器,它提 供UARTn发送和接收模块的状态信息 。
ARM7
UnRSR
V P B 总 线
UnRBR
UARTn接收单元
接收缓冲寄存器 UnRBR
移位寄存器 UnRSR
RxDn
CPU
UnRBR 7 : 0
描述 接收缓存寄存器,它包含了接收FIFO中最早接收到的字节
复位值 未定义
• UART接收FIFO缓冲区
UnRSR
• UART0、UART1各含有1 个16字节的接收FIFO缓冲 区。 • 软件设置接收FIFO缓冲区 的触发字节。
4.14 UART(0、1)
• 中断源说明
RLS中断:该中断为最高优先级。它在UARTn发生 下面的错误时产生中断: 1、溢出错误(OE) 2、奇偶错误(PE) 3、帧错误(FE) 4、间隔中断(BI) 通过查看UnLSR[4:1]可以了解到产生该中断的错误 条件。读取UnLSR时清除该中断;
PC机串口
当使用Modem接口时,需 要一个RS232转换器将信 号转换为RS232电平后, 才能与Modem连接 。
LPC2000
TxD1 RxD1 RTS CTS RS232 DSR1 电平转换 DTR1 DCD RI1
TxD RxD RTS CTS DSR1 DTR1 DCD1 RI1
Modem
• UART发送单元
CPU AHB-VPB桥 A H B 总 线
ARM7
UnTHR
V P B 总 线
UnTSR
UARTn发送单元 发送缓冲寄存器 移位寄存器 UnTHR UnTSR
TxDn
TXD
UnTHR 7 : 0
描述
复位值 未定义
发送器保持寄存器。写入该寄存器的值保存到发送FIFO中,当该字节到达 FIFO底部时,它将被送入发送移位寄存器(UnTSR)进行发送。
DATA
UnIIR[0]
UnIIR[3:1]
0 1 xxx 110
1.移位寄存器(UnRSR)从RxDn引脚 接收串行数据后,送入接收FIFO中;
2.当接收FIFO中的有效数据少于触 发个数,但至少有一个时,如果长时 间没有数据到达,将触发CTI中断; 3.从UnRBR中读取接收FIFO中的数 据,或者有新的数据送入接收FIFO, 都将清零CTI中断;
芯片引脚
DSR CTS RI DCD DTR RTS TXD RXD
Modem接口
DSR CTS RI DCD DTR RTS TXD RXD Bit0 Bit1 Bit2 Bit3
U1MCR
4.14 UART(0、1)
• Modem状态寄存器
该寄存器为只读,它反映Modem输入信号的状态 信息。需要注意的是,Mdoem信号对UART1的操作没 有直接影响,Modem信号的操作是通过软件来实现的。
16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
接收FIFO
DATA
1.移位寄存器(UnRSR)从RxDn引脚 接收串行数据后,送入接收FIFO中; 2.当接收FIFO中的有效数据数量到 达预定的触发点时,置位RDA中断; 3.从UnRBR寄存器中读取FIFO中最 早到达的数据,当FIFO中的有效数据 小于预定触发点时,清零RDA中断;
• UART结构图
CTS DSR RI DCD MODEM Modem控制寄存器 U1MCR Modem状态寄存器 U1MSR 中断 UARTn发送单元 发送缓冲寄存器 移位寄存器 UnTHR UnTSR
TxDn
DTR RTS
UARTn波特发生器
只有UART1才有 中断使能寄存器 Modem接口
两个寄存器一起构成一个16位的 除数,决定UARTn的波特率。
未定义
这两个寄存器决定波特率时钟的频率,而波特率时钟 必须是波特率的16倍。波特率计算公式如下:
BaudRate = FPCLK / ([U0DLM,U0DLL]×16)
4.14 UART(0、1)
• Modem控制寄存器——U1MCR
位 0 1 2 功能 Delta CTS Delta DSR 后沿 RI 功能描述 检测到CTS状态发生变化时,该位置位。读取U1MSR时清零。 检测到DSR状态发生变化时,该位置位。读取U1MSR时清零。 检测到RI状态发生变化时,该位置位。读取U1MSR时清零。
3
4 5 6 7
Delta DCD
UART0发送单元
4.14 UART(0、1)
• 中断使能寄存器
UnIER 0 1 2 3 7 : 4 描述 RBR中断使能。1:使能RDA中断;0:禁止RDA中断。 THRE中断使能。1:使能THRE中断;0:禁止THRE中断。 Rx线状态中断使能。1:使能Rx线状态中断;0:禁止Rx线状态中断; 该中断状态可从UnLSR[4:1]读出。 Modem中断使能。 1:禁止Modem中断;0:禁止Rx线状态中断; 该中断状态可从U1MSR[3:0]读取。注:只有UART1具有。 保留,用户软件不要向这些位写入1。 复位值 0 0 0 0 未定义
该寄存器使能Modem的回写模式,并控制Modem 的输出信号。
位 0 1 3 : 2 4 7 : 5 功能 DTR控制 RTS控制 保留 回写模 式 保留 功能描述 选择Modem输出引脚DTR。该位在回写模式激活时读出为0。 选择Modem输出引脚RTS。该位在回写模式激活时读出为0。 用户软件不要向该位写入1 0:禁止modem回写模式 1:使能modem回写模式 modem回写模式提供了一个执行回写测试的诊断机制。 用户软件不要向该位写入1
4.14 UART(0、1)
• 特性
LPC2000系列微控制器具有两个功能强大的 UART,其特性如下: 16字节接收FIFO和16字节发送FIFO; 寄存器位置符合16C550工业标准; 接收FIFO触发点可设置为1、4、8或14字节; 内置波特率发生器; UART1含有标准调制解调器接口信号 。
UnIER 中断标志寄存器 UnIIR UARTn高速缓存寄存器 UnSCR
V P B 总 线
除数锁存寄存器 UnDLL、UnDLM
UARTn接收单元
接收缓冲寄存器 UnRBR 移位寄存器 UnRSR
RxDn
FIFO控制寄存器(UnFCR) UARTn控制寄存器(UnLCR) UARTn状态寄存器(UnLSR)
• 中断源说明
CTI中断:当接收FIFO中的有效数据少于预定的触发点数量(至少有一个字 节)时,如果在一定时间内仍然没有接收到新的数据,那将触发该中断。这个 时间为:3.5~4.5个字节所需要的时间。注:对接收FIFO的任何操作都会清零 该中断标志。 RxDn
UnRSR 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
4.14 UART(0、1)
• 中断接口
UART0和UART1的中断接口包含中断使能寄存器 (UnIER)和中断标识寄存器(UnIIR)。
UART0中断源
UART0接收单元
UART1中断源
中断
UART1接收单元 UART1发送单元 Modem模块
中断使能寄存器 UnIER 中断标志寄存器 UnIIR
4.14 UART(0、1)
• 回写模式
在Modem回写模式下,发 送器输出的串行数据在内部连接 到接收器的串行输入端。输入脚 RxD1对回写模式无影响,输出脚 TxD1保持总为1的状态。4个 Modem输入(CTS, DSR, RI和 DCD)与外部断开。此时, U1MSR的高4位分别由U1MCR的 低4位驱动。
LPC2000系列ARM硬件结构
1.LPC2000系列简介 2.引脚描述 3.存储器寻址 4.系统控制模块 5.存储器加速模块 (MAM) 6.外部存储器控制器 (EMC) 7.引脚连接模块 8. GPIO 9. 向量中断控制器 10.外部中断输入 11.定时器0和定时器1 12. SPI接口 2 13. I C接口 14. UART(0、1) 15. A/D转换器 16. 看门狗 17. 脉宽调制器(PWM) 18. 实时时钟
CTS DSR RI DCD
检测到DCD状态发生变化时,该位置位。读取U1MSR时清零。
反映输入信号CTS的补码。回写模式下该位连接U1MCR的bit1。 反映输入信号DSR的补码。回写模式下该位连接U1MCR的bit0。 反映输入信号RI的补码。回写模式下该位连接U1MCR的bit2。 反映输入信号DCD的补码。回写模式下该位连接U1MCR的bit1。
• 中断源说明
RDA中断:该中断与CTI中断并列为第二优先级。当接收的有效 数据到达接收FIFO设置寄存器(UnFCR)中设置的触发点时,RDA被 激活。当接收FIFO中的有效数据少于触发点时,RDA复位;
UnRSR
RxDn
UnIIR[0] UnIIR[3:1]
0 1
010 xxx
触发点设置=8
4.14 UART(0、1)
• UART中断示意图
UnIER bit3 RLS中断(UnIIR[3:1]=011) RDA中断(UnIIR[3:1]=010) CTI中断(UnIIR[3:1]=110) THRE中断(UnIIR[3:1]=001) Modem中断(UnIIR[3:1]=001) 注意:只有UART1才有Modem中断。 bit2 bit1 bit0
010:2a. 接收数据可用中断(RDA)
110:2b. 字符超时指示(CTI) 001:3. 发送中断(THRE) 000:4. Modem中断 注:只有UART1具有 未定义 0
3 : 1
7 : 3
保留,用户软件不要向这些位写入1。
UnIIR提供状态代码用于指示一个挂起中断的中断源和优先级。在访问 UnIIR过程中,中断被冻结。如果在访问UnIIR时产生了中断,该中断将被 记录,在下次访问UnIIR时可以读出,避免了中断的丢失。
VIC 中断控制器
ARM7TDMI 内核
4.14 UART(0、1)
• UART中断优先级
UnIER bit3 优先级 RLS中断 RDA中断 CTI中断 THRE中断 Modem中断 最高 第二 第二 第三 bit2 bit1 bit0
VIC 中断控制器
ARM7TDMI 内核
第四
注意:只有UART1才有Modem中断。
• UART发送FIFO缓冲区
• UART0、UART1各含有1 个16字节的发送FIFO缓冲 区。 • UnTHR是UARTn发送 FIFO的最高字节。 • UART的发送FIFO是一直 使能的。
UnTHR
发送FIFO
UnTSR
TXD
• UART接收模块
RXD AHB-VPB桥 A H B 总 线
UART线状态寄存器 位 功能 7 RXFE 6 TEMT 5 THRE 4 BI 3 FE 2 PE 1 OE 0 RDR
4.14 UART(0、1)
• UART波特率发生器
UART0和UART1各含有一个单独的波特率发生 器,两者的功能相同,且相互独立。
名称 UnDLL[7:0] UnDLM[7:0] 除数锁存寄存器低字节 除数锁存寄存器高字节 描述 复位值
UnIER可以控制UARTn的4个中断源。其中RBR中断使能包括两个中断, 一个是接收数据可用(RDA)中断,一个是接收超时中断(CTI)。稍后将 对各中断源作详细介绍。
4.14 UART(0、1)
• 中断标识寄存器
UnIIR 0 描述 中断挂起。1:没有挂起的中断;0:至少有一个中断被挂起。 011:1. 接收线状态中断(RLS) 中断标识。 这3位表示了对应于UARTn Rx FIFO的中断。未列出的其它组 合作为保留值。 复位值 0 0
• 应用示例
LPC2000的I/O电压为 3.3V,连接时须注意电平 的匹配。 与PC机相连时,由于PC机 串口是RS232电平,所以 连接时需要使用RS232转 换器。
TxD0 TxD0
LPC2000 RxD0
TxD0
RxD0
其它 通信设备
LPC2000
232 RxD0 电平转换
TxD0
RxD0
R XD
接收FIFO
UnFCR
UnRBR
UART FIFO控制寄存器 位 功能 7 6 [5 : 3] — 2 复位TxFIFO 1 复位RxFIFO 0 使能FIFO Rx触发点设置
4.14 UART(0、1)
• UART线状态寄存器——UnLSR
线状态寄存器(UnLSR)为只读寄存器,它提 供UARTn发送和接收模块的状态信息 。
ARM7
UnRSR
V P B 总 线
UnRBR
UARTn接收单元
接收缓冲寄存器 UnRBR
移位寄存器 UnRSR
RxDn
CPU
UnRBR 7 : 0
描述 接收缓存寄存器,它包含了接收FIFO中最早接收到的字节
复位值 未定义
• UART接收FIFO缓冲区
UnRSR
• UART0、UART1各含有1 个16字节的接收FIFO缓冲 区。 • 软件设置接收FIFO缓冲区 的触发字节。
4.14 UART(0、1)
• 中断源说明
RLS中断:该中断为最高优先级。它在UARTn发生 下面的错误时产生中断: 1、溢出错误(OE) 2、奇偶错误(PE) 3、帧错误(FE) 4、间隔中断(BI) 通过查看UnLSR[4:1]可以了解到产生该中断的错误 条件。读取UnLSR时清除该中断;
PC机串口
当使用Modem接口时,需 要一个RS232转换器将信 号转换为RS232电平后, 才能与Modem连接 。
LPC2000
TxD1 RxD1 RTS CTS RS232 DSR1 电平转换 DTR1 DCD RI1
TxD RxD RTS CTS DSR1 DTR1 DCD1 RI1
Modem
• UART发送单元
CPU AHB-VPB桥 A H B 总 线
ARM7
UnTHR
V P B 总 线
UnTSR
UARTn发送单元 发送缓冲寄存器 移位寄存器 UnTHR UnTSR
TxDn
TXD
UnTHR 7 : 0
描述
复位值 未定义
发送器保持寄存器。写入该寄存器的值保存到发送FIFO中,当该字节到达 FIFO底部时,它将被送入发送移位寄存器(UnTSR)进行发送。
DATA
UnIIR[0]
UnIIR[3:1]
0 1 xxx 110
1.移位寄存器(UnRSR)从RxDn引脚 接收串行数据后,送入接收FIFO中;
2.当接收FIFO中的有效数据少于触 发个数,但至少有一个时,如果长时 间没有数据到达,将触发CTI中断; 3.从UnRBR中读取接收FIFO中的数 据,或者有新的数据送入接收FIFO, 都将清零CTI中断;
芯片引脚
DSR CTS RI DCD DTR RTS TXD RXD
Modem接口
DSR CTS RI DCD DTR RTS TXD RXD Bit0 Bit1 Bit2 Bit3
U1MCR
4.14 UART(0、1)
• Modem状态寄存器
该寄存器为只读,它反映Modem输入信号的状态 信息。需要注意的是,Mdoem信号对UART1的操作没 有直接影响,Modem信号的操作是通过软件来实现的。
16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
接收FIFO
DATA
1.移位寄存器(UnRSR)从RxDn引脚 接收串行数据后,送入接收FIFO中; 2.当接收FIFO中的有效数据数量到 达预定的触发点时,置位RDA中断; 3.从UnRBR寄存器中读取FIFO中最 早到达的数据,当FIFO中的有效数据 小于预定触发点时,清零RDA中断;
• UART结构图
CTS DSR RI DCD MODEM Modem控制寄存器 U1MCR Modem状态寄存器 U1MSR 中断 UARTn发送单元 发送缓冲寄存器 移位寄存器 UnTHR UnTSR
TxDn
DTR RTS
UARTn波特发生器
只有UART1才有 中断使能寄存器 Modem接口
两个寄存器一起构成一个16位的 除数,决定UARTn的波特率。
未定义
这两个寄存器决定波特率时钟的频率,而波特率时钟 必须是波特率的16倍。波特率计算公式如下:
BaudRate = FPCLK / ([U0DLM,U0DLL]×16)
4.14 UART(0、1)
• Modem控制寄存器——U1MCR
位 0 1 2 功能 Delta CTS Delta DSR 后沿 RI 功能描述 检测到CTS状态发生变化时,该位置位。读取U1MSR时清零。 检测到DSR状态发生变化时,该位置位。读取U1MSR时清零。 检测到RI状态发生变化时,该位置位。读取U1MSR时清零。
3
4 5 6 7
Delta DCD
UART0发送单元
4.14 UART(0、1)
• 中断使能寄存器
UnIER 0 1 2 3 7 : 4 描述 RBR中断使能。1:使能RDA中断;0:禁止RDA中断。 THRE中断使能。1:使能THRE中断;0:禁止THRE中断。 Rx线状态中断使能。1:使能Rx线状态中断;0:禁止Rx线状态中断; 该中断状态可从UnLSR[4:1]读出。 Modem中断使能。 1:禁止Modem中断;0:禁止Rx线状态中断; 该中断状态可从U1MSR[3:0]读取。注:只有UART1具有。 保留,用户软件不要向这些位写入1。 复位值 0 0 0 0 未定义
该寄存器使能Modem的回写模式,并控制Modem 的输出信号。
位 0 1 3 : 2 4 7 : 5 功能 DTR控制 RTS控制 保留 回写模 式 保留 功能描述 选择Modem输出引脚DTR。该位在回写模式激活时读出为0。 选择Modem输出引脚RTS。该位在回写模式激活时读出为0。 用户软件不要向该位写入1 0:禁止modem回写模式 1:使能modem回写模式 modem回写模式提供了一个执行回写测试的诊断机制。 用户软件不要向该位写入1
4.14 UART(0、1)
• 特性
LPC2000系列微控制器具有两个功能强大的 UART,其特性如下: 16字节接收FIFO和16字节发送FIFO; 寄存器位置符合16C550工业标准; 接收FIFO触发点可设置为1、4、8或14字节; 内置波特率发生器; UART1含有标准调制解调器接口信号 。
UnIER 中断标志寄存器 UnIIR UARTn高速缓存寄存器 UnSCR
V P B 总 线
除数锁存寄存器 UnDLL、UnDLM
UARTn接收单元
接收缓冲寄存器 UnRBR 移位寄存器 UnRSR
RxDn
FIFO控制寄存器(UnFCR) UARTn控制寄存器(UnLCR) UARTn状态寄存器(UnLSR)