云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 2812的SCI模块 - 图文

2812的SCI模块 - 图文

  • 62 次阅读
  • 3 次下载
  • 2025/5/30 15:56:14

所谓的波特率就是指每秒所能发送的位数。2812的每个SCI都具有两个8位的波特率寄存器,SCIHBAUD和SCILBAUD,通过编程,可以实现达到64K不同的速率。

波特率的计算公式:

( 1 ≤ BRR ≤65535 )

( BRR=0 )

BRR=波特率选择寄存器中的值,从十进制转换成十六进制后,高8位赋值给SCIHBAUD,低8位赋值给SCILBAUD

LSPCLK=37.5M时,SCI常见的波特率

在进行通信的时候,双方都必须以相同的数据格式和波特率进行通信,否则通信会失败。例如2812和PC机上的串口调试软件进行通信时,2812采用了什么样的数据格式和波特率,那么串口调试软件也需要设定成相同的数据格式和波特率,反之也一样。

六. SCI发送和接收数据的机制

通常使用的有两种方式:一种是查询方式,另一种是中断方式。

查询方式:就是程序不断去查询状态标志位,看看SCI是不是已经做好了数据发送或者接收的准备。当数据发送时,需要查询的是位于SCI控制寄存器2

(SCICTL2)的第7为TXREADY,发送器缓冲寄存器就绪标志。当这个位为1的时候,表明发送数据缓冲寄存器SCITXBUF已经准备好开始接收并发送下一个数据了。当数据写入SCITXBUF,TXREADY自动会清零,如果TXENA使能了,发送移

位寄存器TXSHF就会把SCITXBUF里面的数据发送出去。当数据接收时,需要查询的是SCI接收状态寄存器(SCIRXST)中的RXRDY,接收器就绪标志。当从SCIRXBUF寄存器中已经准备好一个字符的数据,等待CPU去读时,RXRDY位就会置1。当数据被CPU从SCIRXBUF读出后,或者系统复位,都可以使RXRDY清0。

中断方式:如果需要使用中断,必须使能外设自己的中断、PIE中断和CPU中断。SCIA的发送和接收中断分别位于PIE模块第9组的第1和第2位,同时对应于CPU中断的INT9。当前面所述的TXRDY也是个中断标志位,当该位置1时,就会产生发送中断事件,如果各级中断都已经使能,则会响应SCI的发送中断函数。当接收中断标志位RXRDY置1时,就会产生接收中断标志。如果各级中断已经使能,则会响应SCI的接收中断。值得提出来的是,我们在讲中断这一章内容的时候讲过,外设中断的标志位一定要手动复位,在这里SCI是个例外,原因如下:当发送器缓冲寄存器SCITXBUF做好准备发送数据时,TXRDY置1,但是当CPU将数据写入SCITXBUF的时候,TXRDY自动会清0。而当接收器缓冲寄存器已经准备好数据等待CPU去读取时,RXRDY置1,当CPU将数据从SCIRXBUF读出时,RXRDY也会自动清0。这样也就是说发送和接收这两个中断标志位都是可以自动清零的,所以无需手动复位。这是和其他外设中断不一样的地方,注意查询函数位于主函数的for循环内,这样才能不断的去查询TXRDY和RXRDY的状态,但是很明显程序运行的效率比较低。但是查询方式较中断方式而言,比较简单。因此,可以建议使用如下的组合,数据接收采用中断方式,而数据发送采用查询方式。

七. 多处理器通信

多处理器通信,顾名思义,就是多个处理器之间实现数据通信。一个简单的多处理器通信示意图如图6所示。在图中A、B、C、D之间都可以实现通信,实现表示处理器A和处理器B、处理器C、处理器D之间的通信。处理器A在同一时刻,只能和B、C、D之中的一个实现数据传输。当处理器A需要给B、C、D中的某一个处理器发送数据时,A-B,A-C,A-D这3条通路上都会出现相同的数据,如何确保这些数据被正确的处理器接收呢?

如果我们给A、B、C、D事先分配好地址,然后A发送出去的信息里含有地址信息,B或者C或者D,在接收到这个数据信息的时候,先进行地址的核对,如果地址不符合,则不予响应。如果地址符合,则立即读取数据。这就是多处理器通信的基本原理。

根据地址信息识别方法的不同,多处理器通信方式分为空闲线模式和地址位模式。

地址位多处理器通信格式

地址位多处理器通信 --- 当处理器A发出一串数据时,我们将其叫做数据块,由一个一个的帧构成。帧就是带有格式信息的字符数据。从图可以看到,某一个数据块中的第一帧是地址信息,第二帧是数据信息,然后留有一些空余空间之后,又有一个数据块,第一帧也是地址信息,后面是数据信息。我们可以看到,第一帧地址信息后面的一个位是1,而第2帧数据信息后面的一个位是0。我们把这一位称之为地址位,用于表示这个帧的数据时地址信息还是数据信息。像这样,在通信格式中加入地址位来判断信息是数据还是地址的方式叫做多处理器通信的地址位方式。

空闲线方式多处理器通信方式

空闲线方式多处理器通信 --- 块与块之间有一段比较长的空闲时间,这段时间要明显长于快内帧与帧之间的空闲时间。如果某个帧之后有一段10个位或者更长的空闲时间,那就表明新的数据块开始了。在某一个数据块中,第一帧代表地址信息,后面的帧为数据信息。也就是说,地址信息还是数据信息是通过帧与帧之间的空闲间隔来判断的。当帧与帧之间的空闲间隔超过10个位的时候,就表示新的数据块开始,而且其第一帧为地址信息。

空闲线模式中数据格式里没有额外的地址位,在处理10个字节以上的数据块时比地址位模式更为有效,被应用于典型的非多处理器SCI通信场合。而地址位模式由于有专门的位来进行识别地址信息,所以数据块之间不需要空闲时间等待,所以这种模式在处理一些小的数据块的时候更为有效,当然,我们也得看到,当传输数据的速度比较快,而程序执行速度不够快时,很容易中间会产生10位以上的空闲,这样其优势就更加不明显了。

搜索更多关于: 2812的SCI模块 - 图文 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

所谓的波特率就是指每秒所能发送的位数。2812的每个SCI都具有两个8位的波特率寄存器,SCIHBAUD和SCILBAUD,通过编程,可以实现达到64K不同的速率。 波特率的计算公式: ( 1 ≤ BRR ≤65535 ) ( BRR=0 ) BRR=波特率选择寄存器中的值,从十进制转换成十六进制后,高8位赋值给SCIHBAUD,低8位赋值给SCILBAUD LSPCLK=37.5M时,SCI常见的波特率 在进行通信的时候,双方都必须以相同的数据格式和波特率进行通信,否则通信会失败。例如2812和PC机上的串口调试软件进行通信时,2812采用了什么样的数据格式和波特率,

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com