英飞凌xc866学习手册讲解

上传人:我** 文档编号:116881422 上传时间:2019-11-17 格式:PPT 页数:73 大小:1.09MB
返回 下载 相关 举报
英飞凌xc866学习手册讲解_第1页
第1页 / 共73页
英飞凌xc866学习手册讲解_第2页
第2页 / 共73页
英飞凌xc866学习手册讲解_第3页
第3页 / 共73页
英飞凌xc866学习手册讲解_第4页
第4页 / 共73页
英飞凌xc866学习手册讲解_第5页
第5页 / 共73页
点击查看更多>>
资源描述

《英飞凌xc866学习手册讲解》由会员分享,可在线阅读,更多相关《英飞凌xc866学习手册讲解(73页珍藏版)》请在金锄头文库上搜索。

1、英飞凌8位单片机 增强内核的51单片机XC866 (自动化学院单片机原理课程补充内容) 康戈文 07年编写 主要包含以下内容: nXC866单片机体系结构 n并行接口的配置(基本端口操作) nI2C 总线,SPI 总线 nAD 转换器 n定时器2及定时器中捕获比较单元及PWM输出。 n根据课时进行选择讲解 XC866 单片机特点 n与8051兼容内核 n具有片内振荡器和锁相环产生时钟 n具有片内看门狗WDT n8通道 10位AD转换器 n具有PWM产生的捕获比较单元CCU6 n支持片上调试(JTAG)和在线编程ISP n3个定时器,256字节RAM,4KB FLASH+16K ROM ,512

2、字节XRAM n两个DPTR 双数据指针 n支持多种省电模式 XC866单片机结构 XC866单片机引脚 多功能引脚举例 nP0.0 引脚12 TCK_0 JTAG 时钟输入 T12HR_1 CCU6 定时器12 硬件运行输入 CC61_1 捕获/比较通道1 输入/输出 CLKOUT 时钟输出 RXDO_1 UART 发送数据输出 nP0.1 引脚14 TDI_0 JTAG 串行数据输入 T13HR_1 CCU6 定时器13 硬件运行输入 RXD_1 UART 接收数据输入 COUT61_1 捕获/比较通道1 输出 EXF2_1 定时器2 外部标志输出 XC866的存储器结构 n8K 启动(b

3、oot)ROM 地址:C00H-E000H n256字节片内RAM,07FH使用直接寻址,80FFH使用 寄存器间接寻址 n128字节SFR 地址80FFH,使用直接寻址 n512字节XRAM 地址F000F200,使用MOVX访问。当使 用R0,R1作地址寄存器时,其XRAM地址的高位地址由寄 存器XADDRH 中的值定义。 n8K/16K 程序存储器,起始地址0000 n特殊的EO寄存器操作,允许切换DPTR以及对程序ROM 写操作(指令:MOVC (DPTR+),A)实现软件更新 扩展操作寄存器(EO) n指令集还包括一条指令MOVC(DPTR+),A ,允 许对程序存储器写操作。初始化

4、CPU 时用该指令将 代码下载到程序存储器中,也用该指令进行软件更新 n该指令将累加器中的内容复制到当前数据指针指向的 程序存储器地址中,接着数据指针加1。 n该指令的操作码为A5H,和软件断点指令TRAP 的操 作码相同(见表 2-1)。位EO.TRAP_EN 用来选择 A5B 操作码执行的指令。当TRAP_EN 为0(缺省值 )时,A5H执行MOVC 指令;当TRAP_EN 为1 时, A5H 执行软件断点指令TRAP,该指令将 nCPU 切换至调试模式执行断点操作。 EO n扩展操作寄存器 复位值: 00H nDPSEL 数据指针选择 n0 选择DPTR0 n1 选择DPTR1 nTRA

5、P_EN TRAP 使能位 n0 选择MOVC(DPTR+),A n1 选择软件TRAP 指令 扩展的SFR n由于XC866功能强大,128个字节的SFR不够 用,特作了映射和分页处理 n对地址8FH的SYSCON0寄存器位0(RMAP)写 1可以访问映射区的SFR n映射后的SFR还不够用,再采用分页进行管理 :对MOD_PAGE寄存器的低3位(PAGE)进行 设置,可以访问需要的SFR页。 n资料p51-p59 基本端口结构 上拉 器件 VDDP 下拉 器件 GND 上拉/下拉 寄存器 使能寄存器 端口数据 第二功能选择 (两个) 方向选择 开漏控制 引 脚 数据输出1 数据输出2 数据

