l.htlht 发表于 2011-7-20 12:14:58

马老师能不能帮我看看这个定时器的程序什么问题

/*********************************************
File name                  :
Chip type         : ATmega48
Program type      :CVAVR
Clock frequency   : 4.000000 MHz
Memory model      : Small
External SRAM size: 0
Data Stack size   : 256
*********************************************/

#include <mega48.h>

int        time_counter;                                // 中断次数计数单元
unsigned char        posit;
bit        point_on, time_1s_ok;


// Timer 0 比较匹配中断服务
interrupt void timer0_comp_isr(void)
{
        display();                                // 调用LED扫描显示
        if (++time_counter>=500)
        {
                time_counter = 0;
                time_1s_ok = 1;
        }
}
void main(void)
{

        // T/C0 初始化
        TCCR0B=0x0B;                                // 内部时钟,64分频(4M/64=62.5KHz),CTC模式
        TCNT0=0x00;
        OCR0B=0x7C;                         // OCR0 = 0x7C(124),(124+1)/62.5=2ms
        TIMSK0=0x02;                                // 允许T/C0比较匹配中断

        posit = 0;

        #asm("sei")                                // 开放全局中断

        while (1)
        {


        }
}
是从你的程序改动的

l.htlht 发表于 2011-7-20 12:38:49

老是编译通不过

machao 发表于 2011-7-23 07:07:01

至少也要说明使用什么平台,以及错误提示是什么?

l.htlht 发表于 2011-7-23 20:23:49

使用CVAVR 2.04老是提示中断函数这里有问题
interrupt void timer0_comp_isr(void)

l.htlht 发表于 2011-7-23 20:33:58

interrupt void timer0_compa_isr(void)   
{   
TC2A++;   
if(TC2A>=60)
{
   TC2A=0;   //中断30次就刚好是1秒钟
    sum++;
    sum1++;
    if(sum==10)
    {
      sum=0;
      time_1s_ok=1;
    }
}
   
}   
现在可以通过了,不过我不知道什么原因,呵呵,还有马老师,为什么我不能使用bit point_on, time_1s_ok;

l.htlht 发表于 2011-7-23 20:38:40

用你的例程M16可以使用,我把它改成M48,就不能使用,我是初学,没有经过正规学习,不好意思,惭愧

machao 发表于 2011-7-23 21:42:58

编译器中芯片型号要选对。
另外,M16到M48,内部的资源也有不同。
请先参考我编写的教程一步一步的把基础打好。

l.htlht 发表于 2011-7-23 23:44:55

不满马老师,我是我是现学现做,我自己搞了一个小东西,原来一个网友帮我推荐的一个方案,用M48加天威1627显示和键盘,检测加报警,他帮我写程序,我硬件都搞好了,结果不知道哪里问题他不肯搞了,打电话不接,发短信不回,搞的我都不知道哪里出了问题,现在只能自己搞,已经可以检测键盘和显示了,我水平差,只能慢慢搞

l.htlht 发表于 2011-7-23 23:46:34

我买了马老师的书慢慢学习吧,呵呵!!
页: [1]
查看完整版本: 马老师能不能帮我看看这个定时器的程序什么问题