第六章异步串行通信(SCI)清华洪伟_第1页
第六章异步串行通信(SCI)清华洪伟_第2页
第六章异步串行通信(SCI)清华洪伟_第3页
第六章异步串行通信(SCI)清华洪伟_第4页
第六章异步串行通信(SCI)清华洪伟_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

第六章异步串行通信(SCI)6.1通信基础知识6.2异步串行通信协议RS-232标准6.3SCI功能简介6.4SCI寄存器6.5SCI应用程序示例Page

1Lecture4Page1

1微控制器开发技术通信方式的几个要素串行、并行(Serial/parallel)同步、异步(Synchronous/asynchronous)点对点、总线(Point-to-point/bus)半双工、全双工(Half-duplex/full-duplex)主从式、对等式(Master-slave/equalpartners)单端信号、差分信号(Single-ended/differential)第六章异步串行通信(SCI)

——通信基础知识Page

2Lecture4Page2微控制器开发技术串行通信数据按位传输通信方只需要很少的连接–resource/pinefficient速度较慢,传输信息少传输距离较远并行通信数据按字节/字传输通信方需要多个连接信号--difficultforPCBrouting传输速度快传输距离较短你接触过哪些串行/并行通信?第六章异步串行通信(SCI)

——通信基础知识Page

3Lecture4Page3微控制器开发技术同步通信接收方可以得到发送方的通信时钟信号传输速率高异步通信(SCI:serialcommunicationinterface)(UART:universalasynchronousreceiver/transmitter)发送方和接收方使用独立的时钟来处理通信信号通信双方约定通信速率通信中需要约定起始/停止位或定义特殊的帧结构传输速率较低第六章异步串行通信(SCI)

——通信基础知识Page

4Lecture4Page4微控制器开发技术点对点通信线路上只有两个通信方不需要寻址总线通信线路上有多个通信方需要建立寻址机制第六章异步串行通信(SCI)

——通信基础知识Page

5Lecture4Page5微控制器开发技术半双工一条数据线,分时进行发送和接收一方发送时,其他通信方只能处于接收状态需要额外的逻辑来控制发送和接收状态的切换有发生冲突的危险全双工两条数据线,通信端可以同时进行发送和接收需要两个独立的通信通道使用简单,数据传输率高对讲机?电话机?第六章异步串行通信(SCI)

——通信基础知识Page

6Lecture4Page6微控制器开发技术主从式只有主端可以发起数据传输从端等待主端的允许才能传输数据对等式任何节点可以发起数据传输需要建立冲突检测和仲裁机制第六章异步串行通信(SCI)

——通信基础知识Page

7Lecture4Page7微控制器开发技术单端信号信号幅度以地电平作为参考通信双方必须建立共同的参考地电平干扰造成的信号幅度变化可能导致错误解释差分信号每个信号使用两根线传输,信号的值由两个线上的电平的差值表示通信方不需要共同的参考地对干扰抑止能力强传输速率高第六章异步串行通信(SCI)

——通信基础知识Page

8Lecture4Page8微控制器开发技术微控制器常见的通信类型总线类型线数通信类型多主波特率(bps)器件数目总线长度UART2异步No3K-1M2*SPI3同步Yes1M-10M<10板内I2C2同步Yes~1M<10板内CAN2异步Yes20K-1M128百米~公里LIN1异步No<20K16几十米Page

9Lecture4Page9微控制器开发技术Page

10第六章异步串行通信(SCI)

——异步串行通信协议RS-232标准串行通信示意图Lecture4Page10微控制器开发技术EIARS-232-C(CCITTV.24)

美国电子工业协会正式公布的异步串行通信标准,也是目前最常用的异步串行通信标准,用来实现计算机与计算机之间、计算机与外设之间的数据通信RS-232-C电平采用负逻辑,即,逻辑1:-3~-15V,逻辑0:+3~+15V(需要电平转换)RS-232-C接口标准有22根线,采用标准25芯D型插头座;PC上使用简化的9芯D型插座多种通信应答(握手)方式:硬件握手,自应答,XON/XOFF模式波特率:300bps~20Kbps,物理层有多种实现方式(铜缆,光缆,红外,微波)起始位/停止位/数据位/奇偶校验/全双工半双工模式广泛应用:Modem,20mA电流环,RS485

个人计算机都有标准的RS232接口,驱动程序,超级终端第六章异步串行通信(SCI)

——异步串行通信协议RS-232标准Page

11Lecture4Page11微控制器开发技术Page

12第六章异步串行通信(SCI)

