英飞凌xc866学习手册.ppt
《英飞凌xc866学习手册.ppt》由会员分享,可在线阅读,更多相关《英飞凌xc866学习手册.ppt(73页珍藏版)》请在三一办公上搜索。
1、英飞凌8位单片机增强内核的51单片机XC866,(自动化学院单片机原理课程补充内容)康戈文 07年编写,主要包含以下内容:,XC866单片机体系结构并行接口的配置(基本端口操作)I2C 总线,SPI 总线AD 转换器定时器2及定时器中捕获比较单元及PWM输出。根据课时进行选择讲解,XC866 单片机特点,与8051兼容内核具有片内振荡器和锁相环产生时钟具有片内看门狗WDT8通道 10位AD转换器具有PWM产生的捕获比较单元CCU6支持片上调试(JTAG)和在线编程ISP3个定时器,256字节RAM,4KB FLASH+16K ROM,512字节XRAM两个DPTR 双数据指针支持多种省电模式,
2、XC866单片机结构,XC866单片机引脚,多功能引脚举例,P0.0 引脚12TCK_0 JTAG 时钟输入T12HR_1 CCU6 定时器12 硬件运行输入CC61_1 捕获/比较通道1 输入/输出CLKOUT 时钟输出RXDO_1 UART 发送数据输出P0.1 引脚14TDI_0 JTAG 串行数据输入T13HR_1 CCU6 定时器13 硬件运行输入RXD_1 UART 接收数据输入COUT61_1 捕获/比较通道1 输出EXF2_1 定时器2 外部标志输出,XC866的存储器结构,8K 启动(boot)ROM 地址:C00H-E000H256字节片内RAM,07FH使用直接寻址,80
3、FFH使用寄存器间接寻址128字节SFR 地址80FFH,使用直接寻址512字节XRAM 地址F000F200,使用MOVX访问。当使用R0,R1作地址寄存器时,其XRAM地址的高位地址由寄存器XADDRH 中的值定义。8K/16K 程序存储器,起始地址0000特殊的EO寄存器操作,允许切换DPTR以及对程序ROM写操作(指令:MOVC(DPTR+),A)实现软件更新,扩展操作寄存器(EO),指令集还包括一条指令MOVC(DPTR+),A,允许对程序存储器写操作。初始化CPU 时用该指令将代码下载到程序存储器中,也用该指令进行软件更新该指令将累加器中的内容复制到当前数据指针指向的程序存储器地址
4、中,接着数据指针加1。该指令的操作码为A5H,和软件断点指令TRAP 的操作码相同(见表 2-1)。位EO.TRAP_EN 用来选择A5B 操作码执行的指令。当TRAP_EN 为0(缺省值)时,A5H执行MOVC 指令;当TRAP_EN 为1 时,A5H 执行软件断点指令TRAP,该指令将CPU 切换至调试模式执行断点操作。,EO,扩展操作寄存器 复位值:00HDPSEL 数据指针选择0 选择DPTR01 选择DPTR1TRAP_EN TRAP 使能位0 选择MOVC(DPTR+),A1 选择软件TRAP 指令,扩展的SFR,由于XC866功能强大,128个字节的SFR不够用,特作了映射和分页
5、处理对地址8FH的SYSCON0寄存器位0(RMAP)写1可以访问映射区的SFR映射后的SFR还不够用,再采用分页进行管理:对MOD_PAGE寄存器的低3位(PAGE)进行设置,可以访问需要的SFR页。,资料p51-p59,基本端口结构,端口相关寄存器,PX_PUDSEL 上拉/下拉选择寄存器PX_PUDEN 上拉/下拉使能寄存器PX_OD 漏极开路控制寄存器PX_DIR 方向寄存器(P2口只能作为输入)PX_ALTSEL0 第二功能选择寄存器0PX_ALTSEL1 第二功能选择寄存器1PX_DATA 端口数据寄存器其中PX的X为端口编号,寄存器都是8位,每位对应一个引脚回忆:51单片机没有这
6、些寄存器准双向口,端口控制寄存器介绍1,PX_DATA 端口数据寄存器8位,作为输出时,存放输出的端口数据,作为输入时,可以读到端口引脚的锁存值。PX_DIR 方向寄存器8位,双向口时,0输入,1输出单项输入口时(P2口),0禁止输入驱动,1输入驱动使能,端口控制寄存器介绍2,PX_OD 漏极开路控制寄存器8位,0正常模式,1开漏输出模式PX_PUDSEL 上拉/下拉选择寄存器8位,0下拉,1上拉PX_PUDEN 上拉/下拉使能寄存器8位,0禁止上拉或者下拉,1使能,端口控制寄存器介绍3,PX_ALTSEL0 第二功能选择寄存器0PX_ALTSEL1 第二功能选择寄存器1两个8位,对应位的两个
7、寄存器组成2位控制代码,其意义如下:GPIO通用输入输出,P109-p141,I2C总线和SPI总线,I2C总线和SPI总线同属于“位同步”的串行接口,但又有一些不同点:51的串口方式0(回忆)I2C总线的数据信号需要:起始、停止和ACK信号,要求对方作应答SPI总线:两条串行数据线,一条时钟线。数据线分输出和输入。对多个外部芯片,还需要片选CS。,I2C总线介绍,I2C总线是PHILIPS公司提出的“片间总线”的英文缩写典型应用在串行E2PROM存储芯片的读写中。常见型号有24CXX,24LCXX,94CXX等,这里XX表示容量,单位1KBIT。例如24C02表示容量2KBIT256字节这类
8、芯片有8个引脚,除2个电源,三个地址,一个备用外,剩余两个引脚就是I2C的SDA和SCK。器件的3个地址由电路链接设定(接GND或者接VCC),可以确定8个器件的不同地址。这类存储芯片常用于掉电需保存的数据存储,例如彩电频道信息,产品特性信息等。,I2C总线电路链接,I2C总线使用2条通讯线路:SDATA和SCLK。SDATA为双向串行数据线,SCLK为同步时钟,通常由单片机发出。器件自身地址3个引脚用“接地/接电源”方式确定,各器件应当设计为不同地址。(最多8个器件,地址:07),单片机,器件 1,器件 n,SDATA,SCLK,。,I2C 总线基本时序,(A)总线空闲,当SCL和SDA都为
9、高电平时(B)START 数据开始传输,当SCL为高时,SDA变低。(C)STOP 数据停止传输,当SCL为高时,SDA由低变高。(D)数据有效,当SCL高电平期间,SDA为一个稳定电平。即:先发出SDA数据,然后在SCL线上产生一个正方波。,I2C总线E2PROM常见封装,A0A2 芯片地址,链接VCC/GND确定,访问命令中应包含此芯片的地址。SDA 双向串行数据线SCL 同步时钟线VSS=GNDPIN 7 一些芯片定义为“写保护WP”,设为低电平时不能对芯片写入。常见型号:24CXX,94CXX,其中XX为容量(K位),例如XX=02,容量2048/8256字节,图中XX=65,容量为8
10、KB,I2C 总线操作时序和控制码,容量超过256字节时,地址长度为两字节,ADDR1和ADDR0,其中ADDR1为高地址,ADDR0为低地址;在控制码、ACK后,送ADDR1、ACK、ADDR0、ACK,然后是数据。字节写:一次一字节。页写:前面部分同“字节写”,一次可连写8字节控制码前4位为标志,其后3位为器件地址,最末位为1则读,为0则写。,XC866实验四:ZLG7290显示和键盘扫描,ZLG7290和HD7279/7289等芯片是专用于LED数码管显示和键盘扫描的专用芯片,单片机可以通过I2C总线与其相连实现显示控制和键盘扫描。单片机对芯片用约定的命令对其进行初始化,然后把显示数据送
11、入芯片内部的显示寄存器,就能在数码管上看到显示结果。芯片自动扫描键盘和刷新显示。一旦有键按下会发出中断申请。SDA 串行数据,输入SCL 串行移位时钟,输入INT 中断申请输出(有键按下),低电平RST(低电平)复位输入SA;SB;SC.SG;DP 数码管8个笔划。KR0;KR1KR7键盘阵列”行”。SA/KR0;SB/KR1.分时使用DIG0/CK0;DIG1/CK1;.8个数码管选择和8列键盘扫描共用信号,模拟I2C总线要点,编写几个子程序,分别完成和产生:START;STOP;ACK;NOACK以及写数(发送)读数(接收)功能,然后按照芯片规定的时序依次调用它们。例如随机读:START、
12、发控制字(写命令)、ACK、写ADDR1、ACK、写ADDR0、ACK、发START、发控制字(读命令)、读数、STOP前面8051部分已经举例说明过模拟方式写数和收数程序,这里再举例START和STOP,产生START和STOP,(1)起始位送出起始位,若SDA和SCL不全高,起始位发送失败,返回C=1,发送成功则返回C=0。START:SETB SDASETB SCLJNB SDA,RETERRJNB SCL,RETERRNOPCLR SDANOP5CLR SCLCLR CJMP RETSTRETERR:SETB CRETST:RET,(1)停止位STOP:CLR SDANOPNOPSET
13、B SCLNOPNOPNOPNOPNOPSETB SDARET,写数举例同时判读ACK,返回时如果C=0则发送成功,(3)写数数据存在ACC中,程序返回为C=ACKSEND:PUSH BMOV B,#8;8位数SENDLP:RLC AMOV SDA,CNOPSETB SCLNOP4CLR SCLDJNZ B,SENDLP;判8位完否SETB SDA,;以下读取ACKNOPNOPSETB SCLNOP4MOV C,SDACLR SCLPOP BRET,SPI总线结构,SPI总线使用三条信号线,除SCLK外,两条串行数据线MISO和SIMO。字母M为“主”,字母S为“从”,I入O出。SPI总线:主
14、方(MAST)和从方(SLAV)都有各自的“移位寄存器”,并且串连在同一条电路上,主方发出的移位时钟同时移动两个“移位寄存器”,主方的数据发向从方,同时也将从方数据读回。可以并联多个从机,主/从机可以用软件设定,SCLK只能由主机发出。SPI数据顺序是高位(MSB)先发/先收。(注:与8051串口方式0相反),常见的SPI多机通讯,英飞凌8位单片机XC866的SSC,XC866具有高速同步串行通道SSC,可与SPI兼容,也可与8051串口方式0兼容。波特率可独立编程:它具有专用的,具有重装载功能的16位波特率发生器。数据宽规定为28位“字符”可先发送LSB(与8051串口方式0兼容),也可先发
15、送MSB(与SPI兼容)可在时钟的上升沿或者下降沿对数据进行移位可产生移位时钟或者接收移位时钟名称有所不同:MOSI=MTSR,MISO=MRST,XC866的SSC双工方式,XC866没有SS从机选择引脚。可以增加这个选择信号,也可以用特殊命令进行选择。被选中的从机才可以使能MRST,否则大家都输出移位寄存器中的数据会导致。所有从机CLK引脚应当设置成输入方式。,时钟极性和数据顺序,CON寄存器的PO和PH位决定时钟极性。如图所示。CON寄存器的HB位决定先发送LSB或者MSB,HB=0 先发送/接收LSBHB=1先发送/接收MSB,引脚信号,MRST 主机接收(串行数据)(MOSI)MTS
16、R 主机发送(串行数据)(MISO)SCLK 双向,主机发送的移位时钟,作为从机时为输入,SSC组成框图,SSC的部分相关寄存器介绍,CON SSC控制寄存器,16位,分别是:CONH和CONL根据CON中的CONH.EN设定,可为:CONH.EN0 编程模式,实现控制功能CONH.EN1 工作模式,状态标志,控制寄存器CONH编程模式介绍EN=0,TEN=1允许发送出错中断REN=1允许接收出错中断PEN=1允许相位出错中断BEN=1允许波特率出错中断AREN=1波特率出错时SSC被自动复位MS=1主机模式,MS=0从机模式EN=0 禁止发送和接收,编程模式O 保留,控制寄存器CONL介绍,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 英飞凌 xc866 学习 手册

链接地址:https://www.31ppt.com/p-5827129.html