串口通信(SCI).doc_第1页
串口通信(SCI).doc_第2页
串口通信(SCI).doc_第3页
串口通信(SCI).doc_第4页
串口通信(SCI).doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

名词解释:IR: InfraRed(红外)LSB: Least Significant Bit (最低有效位)MSB: Most Significant Bit(最高有效位)特征:八个中断标志位:(1)、传送区为空(2)、传送完成(3)、接收区已满(4)、空闲接收输入(5)、接收器超出(6)、噪音错误(7)、架构错误(8)、奇偶校验错误(9)、接收唤醒(10)、发送冲突(11)、SCI寄存器:注意:SCIBDH、SCIBDL、SCICR1这3个寄存器只能在SCISR2的AMAP=0时才能进入!而SCIASR1、SCIACR1、SCIACR2这3个寄存器则只能在SCISR的AMAP=1时才能进入!1、SCI Baud Rate Registers (SCIBDH, SCIBDL)在AMAP=0的时候可写在AMAP=0的情况下,如果只有SCIBDH被写入,读取SCIBDH不会返回当前值,直到SCIBDL也被写入(在写入SCIBDH之后)注意:这两个寄存器只有在AMAP=0的情况下才能在memory map下可见IREN:0红外调制/解调不使能;1红外调制解调使能TNP1:0:此位控制是否使能narrow pluse(不知道是什么)SBR12:0:SCI 波特率设置位。当IREN=0时,SCI baud rate = SCI bus clock / (16 x SBR12:0)当IREN= 1时,SCI baud rate = SCI bus clock / (32 x SBR12:1)注意:波特率发生器在reset之后被禁止且直至TE、RE位被置一。而且,波特率发生器在(SBR12:0=0和IREN=0)|(SBR12:0=0和IREN=1)的情况下被禁止。注意:只写入SCIBDH不写入SCIBDL是无效的,因为在未写入SCIBDL之前写入SCIBDH,会将SCIBDH的值放入一个短暂储存的空间。2、SCI Control Register 1 (SCICR1)此寄存器只有在AMAP=0的时候可见LOOPS:此位用于使能loop operation(环路操作)。在loop operation下:RXD引脚不与SCI相连,发送器输出内部连接到接收输入。(要发送、接收均使能)LOOPS=0正常模式,LOOPS=1LOOP operation接收输入取决于RSRC位 不太明白!似乎是说,在loop operation模式下发送端直接接接收端SCISWAI:停止模式下SCI是否使能RSRC:接收源设置位当LOOPS=1,由RSRC位决定接收移位寄存器输入的数据源。M:数据格式模式位(决定数据是8位还是9位)M=0:1位开始位,8位数据位,1位停止位M=1:1位开始位,9位数据位,1位停止位WAKE:唤醒条件位没看ILT:空闲线类型位(ILT决定当接收端开始计算逻辑1作为空闲特征位,计算开始在起始位之后或者停止位之后,如果计算开始于起始位之后,然后一串逻辑1在停止位之前,可能导致错误识别为一个空转字符(因为空闲状态TXD会被置一);若开始于停止位之后,可避免错误的空转字符识别,但需要适当的同步传送)不是太明!ILT=0,空闲特征位计算开始在起始位之后ITLl=1,空闲特征位计算开始在停止位之后PE:奇偶校验使能位PE=0,奇偶校验不使能;PE=1,奇偶校验使能PT:奇偶校验类型位PT=0,偶校验;PT=1奇校验3、SCI Alternative Status Register 1 (SCIASR1)此寄存器只有在AMAP=1时可见RXEDGIF:接收输入有效边缘电平中断标志位。RXEDGIF生效条件:如果有效边缘电平(下降沿需设置PXPOL=0,上升沿需设置PXPOL=1PXPOL在SCISR2)寄存器上)发生于RXD输入引脚上,写入1对RXEDGIF位清零!RXEDGIF=0,没有有效接收在接收输入产生中断RXEDGIF=1,有BERRV:位错误值判断位。此位反映RXD输入的无码情况(当位错误检测线路使能和一个错误接收电平发生时)。BERRV=0,采样到一个低电平,但期望值为高电平BERRV=1,采样到一个高电平,但期望值为低电平BERRIF:位错误中断标志位。当错误检测线路使能,并且RXD输入的采样值与发送值不匹配的时候此位生效。当BERRIE=1,且发生上诉情况,一个中断会被产生。写入1,清零BERRIF=0,数据正常;BERRIF=1,数据出错(再去看BERRV就能知道原本的电平是什么)BKDIF:打断探测中断位。当打断检测电路使能,而且接收到一个打断信号时,此位生效。如果BKDIE=1且满足上诉情况,一个中断会被产生,写入1,清零4、SCI Alternative Control Register 1 (SCIACR1)RSEDGIE:接收输入有效边缘中断使能位。此位使能接收输入有效边缘电平中断位=1,RXEDGIF中断使能;=0,RXEDGIF中断不使能BERRIE:位错误中断使能位。用于使能BERRIFBKDIE:打断检测中断使能位。用于使能BKDIF5、SCI Alternative Control Register 2 (SCIACR2)此寄存器需要在AMAP=1的时候才可见BERRM1:0:位错误模式。此处具体不明白,到时要看后面解释!BKDFE:使能打断检测电路BKDFE=0,电路禁止;BKDFE=1,电路开启6、SCI Control Register 2 (SCICR2)读写无限制TIE:发送端中断使能位,此位使能发送端寄存器为空的中断标志位TDRE。TIE=0,TDRE中断请求禁止;TIE=1,TDRE中断请求使能TCIE:传送完成中断使能位。此位使能发送完成标志位TCTCIE=0,TC中断请求禁止;TCIE=1,TC中断请求使能RIE:接收已满中断使能位。RIE=0,RDRF和OR中断请求禁止;RIE=1,RDRF和OR中断请求使能ILIE:空闲线中断使能位。此位使能空闲线标志位IDLEILIE=0,IDLE中断禁止;ILIE=1,IDLE中断使能TE:发送允许位。TE=0,发送禁止;TE=1,发送使能RE:接收允许位。RE=0,接收禁止;RE=1,接收使能RWU:接收唤醒位。没仔细看!SBK:发送打断位。没仔细看!7、SCI Status Register 1 (SCISR1)标志位的清除手续要求:状态寄存器被读取跟随着1个读取或者一个写入到SCI数据寄存器随时可读,但不可写!TDRE:发送数据寄存器为空标志位。当发送移位寄存器从SCI数据寄存器中接收到一字节的数据内容时,TDRE置一。当TDRE=1,发送数据寄存器(SCIDRH/L)为空,并可以接收一个新的发送值。清除TDRE位必须通过读取SCI状态寄存器(SCISR1),并且写入SCI数据到SCIDRL!TDRE=0,没有字节传送到发送移位寄存器TDRE=1,字节传送到发送移位寄存器,发送数据寄存器为空TC:发送完成标志位。当有一个传送正在进行,或者当一个序文或打断特征被载入时TC被置低。当TDRE标志位被置一且没有数据、序文、打断标志正在被传送时,TC被置高。当TC被置一,TXD引脚变为空闲状态(逻辑1),清除TC可以通过读SCI状态寄存器1(SCISR1),然后写入SCI数据到SCIDRL。当数据、序文、或打断信号准备发送的时候TC被自动清除。TC=0,正在传送数据;TC=1,没有传送数据RDRF:接收数据寄存器已满标志位。当数据从接收移位寄存器传送到SCI数据寄存器时RDRF置一。可以通过读SCI状态寄存器1(SCISR1),然后读取SCI数据寄存器的低位(SCIDRL)。RDRF=0,没有可用数据在SCI数据寄存器中RDRF=1,接收数据可用存在于SCI数据寄存器IDLE:空闲线标志位。当10个连续的逻辑1(M=0) 或 11个连续逻辑1(M=1)出现在接收输入时,IDLE被置一(因为当TXD空闲时,处于高电平状态)。一旦IDLE标志位被清除,在逻辑上,RDRF必然会比IDLE更先置一(因为既然不空闲,那一定是先接收完全,再进入空闲状态!)。可以通过读SCI状态寄存1(SCISR1),然后读取SCI数据低位寄存器(SCIDRL)来清除IDLE标志位。注意:当RWU位被置一,空闲状态不会将IDLE标志位置一。OR:超时标志位。当软件在下一个数据发送到移位寄存器之前读取SCI数据寄存器失败(即读取本次数据失败,下个数据来临)OR被置一。OR位会在第二个数据的停止位被完全接收的时候立即置一!在移位寄存器中的数据会丢失,但已经存在于SCI数据寄存器中的数据不会受到影响。清除OR位可以通过读取SCI状态寄存器1(SCISR1),然后读取SCI数据低位寄存器(SCIDRL)OR=0,没有超时现象;OR=1,超时注意:当RDRF被清除之后,OR标志位可能会回读到置一的状态,如果下列序列的事件发生的话,就有可能这样了:1、 第一帧数据被接收后,读取状态寄存器SCISR1(返回RDRF置位,OR清零)2、 接收第二帧数据但没有读取第一帧在数据寄存器的数据(第二帧数据没有被接收,OR位被置位)3、 读取数据寄存器SCIDRL(返回第一帧数据并清除RDRF)4、 读取状态寄存器SCISR1(返回RDRF清除,OR置位)NF:噪音标志位。当SCI检测到噪音存在于接收输入端的时候NF被置位。NF与RDRF标志位在同一个时钟周期被置位,但不与overrun同时置位。清除NF可以通过读取SCI状态寄存器1(SCISR1),然后读取SCI数据低位寄存器(SCIDRL)。NF=0,没有噪音;NF=1,有噪音FE:帧错误标志位。当一个逻辑0被作为停止位时,FE置一。FE与RDRF标志位在同一个时钟周期被置位,但不与overrun同时置位。FE禁止下一个数据进入直到FE被清除。清除FE可以通过读取SCI状态寄存器1(SCRSR1),然后读取SCI数据低位寄存器(SCIDRL)。FE=0,没有帧错误;FE=1,帧错误PF:奇偶校验标志位。当奇偶校验使能位PE=1、接收到的数据与设定的PT(设定奇偶校验极性)不相同。PF与RDRF标志位在同一个时钟周期被置位,但不与overrun同时置位。清除PF可以通过读取SCI状态寄存器1(SCISR1),然后读取SCI数据低位寄存器(SCIDRL)。PF=0,奇偶校验成功;PF=1,不成功8、SCI Status Register 2 (SCISR2)读写无限制AMAP:此位决定memory map中哪个寄存器看见。0 The registers labelled SCIBDH (0x0000),SCIBDL (0x0001), SCICR1 (0x0002) are accessible1 The registers labelled SCIASR1 (0x0000),SCIACR1 (0x0001), SCIACR2 (0x00002) are accessibleTXPOL:发送极性位。此位控制传送数据的极性。在非归零码的格式下,电平1由一段标记代表,电平0由一段正常的极性代表。而非归零码下的反向极性与此相反。在红外格式下,电平0由一个短暂的高电平脉冲(存在于在一位时间的中间位置即中间处一个脉冲),剩余空闲的低为电平1,此为正常极性下的情况。而红外格式的反向极性下,电平0为一小段低脉冲,电平1为高。TXPOL=0,正常极性;TXPOL=1,反向极性RXPOL:接收极性位。与上面相同BRK13:打断传送特征长度。此位决定发送打断特征位为10、11位,还是

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论