TMR1怎么设定外接时钟源

[复制链接]
2941|5
 楼主| 西门闩 发表于 2009-8-7 15:39 | 显示全部楼层 |阅读模式
各位,我有一程序,用TMR1定时的,用外部时钟源(晶振32.768KHZ),写好后用proteus仿真,RC0/RC1(T1OSO/T1OSI)两振荡脚没有波形,是怎么回事呢?难道还要其它的设置?我的设置如下:
START
BSF STATUS,RP0 ; 选区1
CLRF PIE1 ;清除所有外设中断使能
CLRF TRISC ;设置C口为输出
BSF PIE1,TMR1IE ;使能TMR1中断
BCF STATUS ,RP0 ;选区0
CLRF STATUS ;清0状态寄存器
BCF T1CON,TMR1ON ;关闭TMR1
MOVLW 80H ;TMR1H/TMR1L=0x8000
MOVWF TMR1H ;设置1S溢出初值
CLRF TMR1L ;条件为频率是32.768KHz
CLRF INTCON ;清除所有中断标志位及使能位
CLRF PIR1 ;
BSF INTCON,PEIE ;开放外部中断
BSF INTCON,GIE ;开全局中断
MOVLW 0EH ;设置控制寄存器,预分频比1:1
MOVWF T1CON ;外部时钟源、异步、使能振荡器
MOVLW 80H ;点亮最高位LED7
MOVWF PORTC
BSF T1CON,TMR1ON ;开TMR1
请各位高手帮忙看看,在MPLAB里面,看TMR1H/L的值也没有增加啊,是不是我的设置有问题?因为主频率都可以在MPLAB的菜单里面设置成4MHZ,但是对于TMR1的振荡器(晶振32.768KHZ)用什么来设置呢?
chen3bing 发表于 2009-8-7 17:25 | 显示全部楼层
T1OSCEN=1以后,RC0,RC1均为输入。
 楼主| 西门闩 发表于 2009-8-8 10:00 | 显示全部楼层
MOVLW 0EH ;设置控制寄存器,预分频比1:1
MOVWF T1CON ;外部时钟源、异步、使能振荡器
===================================
这个已经等于1了,我编好以后,软件仿真,TMR1H/L里面的数据没有增加,用proteus仿真,在RC0与RC1是根本看不到振荡的波形。
hsw_21 发表于 2009-8-8 11:27 | 显示全部楼层
proteus 软件仿真真的有用吗?
chen3bing 发表于 2009-8-8 14:02 | 显示全部楼层
我也用PROTEUS仿真了一下,如果在RC0,RC1两个腿上加同频率的脉冲,TMR1H/L数据有增加。
(在程序里判断TMR1H/L增加值,置位某一位IO口。)
 楼主| 西门闩 发表于 2009-8-8 14:43 | 显示全部楼层
意思就是用软件没法仿真TMR1的外部时钟源了?
如果这样,用MPLAB仿真,只有在RC1加激励源了,先试试,多谢楼上兄台指点。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

73

主题

294

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部