一件奇怪的事.timer1里要用到timer0的设置是为什么?

2020-02-08 09:15发布

本帖最后由 sn516952 于 2012-5-11 10:35 编辑

16F685的芯片.
void timer1_init(void)
{       

        T1CKPS1=0;
        T1CKPS0=0;//00: 预分频1:1
        TMR1IE = 1;//允许timer1溢出中断
        TMR1H=0xF8;                //赋值TMR1H
        TMR1L=0x48;                //赋值TMR1L 0xF848=1ms
        TMR1CS = 0;//不与外部输入时钟同步
        TMR1IF = 0;//溢出中断标志位.1=溢出.
        //以下两行少了就不工作.
        T0CS=0;//0= T0CS位清零选择定时器模式 内部指令周期时钟FOSC/4
        T0IE=1;//1= 允许Timer0中断

        TMR1ON =1;//使能timer1门控
        TMR1IE=1;
        GIE=1;//开总中断
}

偶然间发现  

        T0CS=0;//0= T0CS位清零选择定时器模式 内部指令周期时钟FOSC/4
        T0IE=1;//1= 允许Timer0中断

timer1里面要加上这两句才工作. datasheet里也没有注明两个定时器有相关的地方.
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
21条回答
sam_zhang
1楼-- · 2020-02-08 10:24
本帖最后由 sam_zhang 于 2012-5-11 16:32 编辑

肯定你程序写的不对,手册里没有那样初始化
sn516952
2楼-- · 2020-02-08 15:08
sam_zhang 发表于 2012-5-11 16:31
肯定你程序写的不对

程序已经贴出来了,//掉那两句就不行.事实就是这样.
mcujack
3楼-- · 2020-02-08 15:11
会不会是T1的定时后作为T0的时钟输入
sn516952
4楼-- · 2020-02-08 20:04
PIC16F690中文资料.pdf (6.63 MB, 下载次数: 1) 2012-5-11 17:15 上传 点击文件名下载附件

同时上传datasheet,哪位朋友看一下问题出在哪里
sn516952
5楼-- · 2020-02-09 00:23
 精彩回答 2  元偷偷看……
mcujack
6楼-- · 2020-02-09 01:55
sn516952 发表于 2012-5-11 17:17
有这个功能吗?  刚才我又试了下.就是少不了那两句.

我这个的单片机有这样的功能的

一周热门 更多>