6、输出3 数据输入 端口相关寄存器 nPX_PUDSEL 上拉/下拉选择寄存器 nPX_PUDEN 上拉/下拉使能寄存器 nPX_OD 漏极开路控制寄存器 nPX_DIR 方向寄存器(P2口只能作为输入) nPX_ALTSEL0 第二功能选择寄存器0 nPX_ALTSEL1 第二功能选择寄存器1 nPX_DATA 端口数据寄存器 q其中PX的X为端口编号,寄存器都是8位,每位对应 一个引脚 v回忆:51单片机没有这些寄存器准双向口 端口控制寄存器介绍1 nPX_DATA 端口数据寄存器 n8位,作为输出时,存放输出的端口数据,作 为输入时,可以读到端口引脚的锁存值。 nPX_DIR 方向寄存器

7、n8位,双向口时,0输入,1输出 n单项输入口时(P2口),0禁止输入驱动, 1输入驱动使能 端口控制寄存器介绍2 nPX_OD 漏极开路控制寄存器 n8位,0正常模式,1开漏输出模式 nPX_PUDSEL 上拉/下拉选择寄存器 n8位,0下拉,1上拉 nPX_PUDEN 上拉/下拉使能寄存器 n8位,0禁止上拉或者下拉,1使能 端口控制寄存器介绍3 nPX_ALTSEL0 第二功能选择寄存器0 nPX_ALTSEL1 第二功能选择寄存器1 n两个8位,对应位的两个寄存器组成2位控制代码,其意义 如下: vGPIO通用输入输出 PX_ALTSEL0.PnPX_ALTSEL1.Pn 功能 00正

8、常GPIO功能 10其它功能输出1 01其它功能输出2 11其它功能输出3 nP109-p141 I2C总线和SPI总线 nI2C总线和SPI总线同属于“位同步”的串行接口 ,但又有一些不同点: n51的串口方式0(回忆) nI2C总线的数据信号需要:起始、停止和ACK 信号,要求对方作应答 nSPI总线:两条串行数据线,一条时钟线。数 据线分输出和输入。对多个外部芯片,还需要 片选CS。 I2C总线介绍 nI2C总线是PHILIPS公司提出的“片间总线”的英文缩写 n典型应用在串行E2PROM存储芯片的读写中。 n常见型号有24CXX,24LCXX,94CXX等,这里XX表示 容量,单位1K

9、BIT。例如24C02表示容量2KBIT256 字节 n这类芯片有8个引脚,除2个电源,三个地址,一个备 用外,剩余两个引脚就是I2C的SDA和SCK。 n器件的3个地址由电路链接设定(接GND或者接VCC ),可以确定8个器件的不同地址。 n这类存储芯片常用于掉电需保存的数据存储,例如彩 电频道信息,产品特性信息等。 I2C总线电路链接 nI2C总线使用2条通讯线路:SDATA和SCLK。SDATA为双 向串行数据线,SCLK为同步时钟,通常由单片机发出。 n器件自身地址3个引脚用“接地/接电源”方式确定,各器件 应当设计为不同地址。(最多8个器件,地址:07) 单片机 器件 1 器件 n

10、SDATA SCLK 。 。 I2C 总线基本时序 (A)总线空闲,当SCL和SDA都为高电平时 (B)START 数据开始传输,当SCL为高时,SDA变低。 (C) STOP 数据停止传输,当SCL为高时,SDA由低变高。 (D)数据有效,当SCL高电平期间,SDA为一个稳定电平。 即:先发出SDA数据,然后在SCL线上产生一个正方波。 I2C总线E2PROM常见封装 nA0A2 芯片地址,链接 VCC/GND确定,访问命令中 应包含此芯片的地址。 nSDA 双向串行数据线 nSCL 同步时钟线 nVSS=GND nPIN 7 一些芯片定义为“写保 护WP”,设为低电平时不能对 芯片写入。

