PIC18 串口课件

上传人:lx****y 文档编号:242971831 上传时间:2024-09-13 格式:PPT 页数:35 大小:1.11MB
返回 下载 相关 举报
PIC18 串口课件_第1页
第1页 / 共35页
PIC18 串口课件_第2页
第2页 / 共35页
PIC18 串口课件_第3页
第3页 / 共35页
点击查看更多>>
资源描述
,Click to edit Master title style,*,Click to edit Master text styles,- Second level,Third level,Fourth level,Fifth level,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,*,Click to edit Master title style,Click to edit Master text styles,- Second level,Third level,Fourth level,Fifth level,Click to edit Master title style,Click to edit Master text styles,- Second level,Third level,Fourth level,Fifth level,*,Click to edit Master title style,Click to edit Master text styles,- Second level,Third level,Fourth level,Fifth level,Click to edit Master title style,Click to edit Master text styles,- Second level,Third level,Fourth level,Fifth level,第七章 串口模块原理及应用,7-1,串行通信模块概述,7-2 I,2,C,模块的原理、寄存器及应用,7-3 SPI,模块的原理、寄存器及应用,7-4 UART,模块的原理、寄存器及应用,7-1,串行通信模块概述,串行通信模块主要用于单片机和其他外设、单片机器件或计算机。这些外设器件可以是串行,EEPROM,、移位寄存器、显示驱动器、,A/D,转换器、,CRT,终端和个人计算机等。,内部集成电路(,I,2,C,),串行外设接口(,SPI,),通用同步,/,异步收发器(,USART,),PIC 18F452,单片机引脚图,7-2 I,2,C,的结构原理、寄存器及应用,I,2,C,的结构原理及寄存器,I,2,C,的使用方法及应用,I,2,C,结构原理图及寄存器,bit 7 SMP,:,转换率控制位,bit 6 CKE,:,SMBus,选择位,bit 5 D/A,:,数据,/,地址位,bit 4 P,:,停止位,bit 3 S,:,启动位,bit 2 R/W,:,读,/,写位信息(仅在,I,2,C,模式下),bit 1 UA,:,更新地址(仅在,10,位从动模式下),bit 0 BF,:,缓冲器满状态位,I,2,C,状态寄存器:,SSPSTAT,I,2,C,的控制寄存器,1,:,SSPCON1,bit 7 WCOL,:,写冲突检测位,bit 6 SSPOV,:,接收溢出标识位,bit 5 SSPEN,:,同步串行口使能位,bit 4 CKP,:,SCK,释放控制位,bit 3-0 SSPM3:SSPM0,:,同步串行口模式选择位,1111=I2C,从动模式,,10,位地址,允许启动和停止位中断,1110 =I2C,从动模式,,7,位地址,允许启动和停止位中断,1011=I2C,固件控制的主控模式(从动空闲),1000=I2C,主控模式,时钟,=FOSC / (4 * (SSPADD+1),0111=I2C,从动模式,,10,位地址,0110=I2C,从动模式,,7,位地址,bit 7 GCEN,:,全局呼叫使能位(仅从动模式),bit 6 ACKSTAT,:,应答状态位(仅主控发送模式),bit 5 ACKDT,:,应答数据位(仅主控接收模式),bit 4 ACKEN,:,应答序列使能位(仅主控接收模式),bit 3 RCEN,:,接收使能位(仅主控模式),bit 2 PEN,:,停止条件使能位(仅主控模式),bit 1 RSEN,:,重复启动条件使能位(仅主控模式),bit 0 SEN,:,启动条件使能,/,延长使能位,I,2,C,的控制寄存器,2,:,SSPCON2,I,2,C,接口的编程有两种模式,一种是使用寄存器直接对,I,2,C,的硬件进行控制,,C18,编译器定义了符号,SSPSTAT, SSPSTATbits,SSPCON1,SSPCON1bits, SSPCON2,SSPCON2bits,等符号来直接读写,I,2,C,的寄存器;另一种是使用,C18,提供的库函数。,I,2,C,的编程应用,I,2,C,的库函数,APP001,开发板上配置了一个,I,2,C,接口的,EPPROM,存储器,24LC024,和一个数字温度传感器,TC74,,采用单片机读取,TC74,的测量温度。,I,2,C,的应用实例,I,2,C,的应用实例,#define TC74_Addr0b10011110,/定义宏,#define TC74_RWCR0x01,#define TC74_RTR0x00,unsigned Read_TC74_Temperature(void),TC_74.Word = 0 ;,TC_74.Word=EERandomRead(TC74_Addr,TC74_RWCR);,/ 从TC74-A7读寄存器状态,if ( TC_74.BitD6 ),/ b6 =1 , 开始读取温度,TC_74.Word=EERandomRead(TC74_Addr,TC74_RTR);,if ( TC_74.Word = 0 ),return TC_74.Word;,else return -1;,/ 读失败,返回(-1),else return -2;,/ b6=0, 返回(-2),初始化,通过将,SSPCON1,中的相应的,SSPM,位置,1,和清零(,1000,),同时将,SSPEN,位置,1,,使能,I,2,C,的主控模式,此时,SCL,和,SDA,由,MSSP,的硬件控制。,SSPCON1=0x28;,/,工作在主控模式,I,2,C,接口使能,读,TC74,,实现,Read Byte Format:,SSPCON2bits.SEN=1;,/,发出启动信号,SSPBUF= TC74_Addr|0x01;,/,写设备地址,+,写模式(后面,的操作是写入读温度命令),If(SSPCON2bits.ACKSTAT!=0),return;,/TC74,应答,单片机检测应答,无应答则退出,SSPBUF =0x00;,/,写命令字节,00h-,读取温度值,If(SSPCON2bits.ACKSTAT!=0),return;,/TC74,应答,单片机检测应答,无应答则退出,SSPCON2bits.SEN=1;,/,重新发启动信号,SSPBUF= TC74_Addr |0x00;,/,写设备地址,+,读模式(后面的,/,操作时读,TC74,),If(SSPCON2bits.ACKSTAT!=0),return;,/TC74,应答,单片机检测应答,无应答则退出,Temperature=SSBUF;,/,读数据,/,不应答,SSPCON2bits.PEN=1;,/,发出结束信号,7-3 SPI,的结构原理、寄存器及应用,SPI,的结构原理及寄存器,SPI,的使用方法及应用,SPI,结构原理图及寄存器,SPI,的状态寄存器:,SSPSTAT,bit 7 SMP,:,采样位,SPI,主控模式:,1=,在数据输出期间的结束时采样输入数据,0=,在数据输出期间的中段采样输入数据,SPI,从动模式:,SMP,必须被清零,bit 6 CKE,:,SPI,时钟沿选择,当,CKP=0,时:,1=,在,SCK,上升沿发送数据,0=,在,SCK,下降沿发送数据,当,CKP=1,时:,1=,在,SCK,下降沿发送数据,0=,在,SCK,上升沿发送数据,bit 5 D/A,:,数据,/,地址位,只在,I,2,C,模式中使用,bit 4 P,:,停止位,当,MSSP,模块被禁止(,SSPEN,清零)时该位被清零。,bit 3 S,:,启动位,只在,I,2,C,模式中使用,bit 2 R/W,:,读,/,写位信息,只在,I,2,C,模式中使用,bit 1 UA,:,更新地址,只在,I,2,C,模式中使用,bit 0 BF,:,缓冲器满状态位(仅在接收模式下),1=,表示接收完成,,SSPBUF,满,0=,接收没有完成,,SSPBUF,为空,bit 7 WCOL,:,写冲突检测位(仅在发送模式下),bit 6 SSPOV,:,接收溢出标识位,SPI,从动模式:,1=SSPBUF,仍保存前一数据时,接收到新的字节。如果溢出,,SSPSR,中的数据会丢失。溢出只会在从动模式下发生。即使只是发送数据,用户也必须读,SSPBUF,,以避免溢出。(该位必须用软件清零),0=,没溢出,SPI,的控制寄存器,1,:,SSPCON1,bit 5 SSPEN,:,同步串行口使能位,1=,使能串行口,并配置,SCK,、,SDO,、,SDI,和,SS,作为串行口引脚,0=,禁止串行口,并配置这些引脚为,I/O,口引脚,bit 4 CKP,:,时钟极性选择位,1=,高电平为时钟空闲状态,0=,低电平为时钟空闲状态,bit 3-0 SSPM3:SSPM0,:,同步串行口模式选择位,0101=SPI,从动模式,时钟,=SCK,引脚,禁用,SS,引脚控制,可将,SS,用作,I/O,引脚,0100=SPI,从动模式,时钟,=SCK,引脚,使能,SS,引脚控制,0011=SPI,主控模式,时钟,=TMR2,输出,/2,0010=SPI,主控模式,时钟,=FOSC/64,0001=SPI,主控模式,时钟,=FOSC/16,0000=SPI,主控模式,时钟,=FOSC/4,SPI,的主从控制器连接,SPI,的寄存器,SPI,的库函数,7-4 UART,的结构原理、寄存器及应用,UART,的结构原理及寄存器,UART,的使用方法及应用,TXSTA,: 发送状态和控制寄存器,bit,7 CSRC,:,时钟源选择位,同步模式:,1=,主控模式(由,BRG,产生时钟),0=,从动模式(由外部时钟源提供时钟信号),bit,6 TX9,:,9,位发送使能位,1=,选择,9,位数据发送,0=,选择,8,位数据发送,bit,5 TXEN,:,发送使能位,1=,允许发送,0=,禁止发送,bit,4 SYNC,:,USART,模式选择位,1=,同步模式,0=,异步模式,bit,3,未实现:,读作,0,bit,2 BRGH,:,高速波特率选择位,异步模式:,1=,高速,0=,低速,同步模式:,在此模式下未使用此位,bit,1 TRMT,:,发送移位寄存器状态位,1=TSR,空,0=TSR,满,bit,0 TX9D,:,发送数据的第,9,位,可能是地址,/,数据位或奇偶校验位。,RCSTA,: 接收状态和控制寄存器,bit,7 SPEN,:,串口使能位,1=,使能串口,0=,禁止串口,bit,6 RX9,:,9,位接收使能位,1=,选择,9,位接收,0=,选择,8,位接收,bit,5 SREN,:,单字节接收使能位,同步主控模式,1=,允许接收单字节,0=,禁止接收单字节,bit,4 CREN,:,连续接收使能位,异步模式:,1=,允许接收器,0=,禁止接收器,同步模式:,1=,允许连续接收,直到,CREN,使能位被清零(,CREN,位比,SREN,位优先级高)为止,0=,禁止连续接收,bit,3 ADDEN,:,地址检测使能位,9,位异步模式(,RX9=1,):,1=,允许地址检测、使能中断及装入接收缓冲器,当,RSR,置,1,时,0=,禁止地址检测,接收所有字节,第,9,位可作为奇偶校验位,bit,2 FERR,:,帧出错标志位,1=,帧出错(读,RCREG,寄存器可更新该位,并接收下一个有效字节),0=,无帧错误,bit,1 OERR,:,溢出错误位,1=,有溢出错误(清零,CREN,位可将此位清零),0=,无溢出错误,bit,0 RX9D,:,接收数据的第,9,位,此位可作为地址,/,数据位或奇偶校验位,且必须由用户固件计算得到。,USART,库函数,直接控制,UART,寄存器编程:,初始化:,RCSTAbits.SPEN=1;,/SPEN,位置,1,使能,UART,模块,TCSTAbits.TX9=0;,/8,位数据发送,TCSTAbits.SYNC=0;,/,异步模式,TCSTAbits.BRGH=0;,/,低速波特率模式,RCSTAbits.RX9=0;,/8,位数据接收,BRG=12;,/16M,晶振时,波特率,9600,TRISCbits.RC6=0;,/TRISC,位,6,清零,,TXD,配置为,I/O,输出,TRISCbits.TC7=1;,/TRISC,位,7,置,1,,,TXD,配置为,I/O,输入,TCSTAbits.TXEN=1;,/,使能发送,RCSTAbits.RXEN=1,;,/,使能接收,发送数据,TXREG=tx_data;,/,数据写入发送数据寄存器,TXREG,While(PIR1bits.TXIF=1,);/,等待发送,数据写入,TXREG,时,/,硬件清零,TXIF,位,表示发送器,/,满,不能继续写入数据,当数,/,据全部移出,TXREG,时,硬件置,/TXIF,为,1,,表示可以发送下一,/,个数据,接收数据,If( PIR1bits.RCIF=1),If,(,RCSTAT&0x07=0,),/,检查接收状态,如果接收时无,/,错误发生则读取接收数据,Rx_data=RXREG;,Else,/,接收时出错,丢弃该接收数据,RCSTATbits.CREN=0,;,/,清零错误位,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 大学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!