网站建设 会议纪要,如何做网站维护 找关键词,上海网站建设免,小雨免费主机SJXX串口扩展芯片1 概述SJ000是一款具备I2C总线/SPI总线/UART接口的四通道异步收发器件#xff0c;通过模式选择使得该器件工作于以上任何一种主接口模式下。器件的四个通道UART可提供高达2Mbps的数据率#xff0c;低功耗模式和睡眠电流。每个通道含有一个接收器和一个发送器…SJXX串口扩展芯片1 概述SJ000是一款具备I2C总线/SPI总线/UART接口的四通道异步收发器件通过模式选择使得该器件工作于以上任何一种主接口模式下。器件的四个通道UART可提供高达2Mbps的数据率低功耗模式和睡眠电流。每个通道含有一个接收器和一个发送器并带有64字节发送/接收FIFO通道波特率、字长、校验格式可独立设置也可以独立设置IrDA红外通信、RS-485自动收发控制、9位网络地址自动识别、软件/硬件自动流量控制、广播接收等。器件还带有可编程中断功能实现与主机的信息交互。2 特征2.1 通用特性a 3.3V工作电压b 主接口可选择为I2C总线、SPI接口或UART接口c 子接口为全双工四通道UARTd 子接口发送器带有64字节发送FIFOe 子接口接收器带有64字节接收FIFO存储有状态标志及数据f 中断方式时可编程的发送和接收FIFO的触发阈值g 软件流/硬件流方式时编程可选的接收FIFO触发设置h 软件流/硬件流控制特性包括――可编程字Xon/Xoff――可编程的自动RTS和自动CTSi 支持自动/手动RS-485自动网络地址检测j 通过RTS信号的RS-485驱动器方向控制k RS-485驱动器方向极性可控制l 内置IrDA编码器和译码器接口m 可编程的波特率产生器n 可编程的软件/硬件睡眠模式控制o Line break的产生和检测p 内部回送模式q 系统中断控制r 红外功能s 符合绿色环保无铅封装2.2 I2 主接口特性a 400kbit/s最大速率b 仅为从机模式c 总线噪声滤波2.3 SPI主接口特性a 最高速率为5Mbit/sb 仅为从机模式c 16位SPI模式02.4 UART主接口特性a 主接口为标准的UART串口无需其它地址信号、控制信号线b 可编程波特率设置最高速度可以达到2M bit/sc 可选择的奇校验偶校验和无校验模式d UART主接口可以通过引脚设置为红外模式e UART主接口可以通过引脚选择是否采用转义字符模式2.5 UART子接口特性a 每个子串口为全双工每个子串口可以通过软件开启/关闭b 每个子串口波特率可以独立设置c 每个子串口可以软件设置为是否接收数据广播d 每个子串口状态查询功能e 每个子串口提供可编程的串行接口特性包括――8或9位字符长度――奇校验、偶校验、强制校验、无奇偶校验的发生和检测――1或2个停止位产生和检测――校验错误、帧错误及溢出错误检测f FIFO特性――每个子串口具备独立的64级发送FIFO发送FIFO具备4级可编程触发点――每个子串口具备独立的64级接收FIFO接收FIFO具备4级可编程触发点――增强功能下发送/接收FIFO触发点可独立编程为4NN1、2…..15――软件FIFO使能和清空――FIFO状态和计数器输出g 流量控制特性――支持RTS、CTS的硬件自动流量控制――支持XON/XOFF的软件自动流量控制――可编程XON/XOFF字符自动发送/识别h RS-485特性――RTS控制的自动RS-485收发控制且RTS极性可控制――RS-485网络地址自动识别功能i 错误检测特性――支持奇偶校验错数据帧错误及溢出错误检测――支持起始位错误检测j Line break的产生和检测k 中断特性――接收/发送FIFO中断――接收错误中断――软件/硬件流量控制中断――网络地址中断――超时中断――各中断特性可软件开启/关闭l 内置IrDA红外收发编解码器2.6 应用领域a 多串口服务器/多串口卡b 工业/自动化现场RS-485控制c 通过CDMA/GPRS MODEM的无线数据传输d 车载信息平台/车载GPS定位系统e 远传自动抄表AMR系统f POS/税控POS/金融机具g DSP/嵌入式系统3 订购信息 器件型号封装类型型号说明SJ214SOP20封装体尺寸12.8mm X 7.5mm引脚间距1.27mmSJ224SJ234SJ304QFN24封装体尺寸4mm X 4mm引脚间距0.5mmSJ000QFN40封装体尺寸6mm X 6mm引脚间距0.5mm 器件型号接口特性说明主接口子接口SJ214UARTUARTUART主接口无硬件流量控制端口SJ224SPIUARTSPI主接口无硬件流量控制端口SJ234IICUARTIIC主接口无硬件流量控制端口SJ304UART/SPI/IICUART三种主接口一个子口带硬件控制端口SJ000UART/SPI/IICUART三种主接口四个子口带硬件控制端口4 封装及引脚功能说明SJ000采用的封装如下图所示。 该芯片的各引脚功能描述见表15 功能概述系统的主要功能框图和结构框图分别如下图所示。SJ000实现I2C总线、SPI接口或UART接口与四个子UART之间的数据收发功能主接口可以通过I2C/SPI/UART的方式将数据写入的子UART通过TX端口串行发送出去也可以将子UART的RX串行接收的数据通过I2C/SPI/UART的方式送给外部单片机。SJ000可以设置为FIFO模式或非FIFO模式通过缓冲接收/发送的字符降低主机过多的软件开销。接收和发送FIFO都可存储多达64字节包括接收器FIFO的每字符4个附加状态位的数据并且具有可以选择或者可以编程设置的触发阈值。SJ000具有可选择的软件流和硬件流控制这两种机制都可以通过自动控制串行数据流来减小软件的开销和提高系统的效率。硬件流使用RTSn管脚输出和CTSn管脚输入软件流使用可编程的Xon和Xoff字。SJ000具有可编程波特率发生器它可通过改变分频比实现波特率的切换。5.1 复位与上、下电SJ000上电完成后与其相连接的端口方可允许输入高电平逻辑SJ000通过RSTN端进行全芯片复位复位电平为低电平。5.2 时钟选择通过CLKSEL端可选择使用晶振时钟或外部输入的时钟EXTCLK。CLKSEL端为低电平时使用晶振时钟CLKSEL端为高电平时使用外部时钟EXTCLKCLKSEL带下拉电阻悬空时选择使用晶振时钟。5.3 中断控制当IRQ引脚指示有中断时可以通过读取全局中断寄存器GIR以判断当前中断的类型然后去读取相应的中断状态寄存器以确定当前的中断源。每个子串口都有独立的中断系统包括超时中断、FIFO数据错误中断接收地址中断RS-485模式XOFF发送中断RTS中断CTS中断发送FIFO触发点中断接收FIFO触发点中断。当任意一个中断使能后满足中断条件就会产生相应的中断。通过GCR寄存器的IFMASK控制位全局/子串口的中断状态寄存器有两种模式1) IFMASK1中断状态位的值 中断状态位使能信号 内部状态2) IFMASK0中断状态位的值 内部状态5.3.1 超时中断芯片进入超时的条件为1) 接收FIFO至少有一个数据2) 子口的RX端长时间没有数据接收默认为4个字节时间长度由子串口寄存器SECTLR 的STIM控制可选4、8、16、32字节时间长度3) 母口长时间没有对接收FIFO进行读操作默认为4个字节时间长度由全局寄存器GCR的STIM控制可选4、8、16、32字节时间长度当超时中断发生时主接口进行了读FIFO操作、或子串口RX端收到数据即可清除该中断。5.3.2 FIFO数据错误中断FIFO数据错误中断表明当前接收FIFO 中有一个或以上的数据错误产生错误的条件包括OE 数据溢出错误、FE数据帧错误、PE奇偶校验错以及BI检测到Break。一旦有接收FIFO 中有出错数据将产生该中断直到接收FIFO中的所有出错数据都被读取后该中断才被清除。该中断清除后表明当前接收FIFO 中没有出错数据。5.3.3 接收地址中断该中断仅当工作在RS-485模式时产生。在RS-232模式下不会产生该中断。在自动地址识别模式下子串口接收到与其设定地址一致的地址字节时产生该中断。直到在手动地址识别模式下一旦接收到地址字节都将产生该中断。当读取中断标志寄存器SIFR被读取后该中断自动清除。5.3.4 发送XOFF中断在软件自动流量控制模式下当子口RX接收到XOFF字符时产生该中断。当读取中断标志寄存器SIFR、或接收到XON字符时该中断被清除。5.3.5 RTS中断在自动或手动硬件流量控制模式下当RTS信号从0变为1时都可以产生该中断。在自动硬件流量控制模式下当读取中断标志寄存器SIFR、或接收FIFO中的数据个数降低到设定的继续发送触发点时该中断被清除。手动硬件流量控制模式下向寄存器SECTLR 的SRTS写入0将清除该中断。5.3.6 CTS中断在自动或手动硬件流量控制模式下当CTS信号从0变为1时将产生该中断当读取中断标志寄存器SIFR后将清除该中断。5.3.7 发送FIFO触发点中断当发送FIFO中的数据个数小于设定的发送FIFO触发点时产生该中断当读取中断标志寄存器SIFR、或当发送FIFO中的数据个数大于设定的发送FIFO触发点时该中断被清除。5.3.8 接收FIFO触发点中断当接收FIFO中的数据个数大于设定的发送FIFO触发点时产生该中断。当接收FIFO中的数据个数小于设定的发送FIFO触发点时该中断被清除。5.4 广播模式操作SJ000支持子串口通道可独立配置的数据广播模式。首先通过设置全局寄存器GCR中的GBDEN位将主口的全局广播设置为使能然后设置需要接收广播数据的相应子串口通道的SCTLR的RDBEN位使得该通道可以接收数据广播。设置完成后主口发往任意通道的数据都能被设置为接收广播使能的子串口接收而未设置接收数据广播的子串口将会忽略这些数据。5.5 红外模式操作SJ000的主串口和子串口都可以设置成为红外通信模式。当SJ000的UART设置为IrDA模式时可以与符合SIR红外通信协议标准的设备通信或者直接应用于光隔离通信中。在IrDA模式下一位数据的周期缩短到普通UART一位数据的3/16小于1/16波特周期的脉冲将被作为干扰而忽略。 5.6 可编程波特率发生器SJ000的主串口和子串口采用相同的独立可编程波特率发生器。该波特率发生器产生固定十六分之一系统时钟的波特率分频因子可以通过软件设置。下表给出了在不同系统时钟频率下的串口波特率设置表其中标深色底的为复位后默认值。5.7 数据校验模式SJ000的UART能提供强制校验计算校验和无校验的数据格式通过SCONR子串口配置寄存器进行设置1) 强制校验模式SJ000支持强1校验强0校验和用户校验模式。在用户校验模式下串口的第9bit数据被bypass芯片不处理该数据。在RS-485模式下推荐使用强制校验模式在该模式下可以很方便的区分数据和地址。2) 计算校验模式SJ000支持1校验、0校验奇校验、偶校验模式。在该模式下接收和发送的数据都进行奇偶校验计算。5.8 休眠和自动唤醒SJ000支持软件/硬件休眠和自动唤醒模式在软件/硬件休眠模式下SJ000的系统时钟将停止以降低功耗。进入软件休眠的条件为1) 向GCR的IDLE位写入12) 主口SCS、MRX或SDA为空闲且空闲时间超过了TIM寄存器设置的字符长度3) 子口RX为空闲且空闲时间超过了STIM寄存器设置的字符长度4) RX FIFO为空5) TX FIFO和TX移位寄存器为空6) 没有中断等待处理在软件休眠模式下可以被主口和子串口自动唤醒1) 复位芯片时SJ000的系统时钟将会被自动唤醒进入正常收发。2) SPI主接口模式下一旦主口SCS或子串口RX有数据改变SJ000的系统时钟将会被自动唤醒进入正常收发。3) UART主接口模式下一旦主口MRX或子串口RX有数据改变SJ000的系统时钟将会被自动唤醒进入正常收发。4) I2C主接口模式下一旦子串口RX有数据改变SJ000的系统时钟将会被自动唤醒进入正常收发。在硬件休眠模式下也即控制PDN端口为低电平时芯片直接进入休眠模式PDN端口为高电平时系统时钟将会被唤醒进入正常收发。5.9 数据长度SJ000支持8位或9位数据以及1位或2位停止位模式。6 寄存器描述SJ000的寄存器按地址编号为6位地址编号地址000000111111分为全局寄存器和子串口寄存器。6.1 全局寄存器列表全局寄存器共计16个全局寄存器的地址如下表所示。 6.2.1 GCR全局控制寄存器00_0001 6.2.3 GIR全局中断寄存器00_0011 6.2.5 GXON全局XON字符寄存器01_0010 6.3 子串口寄存器列表每一个子串口寄存器共计12个其排列为C1,C0、REG[3:0]其中高两位C1,C0为子串口通道号低4位REG[3:0]为寄存器地址按低4位的寄存器地址如下表所示。 6.4 子串口寄存器描述6.4.1 SECTLR子串口扩展控制寄存器0100... 6.4.2 SESR子串口扩展状态寄存器0101... 6.4.3 SCTLR子串口控制寄存器0110... 6.4.4 SCONR子串口配置寄存器0111... 6.4.5 SFWCR子串口流量控制寄存器1000... 6.4.6 SFOCR子串口FIFO 控制寄存器1001... 6.4.7 SADR子串口自动识别地址寄存器1010... 6.4.8 SIER子串口中断使能寄存器1011... 6.4.9 SIFR子串口中断标志寄存器1100... 6.4.10 SSR子串口状态寄存器1101... 6.4.11 SFSR子串口FIFO 状态寄存器1110... 6.4.12 子串口FIFO 数据寄存器1111... 7 主接口操作7.1 SPI主接口7.1.1 SPI接口信号端口M10端口M00时选择使用SPI作为主接口SPI接口包括如下四个信号SDISPI数据输入SDOSPI数据输出SCLKSPI串行时钟SCSSPI片选从属选择。SPI 接口的操作时序如下图所示7.1.2 SPI接口操作时序SJ000 工作在SPI同步串行通信的从机模式下 支持SPI模式0 标准。为实现主机和SJ000的通信在主机端需要设置CPOL0SPI时钟极性选择位CPHA0SPI时钟相位选择位)。SJ000 SPI接口的操作时序如下图所示注意BIT15最开始发送或接受。 7.1.3 SPI总线协议描述... 7.2 I2 主接口7.2.1 I2 接口信号端口M11端口M00时选择使用I2C作为主接口I2C接口包括如下四个信号SDAI2C串行数据输入/输出SCLI2C串行时钟IA1I2C地址选MSBIA0I2C地址选LSB。本芯片I2C接口仅作为从机使用。7.2.2 I2 接口操作时序SJ000 I2C接口的操作时序如下面协议描述所示。7.2.3 I2 总线协议描述...8 子串口描述8.1 子串口使能/禁止SJ000 允许独立使能或禁止每个子串口通道。在使用中可以禁止不使用的子串口通道以降低功耗。子串口通道只有处在使能状态才能接收和发送数据。8.2 收发FIFO控制SJ000 提供了独立的64级FIFO接收和发送FIFO。接收FIFO包含额外的4个bit用于存储错误状态BI、FE、PE、校验位。相关操作通过SFOCR子串口FIFO控制寄存器进行设置。8.2.1 发送FIFO触发点操作SJ000 为每个通道提供独立的可编程发送FIFO触发点设置以产生相应的发送FIFO触发点中断。当发送FIFO触发点中断使能时发送FIFO中的数据数目小于设定的触发点时产生相应中断。8.2.2 接收FIFO触发点操作SJ000 为每个通道提供独立的可编程接收FIFO触发点设置以产生相应的接收FIFO触发点中断。当接收FIFO触发点中断使能时接收FIFO中的数据数目大于设定的触发点时产生相应中断。8.2.3 发送FIFO的使能/禁止复位后发送FIFO处于禁止状态。如果希望将数据写入发送FIFO需要首先使能发送FIFO。发送FIFO中的数据是否发送取决于相应的子通道UART是否使能。一旦相应子通道UART处于使能状态则发送FIFO中的数据将会立即发送否则发送FIFO中的数据将不会被发送直到相应的子通道被使能。8.2.4 接收FIFO的使能/禁止复位后接收FIFO处于禁止状态。如果希望接收子串口数据需要首先使能相应的子串口通道及其接收FIFO。只有相应的UART和接收FIFO使能后接收到的数据才能写入接收FIFO存储。如果子串口通道使能而接收FIFO禁止子串口能接收数据但数据将写入内部RHR而不会写入接收FIFO主口可以通过读取数据寄存器来访问该数据。8.2.5 发送FIFO清空当SFOCR中发送FIFO清空位TFCL被置1时该子通道发送FIFO中的数据将被清空发送FIFO计数器和指针都将清零。TFCL位被置1后将会在一个时钟后被硬件自动清0。8.2.6 接收FIFO清空当SFOCR中接收FIFO清空位RFCL被置1时该子通道接收FIFO中的数据将被清空接收FIFO计数器和指针都将清零。RFCL位被置1后将会在一个时钟后被硬件自动清0。8.2.7 发送FIFO计数器SJ000 用寄存器中的6位TCNT来反应当前发送FIFO中的数据数目当一个字节的数据写入发送FIFO后发送FIFO计数器自动加1当一个发送FIFO中的数据被发送后发送FIFO计数器自动减1。注意当发送FIFO计数器为63111111时如果再写入一个数据则计数器变为0000000。当发送FIFO计数器为1000001时发送一个数据之后则计数器也变为0000000。因此当发送FIFO计数器为0时表明发送FIFO满或者空在这种情况下需要结合子串口状态寄存器SSR/ SESR中的相关状态位进行判断。8.2.8 接收FIFO计数器SJ000用寄存器中的6位RCNT来反应当前接收FIFO中的数据数目当一个字节的数据写入接收FIFO后接收FIFO计数器自动加1当一个接收FIFO中的数据被读取后接收FIFO计数器自动减1。注意当接收FIFO计数器为63111111时如果再接收一个数据则计数器变为0000000。当接收FIFO计数器为1000001时读取一个数据之后则计数器也变为0000000。因此当接收FIFO计数器为0时表明接收FIFO满或者空在这种情况下需要结合子串口状态寄存器SSR/ SESR中的相关状态位进行判断。8.3 流量控制SJ000 提供硬件流量控制软件流量控制和手动流量控制三种模式可选择。硬件流量控制通过CTS和RTS引脚实现流量控制可以减少软件开销并提高系统效率。软件流量控制通过XON和XOFF可编程特殊字符实现流量控制操作。相关操作通过SFWCR子串口流量控制寄存器设置。在RS-485模式下该功能被禁止。8.3.1 触发点控制当SJ000 设置为自动软件/硬件流量控制时SFWCR中的HRTL3–HRTL0用于设置暂停发送触发点当接收FIFO中的数据个数达到暂停发送触发点时SJ000 将发出暂停发送信号以通知发送端暂停发送数据。SFWCR中的PRTL3–PRTL0用于设置继续发送触发点在暂停发送状态下主机口可以通过读取数据操作读取接收FIFO中的数据当接收FIFO中的数据个数等于设置的继续发送触发点时SJ000 将通知发送端继续发送数据。设置时需要保证暂停发送触发点大于继续发送触发点的数值。SJ000 不对该条件做自动判断。注意HRTL3–HRTL 0或PRTL3–PRTL0为0时触发点将采用RFTL或TFTL设置的触发点。8.3.2 自动软件流量控制操作当SJ000 工作在自动软件流量控制模式时子串口通道通过RX发送和TX接收XOFF和XON字符实现软件流量控制无需其它控制线。XON和XOFF字符可以通过全局寄存器中的XON和XOFF寄存器设置。在软件流量控制模式下传输的数据字节中不能出现XON和XOFF字符否则将会被作为XON和XOFF控制字符因此在软件流量控制下需要对数据中的XON和XOFF字符进行相应的转义处理。8.3.3 XON/XOFF发送操作在自动软件流量控制模式下一旦数据接收端接收FIFO中数据的个数达到设定的触发点时为防止接收FIFO溢出SJ000 将自动通过TX发送一个XOFF字符数据发送端收到该XOFF字节后发送完当前字节后即暂停数据发送。发送端暂停数据发送后接收端的主机接口读取接收FIFO中的数据以释放接收FIFO空间当接收FIFO中数据的个数减少到继续发送触发点时接收端向发送端发送一个XON字符发送端接收到该字符后将恢复数据发送。8.3.4 XON/XOFF接收操作在软件流量控制模式下SJ000 接收到数据后首先会与XOFF中的数据进行比较当接收到XOFF字符时在发送完当前字节后即暂停数据发送。数据暂停发送状态下接收到XON字符后将恢复数据发送。8.3.5 XON/XOFF可见设置在软件流量控制模式下特殊字符XON/XOFF可以通过设置SFWCR子串口流量控制寄存器XVEN位使之在主机端为可见或不可见。当设置为可见时XON和XOFF字符作为数据写入接收FIFO。当设置为不可见时XON和XOFF字符将作为控制字符不被写入接收FIFO。8.3.6 自动硬件流量控制当SJ000 的子串口工作在自动硬件流量控制模式时包含自动RTS控制和自动CTS控制。分别通过硬件自动设置RTS信号和判断CTS信号来实现硬件流量控制。典型的硬件流量控制的通过器件A的RTS连接器件B的CTS器件A的CTS连接器件B的RTS将器件A和B都设置为硬件自动流量控制模式即可实现硬件的自动流量控制。在硬件自动流量控制模式下一旦数据接收端接收FIFO中数据的个数达到设定的触发点时为防止接收FIFO溢出接收端将自动拉高RTS数据发送端的相应的CTS变高数据接收端检测到CTS变高后将发送完当前字节后即暂停数据发送。发送端暂停数据发送后接收端的主机接口读取接收FIFO中的数据以释放接收FIFO空间当接收FIFO中数据的个数减少到继续发送触发点时接收端的CTS自动变为低电平发送端相应的RTS变为低电平发送端检测到RTS为低后将恢复数据发送。...8.3.7 手动硬件流量控制当SJ000 的子串口工作在手动模式下可以通过手动写RTS寄存器SECTLR Bit2拉高或拉低RTS引脚信号。在该模式下其它的操作与硬件自动流量控制一样只是RTS由相应的寄存器控制。手动设置RTS为1可以暂停数据发送端发送数据设置RTS为0则数据发送端继续发送数据。8.4 RS-485操作SJ000 的子串口支持RS-485自动收发控制模式和自动网络地址识别模式网络地址可见设置。8.4.1 RS-485自动收发在RS-485模式下流量控制将被禁止。RTS信号用于控制RS-485收发器的自动收发控制。默认情况下只有在发送数据时RTS才为高其它情况下RTS都保持低。可以通过设置寄存器SECTLR的 Bit2改变RTS极性。SJ000 和RS-485 的收发器的连接如图...8.4.2 网络地址和自动地址识别RS-485 模式下每个UART 有一个唯一的网络地址SJ000 提供了一个8 位寄存器进行RS-485网络设置。当自动网络地址识别功能使能时SJ000 对接收到的数据进行自动识别。如果接收到的数据为数据字节或者是与SADR 中地址字节不匹配的地址字节时SJ000 忽略这些数据。如果该子串口接收到的数据为地址字节即第9bit为1表征为地址字节且与SADR中的数据匹配则SJ000 进入接收状态将该地址字节后的数据字节写入接收FIFO 中。当该子串口在数据接收状态下接收到一个地址字节且该字节与SADR不匹配时接收将被自动禁能。8.4.3 自动和手动地址识别RS-485模式下SCONR子串口配置寄存器中的AOD位为数据地址选择位。其默认值为1表明该子串口只接收地址字节而忽略数据字节。在RS-485自动地址模式下当接收到的地址与SADR的地址一致时AOD将自动变为0此时该子串口可以继续接收数据。当子串口接收到的下一个地址字节与SARD的地址不一致时AOD位将自动置1不再接收其后的数据字节。在RS-485手动地址识别模式下RS-485地址由上层软件判断AOD位需要手动设置。AOD设置为0时表明可以接收其后的所有数据当AOD设置为1时表明将忽略除了地址以外的所有数据。当接收到地址字节时SJ000 将产生中断通知MCU将收到的地址字节进行判断以决定是否设置AOD以接收其后的数据。8.4.4 网络地址可见设置当子串口设置为手动地址识别模式时RS-485网络地址总是可见。在子串口设置为自动地址识别模式时可以设置SCONR子串口配置寄存器中的AVEN位改变网络地址可见属性。当设为地址可见时接收到的网络地址进入接收FIFO否则将被忽略。9 参数指标9.1 极限工作条件...10 机械尺寸10.1 QFN40略。。。转载于:https://www.cnblogs.com/TEL18218088355/p/7196506.html