——异步串行通信协议RS-232标准简化的9芯D型DTE:数据终端设备,指PC或终端DCE:数据通信设备,指调制解调器等外设DCE(母)DTE(公)Lecture4Page12微控制器开发技术简化的9芯D型接头信号定义(硬件流量控制)DTEDCE3TxDoutTxDTransmitData2RxDinRxDReceiveData5GNDGND7RTSoutRTSRequireToSend8CTSinCTSClearToSend6DSRinDSRDataSetReady9DCDinDCDDataCareDetected4DTRoutDTR

DataTerminalReadyPage

13第六章异步串行通信(SCI)

——异步串行通信协议RS-232标准Lecture4Page13微控制器开发技术简化的9芯D型接头信号定义(自应答方式)

DTE/DCE2TxDoutTxD(TransmitData)3RxDinRxD(ReceiveData)7GNDGND(Ground)4RTSoutRTS(RequiretoSend)5CTSinCTS(CleartoSend)6DSRinDSR(DataTerminalReady)8DCDinDCD(DataCarryDetected)20DTRoutDTR(DataSetReady)Readyalways,orXON/XOFFprotocol,ASCIIonly!第六章异步串行通信(SCI)

——异步串行通信协议RS-232标准Lecture4Page14微控制器开发技术简化的9芯D型接头信号定义(无应答方式)

1protectionground2RxDinRxD(ReceiveData)3TxDoutTxD(TransmitData)5GNDGND(Ground)6DSRinDSR(DataTerminalReady)7RTSoutRTS(RequiretoSend)8CTSinCTS(CleartoSend)9DCDin DCD(DataCarrierDetected)4DTRoutDTR(DataSetReady)NoHandshake,shoulduseXON/XOFFprotocol,ASCIIonlyPage

15第六章异步串行通信(SCI)

——异步串行通信协议RS-232标准Lecture4Page15微控制器开发技术TTLlevelvs.RS232levelPage

16第六章异步串行通信(SCI)

——异步串行通信协议RS-232标准Lecture4Page16微控制器开发技术TTLlevelvs.RS232levelPage

17第六章异步串行通信(SCI)

——异步串行通信协议RS-232标准Lecture4Page17微控制器开发技术RS232标准(1962)出现的比TTL(1964)还早需要接口转换芯片MAX232MicrocontrollerDB9TTL/CMOSRS232Page

18双通道

第六章异步串行通信(SCI)

——异步串行通信协议RS-232标准Lecture4Page18微控制器开发技术帧格式(Frameformat)012345678LSBMSBstopidleidlestart非归零码:NRZ(notreturnzero)encoding参数:SeveralconfigurableparametersBaudrate,#startbits,#databits,parity,#stopbits(波特率,起始位,数据位,奇偶校验位,停止位)Nomenclature:9600,N81(无奇偶校验,8位数据,1位停止位)最低位:LSB-Leastsignificantbit最高位:MSB-MostsignificantbitParity(stop)Page

19第六章异步串行通信(SCI)

——异步串行通信协议RS-232标准Lecture4Page19微控制器开发技术接收端在其时钟上升沿采样数据线电平,以识别数据位的高低状态。Whatisthedatatransmittedabove?Page

20第六章异步串行通信(SCI)

——异步串行通信协议RS-232标准数据位识别Lecture4Page20微控制器开发技术Tx_clkRx_clkTxDRxD传输过程会引起信号的延迟,会引入外部干扰导致的噪声及毛刺第六章异步串行通信(SCI)

——异步串行通信协议RS-232标准数据位识别Lecture4Page21微控制器开发技术Page

22第六章异步串行通信(SCI)

——异步串行通信协议RS-232标准数据位识别-通信双方有约定的通信速率(波特率)-接受端按照16倍波特率的频率对信号进行高速采样-使用其中3个采样结果(7、8、9或8、9、10),通过3取2的机制确定实际的信号电平状态-如果3个采样结果不一致,noise标志会置起-接受端在总线进入空闲状态后,通过监测下降沿,启动对起始位的判断,从而开始整个数据帧的接受。Lecture4Page22微控制器开发技术波特率:bitspersecond

Question1:按照9600,N81的通信参数,每秒可以传送多少个字节?Hints:don’tforgetthestart/stopbits.Question2:对于一个总线频率为16MHz的微控制器,其SCI最高支持的波特率是多少?Page

23第六章异步串行通信(SCI)

——异步串行通信协议RS-232标准Lecture4Page23微控制器开发技术校验位附加在数据帧末尾,用于检查传输过程中是否发生了数据位错误。LSBMSBstopstartParityPage

24第六章异步串行通信(SCI)

