搜索
bottom↓
回复: 8

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

[复制链接]

出0入0汤圆

发表于 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 [TIM0_COMP] 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)
        {


        }
}
是从你的程序改动的

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

 楼主| 发表于 2011-7-20 12:38:49 | 显示全部楼层
老是编译通不过

出0入0汤圆

发表于 2011-7-23 07:07:01 | 显示全部楼层
至少也要说明使用什么平台,以及错误提示是什么?

出0入0汤圆

 楼主| 发表于 2011-7-23 20:23:49 | 显示全部楼层
使用CVAVR 2.04老是提示中断函数这里有问题
interrupt [TIM0_COMP] void timer0_comp_isr(void)

出0入0汤圆

 楼主| 发表于 2011-7-23 20:33:58 | 显示全部楼层
interrupt [TIM0_COMPA] 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;

出0入0汤圆

 楼主| 发表于 2011-7-23 20:38:40 | 显示全部楼层
用你的例程M16可以使用,我把它改成M48,就不能使用,我是初学,没有经过正规学习,不好意思,惭愧

出0入0汤圆

发表于 2011-7-23 21:42:58 | 显示全部楼层
编译器中芯片型号要选对。
另外,M16到M48,内部的资源也有不同。
请先参考我编写的教程一步一步的把基础打好。

出0入0汤圆

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

出0入0汤圆

 楼主| 发表于 2011-7-23 23:46:34 | 显示全部楼层
我买了马老师的书慢慢学习吧,呵呵!!
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-3-29 22:11

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表