[转载]DSP28_Sci.h头文件说明(一)

时间:2024-05-22 18:20:16

SCI即串行通信接口,是一个双线的异步串口,即具有接收和发送两根信号线的异步串口,一般可以看作是UART(通用异步接收/发送装置)。F2812的SCI模块支持DSP与采用NRZ(non-return-to-zero 不归零)标准格式的异步外围设备之间进行数字通信。

F2812内部有两个单独的SCI模块,SCIA与SCIB,每一个SCI模块都各有一个接收器和发送器。SCI的接收器和发送器各具有一个16级深度的FIFO队列,它们还都有自己独立的使能位和中断位,可以在半双工通信中进行独立的操作,或者在全双工通信中同时进行操作。需要注意的是,SCIA的13个寄存器都是8位的。

表1. SCI寄存器地址映射表

[转载]DSP28_Sci.h头文件说明(一)

1. SCICCR
[转载]DSP28_Sci.h头文件说明(一)

Bit(s) Name Description
7 STOP BITS SCI停止位个数,该位决定了发送停止位的个数,接收器仅对一个停止位进行检查。
    0   1位停止位
    1   2位停止位
6 EVEN/ODD PARITY 奇偶校验设置位,奇偶校验是否有效取决于SCICCR(5)的设置
    0   奇校验
    1   偶校验
5 PARITY ENABLE SCI奇偶校验使能位,如果SCI处于address-bit
multiprocesser模式(SCICCR(3)置1),地址位也包含在奇偶计算中,对于少于位的字符,剩余的无用位排除在奇偶校验之外。
    0   禁用奇偶校验
    1   使能奇偶校验  
4 LOOPBACK ENA 测试模式使能位,使能此位,Rx与Tx在内部连接在一起。
    0   禁止此模式
    1   使能此模式
3 ADDR/IDLE MODE SCI多机模式控制位,多机模式与普通模式不同,需要使能SLEEP与TXWAKE功能。多机模式增加了一个地址位到数据帧中,普通模式(空闲模式)无此位,与典型的RS232通信兼容。
    0   空闲模式
    1   多机模式
2-0 SCICHAR2-0 字符长度控制位,1-8位长度可选,不够8位时,SCIRXBUF和SCIRXEMU寄存器中的数据是右对齐的,且SCIRXBUF中的无用位填0,SCITXBUF中的无用位不用填0。
    000     1
    001     2
    010     3
    011     4
    100     5
    101     6
    110     7
    111     8


2. SCICTL1
[转载]DSP28_Sci.h头文件说明(一)

Bit(s) Name Description
7 Reserved 读为0,写无效
6 RX ERR INT ENA SCI接收错误中断使能位
    0   禁用此中断
    1   使能此中断
5 SW RESET 软件复位,写0,复位SCI状态机与操作标志(SCICTL2与SCIRXST),不影响其余配置位。直至写1,所有起作用的逻辑均保持确定的复位状态,系统复位后,此位写1,才可使能SCI,当检测到一个接收间断时(BRKDT,SCIRXST(5)),清除该位。SW RESET影响的标志位如下

Value After
SW  RESET     SCI Flag                    Register Bit
    1              TXRDY                SCICTL2, bit 7
    1              TX EMPTY           SCICTL2, bit 6
    0              RXWAKE              SCIRXST, bit 1
    0              PE                      SCIRXST, bit 2
    0              OE                     SCIRXST, bit 3
    0              FE                      SCIRXST, bit 4
    0              BRKDT