——异步串行通信协议RS-232标准校验位偶校验:所有数据位和校验位中,1的数目是偶数;奇校验:所有数据位和校验位中,1的数目是奇数Lecture4Page24微控制器开发技术Transmitter:Receiver:.TDRBUFFERSHIFTREGISTERDATAINDATAOUTT8PARITYGEN.DATAOUTRDRBUFFERSHIFTREGISTERDATAINR8PARITYCHECKSCI–双缓冲寄存结构发送和接受都具有双缓冲结构CPU不能读写移位缓冲寄存器CPU仅能访问数据寄存器Page

25第六章异步串行通信(SCI)

——SCI功能简介Lecture4Page25微控制器开发技术.发送时,数据自动从数据寄存器转移到移位寄存器接受时,数据自动从移位寄存器转移到数据寄存器发送和接受的数据寄存器使用相同的寄存器地址读写该寄存器地址具有不同的含义!Question:what’sthefunctionoftheinstructionsbelowwhile(1){asmLDAASCI0DRasmSTAASCI0DR}Page

26SCI–双缓冲寄存结构第六章异步串行通信(SCI)

——SCI功能简介Lecture4Page26微控制器开发技术TxdataregisterTxclockgenNotethe÷16ShiftregisterParitygenInterruptrequestgenPage

27Controllogic第六章异步串行通信(SCI)

——SCI功能简介Lecture4Page27微控制器开发技术SCIBDH/L-SCIBaudRateControlRegister必须连续写入BDH和BDL寄存器,仅仅写入BDH没有作用。BR为0,表示SCI停止工作,以便节省电能。Busclock1~819124MbusclockExercise1:

9600bpswanted,BR=?

BDH=?BDL=?Exercise2:

themaximumbaudrate=?Page

28第六章异步串行通信(SCI)

——SCI寄存器Lecture4Page28微控制器开发技术SCCR1-SCIControlRegister1

1=9-BITDATA0=8-BITDATA1=EVENPARITY0=ODDPARITY1=PARITYEnabled0=PARITYDisabledPage

29第六章异步串行通信(SCI)

——SCI寄存器Lecture4Page29微控制器开发技术SCICR2-SCIControlRegister2TE_TransmitterEnable1=TransmitterEnabled0=TransmitterDisabledREReceiverEnable1=ReceiverEnabled0=ReceiverDisabledTCIE-TransmitCompleteInterruptEnable1=TransmitterCompleteIRQEnabled0=TransmitterCompleteIRQDisabledRIE-ReceiverInterruptEnable1=ReceiverIRQEnabled0=ReceiverIRQDisabledTIE-TransmitterInterruptEnable1=TransmitterIRQEnabled0=TransmitterIRQDisabledPage

30第六章异步串行通信(SCI)

——SCI寄存器Lecture4Page30微控制器开发技术SCISR1-SCIStatusRegister1SCISR2-SCIStatusRegister2RDRF:ReceivedataRegisterFullTC:TransmitCompleteTDRE:TransmitdataregisteremptyPage

31第六章异步串行通信(SCI)

——SCI寄存器Lecture4Page31微控制器开发技术SCIDRH/L-SCIDataRegisterHigh/LowNote:R8andT8areusedwhen9-bitcharisrequiredNotice:sameregisterforbothtransmitdataandreceivedataPage

32第六章异步串行通信(SCI)

——SCI寄存器T8Lecture4Page32微控制器开发技术Page

33第六章异步串行通信(SCI)

——应用程序示例SCI模块编程方法SPI初始化:先写SCI0BDH和SCI0BDL设定SCI波特率;再写控制寄存器SCI0CR2,设定中断允许位,并使能发送和接收SCI收发数据:通过查询SCI0SR1中的状态位或采用中断方式,读写数据寄存器,完成数据收发。Lecture4Page33微控制器开发技术Page

34//SCI初始化函数voidSCI0_Init(void){SCI0BDH=0;SCI0BDL=52;//busfreq=8MHz,9600bps

SCI0CR2=0x0C;//允许发送和接收}//SCI发送一个字节的函数(参数:c为待发送的1字节数据)voidPut_Char(charc){while((SCI0SR1&0x80)==0); SCI0DRL=c;}//SCI接收一个字节的函数(返回:接收的1字节数据)charGet_Char(void);{while(SCI0SR1_RDRF==0); returnSCI0DRL;}第六章异步串行通信(SCI)

——应用程序示例Lecture4Page34微控制器开发技术Page

35示例1:发送ASCII码表给PC机,每16个字符回车换行一次voidmain(void){ unsignedcharascii_char; SCI0_Init(); ascii_char=0; while(ascii_char<

温馨提示

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

评论

0/150

提交评论