11、n常见型号:24CXX,94CXX, 其中XX为容量(K位),例如 XX=02,容量2048/8256 字节 图中XX=65,容 量为8KB I2C 总线操作时序和控制码 n容量超过256字节时,地址长度 为两字节,ADDR1和ADDR0,其中 ADDR1为高地址,ADDR0为低地址 ;在控制码、ACK后,送ADDR1、 ACK、ADDR0、ACK,然后是数据 。 n字节写:一次一字节。 n页写:前面部分同“字节写”,一 次可连写8字节 n控制码前4位为标志,其后3位为 器件地址,最末位为1则读,为0 则写。 XC866实验四:ZLG7290显示和键盘扫描 nZLG7290和HD7279/72

12、89等芯片是专用于LED数 码管显示和键盘扫描的专用芯片,单片机可以通过 I2C总线与其相连实现显示控制和键盘扫描。单片 机对芯片用约定的命令对其进行初始化,然后把 显示数据送入芯片内部的显示寄存器,就能在数 码管上看到显示结果。 n芯片自动扫描键盘和刷新显示。一旦有键按下会 发出中断申请。 nSDA 串行数据,输入 nSCL 串行移位时钟,输入 nINT 中断申请输出(有键按下),低电平 nRST (低电平)复位输入 nSA;SB;SCSG;DP 数码管8个笔划。 KR0;KR1KR7键盘阵列”行”。 SA/KR0;SB/KR1分时使用 nDIG0/CK0;DIG1/CK1;.8个数码管选择

13、和8列键 盘扫描共用信号 模拟I2C总线要点 n编写几个子程序,分别完成和产生: START;STOP;ACK;NOACK以及写数(发送 )读数(接收)功能,然后按照芯片规定的时 序依次调用它们。 n例如随机读:START、发控制字(写命令)、 ACK、写ADDR1、ACK、写ADDR0、ACK、发START 、发控制字(读命令)、读数、STOP n前面8051部分已经举例说明过模拟方式写数和 收数程序,这里再举例START和STOP 产生START和STOP n(1)起始位 送出起始位,若SDA和SCL不全高,起始位发送失败, 返回C=1,发送成功则返回C=0。 START: SETB SD

14、A SETB SCL JNB SDA,RETERR JNB SCL,RETERR NOP CLR SDA NOP5 CLR SCL CLR C JMP RETST RETERR:SETB C RETST: RET n(1)停止位 STOP:CLR SDA NOP NOP SETB SCL NOP NOP NOP NOP NOP SETB SDA RET SCL SDA 写数举例 同时判读ACK,返回时如果C=0则发送成功 n(3)写数 数据存在ACC中,程序返回为C=ACK SEND:PUSH B MOV B,#8;8位数 SENDLP:RLC A MOV SDA,C NOP SETB SCL

15、 NOP4 CLR SCL DJNZ B,SENDLP;判8位完否 SETB SDA ;以下读取ACK NOP NOP SETB SCL NOP4 MOV C,SDA CLR SCL POP B RET SPI总线结构 nSPI总线使用三条信号线,除SCLK外,两条串行数据线MISO和SIMO 。字母M为“主”,字母S为“从”,I入O出。 nSPI总线:主方(MAST)和从方(SLAV)都有各自的“移位寄存器”, 并且串连在同一条电路上,主方发出的移位时钟同时移动两个“移位寄 存器”,主方的数据发向从方,同时也将从方数据读回。 n可以并联多个从机,主/从机可以用软件设定,SCLK只能由主机发出

16、 。 nSPI数据顺序是高位(MSB)先发/先收。(注:与8051串口方式0相 反) 移位寄存器 时钟 移位寄存器 时钟 MOSI MISO SCLK 主机从机 常见的SPI多机通讯 移位寄存器 时钟 移位寄存器 时钟 MOSI MISO SCLK 主机 从机1 移位寄存器 时钟 从机2 端口1 端口2 SS SS 从机n 通常SPI多机通讯时,由主机选择跟那 一个从机通讯,可在端口上输出低电 平到相应从机的SS端。 英飞凌8位单片机XC866的SSC nXC866具有高速同步串行通道SSC,可与SPI兼容, 也可与8051串口方式0兼容。 n波特率可独立编程:它具有专用的,具有重装载功能 的16位波特率发生器。 n数据宽规定为28位“字符” n可先发送LSB(与8051串口方式0兼容),也可先发 送MSB(与SPI兼容) n可在时钟的上升沿或者下降沿对数据

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号