LSSP芯片使用说明
其中:
开始计数: 0:停止计数 1:表示开始计数
清寄存器: 0:表示不清空内部计数器 1:表示设置时清空内部计数器
计数方向: 0:表示计数器递增 1:表示计数器递减
计数方式: 0:一次计数,而后停止计数 1:在计数后重新开始计数
计数源 :
000: inner_clock
001: from_outer_clock
010: outer_event_pin
011: 保留
100: outer_event_pin0_inner_clock(pulse width)
101: outer_event_pin0_outer_clock(pulse width)
110: outer_event_pin1_inner_clock(pulse width)
111: outer_event_pin1_outer_clock(pulse width)
另外两个高地址寄存器按照Big-Ending方式组合为分频参数寄存器的低32位。
编程中,使用MOVI和MOVO指令来读取定时器的寄存器,具体使用中,可以首先设置定时器的计数器寄存器,最后设置定时器的控制寄存器,以启动定时器;在定时器运行过程中,可以再次写入定时器的控制寄存器,来停止定时/计数器,当停止后,读取其计数寄存器可以得到停止时,定时/计数器所计算到的值;控制定时/计数器的控制寄存器可以重新开始计数;当计数停止后,如果设置为产生事件,则相应的事件寄存器将被设置,软件可以通过读取事件寄存器来判断是否产生了定时器事件。
对于单道程序来说,定时/计数器的控制相对简单,使用步骤为:
设置某个定时/计数器的参数;
启动定时/计数器;
停止定时/计数器;
由于没有其它道程序影响,所以不需要考虑多道程序重复设置定时/计数器的情况。
对于计数/定时器的访问需要使用同步信号寄存器来同步,如果多道程序直接访问同一个定时/计数器则会定时/计数器的状态将不定。
3.6看门狗
LSSP设置一个看门狗(watchdog),用于在特殊情况下,启动LSSP或系统的复位操作。看门狗的功能通过2个特殊寄存器WDR计数器和WDER寄存器实现。watchdog功能可以被程序写WDER寄存器而被屏蔽,WDR计数器的溢出标志可以参与LSSP核逻辑复位,也可参与系统复位,用户可以根据需求而定,具体使用请参见3.2.3特殊寄存器说明。
3.7复位
3.7.1复位
在Rst#为低(大于等于8个核时钟周期)时,LSSP逻辑复位,在Rst#由低变高时,启动读外部EEPROM的序列,直到128KB外部EEPROM的内容被全部读入,芯片交给PM控制。复位操作后各寄存器的状态如表5所示。
表5 Rst#后各寄存器的值
寄存器名 复位后的值 对应引脚的状态
AR 0 0~1FFFF
DER 0
DR 0 三态,低8位为EEPROM的数据
GPBER[0] 0
GPBER[1] 0
GPBER[2] 0
GPBER[3] 0
GPBER[4] 0
GPBER[5] 0
GPBR[0] 0 三态
GPBR[1] 0 三态
GPBR[2] 0 三态
GPBR[3] 0 三态
GPBR[4] 0 三态
GPBR[5] 0 三态
GPPER[5:0] 0
GPPR[5:0] 0 三态
WDER 2
CLKDR 0
BDRR BA
TRXR 0 TX输出0,RX等待输入
CTCAR 0
CTAHR 0
CTAMR 0
CTCBR 0
CTBHR 0
CTBMR 0
LWR 0
EEeR 0
EISR 0
3.8程序加载
在Rst#由低变高时,启动读外部EEPROM的序列,读地址从0到1FFFF,共128KB;读周期为32倍核时钟频率,时序见下图12,其中CLKC为核时钟。
图12 程序加载时序
3.9块传送
为方便数据传送,提高效率,LSSP提供数据的块传输。数据的块传送可以使外部存储器到内部存储器,也可以是内部存储器到外部存储器的块移动。用户可利用指令BLTI和BLTO实现块移动。块传送时序分别如图13、14所示。
图13 BLTO操作时序
图14 BLTI 操作时序
4引脚说明
4.1引脚列表
LSSP共设置100个引脚,其中信号引脚70个,3.3V电源引脚4个,1.8V电源引脚8个,模拟1.8V引脚1个,电源地引脚13个,空脚4个,如表6所示。
表6 引脚及说明
信号名 方向 说明
A[16:0] 输出 外部RAM地址(A[15:0])和外部EEPROM地址(A[16:0]),当用户没有配置外部数据存储器时,A[15:0]可以作为可控输出信号量使用,A[16]为程序不可控。
D[15:0] 双向 外部RAM数据(D[15:0])或外部EEPROM数据(D[7:0]),当用户没有配置外部数据存储器时,D[15:0]可以作为GPIO使用。
GPIO[7:0] 双向 用户可编程IO。
GPIO[13:8] 输出 用户可编程输出,不支持输入操作。
UCK 输入 外部为内部CTA和CTB提供的计数时钟,UCK的最高频率应小于155MHz。
EC[1:0] 输入 可计数外部事件输入,高有效。EC的最小宽度为一个核时钟周期或一个UCK周期,祥见3.5.2。
EV[5:0] 输入 外部事件,高有效。当ESR[i]=1且EV[i]=1时,EV[i]被锁存,EV的最小宽度为一个核时钟周期。
RST_N 输入 芯片复位(低有效)。
CLK_I 输入 芯片时钟输入,频率为2~64MHz,占空比为20~80%。
CLK_S 输入 时钟选择,低时选择PLL的输出作为核时钟;高时选择CLKI作为核时钟。
CLK_O 输出 可编程时钟输出,比CLKI延迟3ns,占空比40~60%,Jp_p≤150ps。
CS_N 输出 外部EEPROM片选,低有效。复位后为低,直到程序加载结束。
OE_N 输出 外部RAM输出赋能,低有效。当启动BLTI操作时为低,直到BLTI操作结束。
WR_N 输出 外部RAM读写赋能,低为写。当启动BLTO操作时为低,直到BLTO操作结束。
TX 输出 UART输出。
RX 输入 UART输入。
DN[3:0] 输入 时钟倍频系数,内部上拉, 缺省时核工作频率为160MHz。
核工作频率=CLKI×(DN+1)/2,建议DN≤14,即150MHz。
WD 输出 Watchdog计数器溢出,高有效,输出宽度为512个核时钟周期,可屏蔽,参见3.2.3。
AVDD PLL电源,1.8V,这个电源必须经过滤波处理,参见4.2AVDD滤波处理。
AGND PLL地,可以和GND连接到一起。
VDDH I/O电源,3.3V。
VSSH I/O地,可以和GND连接到一起。
VDD 核电源,1.8V。
GND 核逻辑地。
NC 厂家测试用,用户不需连接。
4.2 PLL电源滤波处理
为了保证芯片内部PLL的稳定的工作,必须对其使用的电源进行滤波处理,如图15所示,其中各器件尽量靠近LSSP的AVDD引脚。
图15 AVDD滤波处理
待续。。。。。。。。。。。。。。
发表时间:2006年11月1日17:54:38