微控制器AduC812通用数据端口介绍及P1口的应用
2.3 定时器和计数器的数字输入
AduC812具有3个16位的定时器/计数器,即定时器0、定时器1和定时器2。定时器/计数器硬件已包含在片内,用以减轻用软件实现定时器/计数器功能时,处理期内核固有的负担。每一个定时器/计数器包含两个8位寄存器THx和TLx(x=0、1、2)。所有3个定时器/计数器均可配置成定时器或事件计数器。
在定时器功能中,每个机器周期TLx寄存器增量。因此可以把它看作对机器周期计数。在计数器功能中,TLx寄存器根据其对应的外部输入引脚T0、T1或T0上的1至0的跳变增量。
在P1口中,T2是定时器2数字输入,输入至定时器/计数器2。当被使能时,对应于T2输入的1至0的跳变,计数器2增量。T2EX是数字输入,计数器2 Capture/reload捕获/重载(触发并用作计数器2 Up/Down上/下)控制输入。在ADCCON1.1中,T2C设置定时器2转换位,可把定时器2的溢出位用作ADC转换起始触发脉冲输入。
由于AduC812与8051有兼容的内核,因而AduC812定时器2的原理与功能可简单地概括如下:
AduC812中的定时器/计数器2是一个具有16位自动重装载或捕获能力的定时器/计数器,T2CON是它的专用控制寄存器,如图3所示。
![AduC812中的定时器/计数器](http://m.amcfsurvey.com/editerupload/fetch/20130926/172008_4_0.jpg)
在定时器和计数器工作方式下,都可以通过T2CON中的控制位CP/2来选择捕获能力或重载能力。TH2和TL2内容的捕获或自动重载是通过一对捕获/重载寄存器RCAP2H和RCAP2L实现的。当CP/RL2=0时,选择自动重装载功能,即把RCAP2H和RCAP2L的数据自动转入TH2和TL2;当C/RL2=1时,选择捕获功能,数据传送方向恰与上述方向相反。
捕获或重载发生于下面两种情况:
(1)定时器2的寄存器TH2和TL2溢出时,若
CP/RL2=0,则打开重装载的三态缓冲器,把RCAP2H和RCAP2L的数据自动转入TH2和TL2中,同时溢出标志位置1,申请中断。
(2)当EXEN2=1且T2EX端的信号有负跳变时,CP/RL2是0还是1,将发生捕获操作或重载操作,同时标志位EXF2置1,申请中断。例如,利用定时器2测量周期如图4所示。
![利用定时器2测量周期](http://m.amcfsurvey.com/editerupload/fetch/20130926/172008_4_1.jpg)
通过下面程序的运行,定时器2的TL2、TH2定时值就是周期T的值。
![程序](http://m.amcfsurvey.com/editerupload/fetch/20130926/172008_4_2.jpg)
2.4 SPI串口选择输入
AduC812提供了三种串行I/O端口:UART接口、I2C兼容的串行接口和串行外设接口(SPI)。其中,SPI接口是工业标准的同步串行接口,是一种全双工、三线通讯的接口,它允许MCU与各种外围设备以串行方式(8位数据同时同步地被发送和接收)进行通信。主时钟可以编程为不同的状态,既可编程为四种不同主波特率中的任一种,又可对时钟的极性和相位进行编程。SPI也可用于那些需要比微控制器上的并行I/O端口更多输入端或输出端的场合,因而提供了一种只需使用最少的微控制器引脚的扩展I/O功能的最简单办法。
SPI系统通过使用4条线与多种标准外围器件直接接口:串行时钟线SCLOCK、主机输入/从机输出数据线MISO、主机输出/从机输入数据线MOSI和低电平有效的从机选择线SS(其中SS在PI口中)。
由于AduC812中的SPI串口有主模式和从模式两种工作模式,因此系统可配置为主(Master)操作或从(Slave)操作。在用户系统中,AduC812既可作为主MCU,也可作为从MCU。在主模式下,伴随每一位数据的发送/接收发送一次时钟,此时AduC812作为主机控制数据向从外围器件传送。而在从模式下,每一位数据都是在接收到时钟信号之后才发送/接收,SPI总线可在软件的控制下构成各种简单或复杂的系统。例如:1个主MCU和几个从MCU;几个从MCU相互连接构成多主机系统(分布式系统);1个主MCU和1个或几个从I/O设备。在大多数应用场合中,使用1个MCU作为主机,控制数据向1个或多个从外围器件传送。从器件只能在主机发命令下才能接收或向主机传送数据。其数据的传输格式是高位(MSB)在前,低位(LSB)在后。
SS作为从单片机的SPI输入端,是AduC812特有的功能,通过SS将主单片机中的数据传送到从单片机,从而实现主单片机对从单片机的信息传送。
AduC812的P1口兼容了MCS51系列单片机的功能,而且又有着自己独特的多种其它可实现的功能。这样,在一片单片机上利用P1口可以实现尽可能多的功能。
评论