3796|6

71

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

AVR单片机定时器中断的值不能保存到主程序中--请教 [复制链接]

#include
#include
#define uchar8 unsigned char

const uchar8 Relay[] =
        {0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
uchar8 count = 0;

void time0_init(void)
{
        TCCR0 = 0x00;
        TCNT0 = 0xD9;
        TCCR0 = 0x05;//1024分频,定时器开始
}

void port_init(void)
{
        DDRC = 0xff;
        PORTC = 0x00;
}

SIGNAL(SIG_OVERFLOW0)//定时器0溢出中断
{
        TCNT0 = 0xD9;
        count++;/////////////////////////////在中断时已经执行++操作,}

void devices_init(void)
{
        cli();
        port_init();
        time0_init();

        TIMSK = 0x01;//使能溢出中断0
        sei();
}

int main(void)
{       
        uchar8 i = 0;
        devices_init();
        while(1)
        {
                if(count = 99)//////////////////////////在这里count的值怎么一直是0呢
                {
                        PORTC = Relay[i%8];
                        i++;
                        count = 0;
                }
        }       
        return 0;
}



初接触有的时 AVR ATmega128,4M,怎么会这样呢,请指教

最新回复

谢谢,5楼的 问题解决了,但是还又点不明白这是什么原因呢,  详情 回复 发表于 2009-7-9 12:47
点赞 关注

回复
举报

64

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
中断发生后中断标示没被清楚,中断只能发生一次
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
if(count = 99)//////////////////////////
if(count == 99)????
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

4
 
引用 2 楼 zyzhang365 的回复:
if(count = 99)//////////////////////////
if(count == 99)????

原来的程序if(count=99)总成立,所以总被赋值成0。揭帖吧。
 
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

5
 
这个是我拷贝时不小心搞的,当时调试时,我将if(count == 1)看他是否会进入 IF语句内,拷贝过来的时候 又改成原来的99 改
的时候多删除了一个,我用的是AVR Studio 是不是哪里没有设置好,还时怎么的,请帮忙看下,谢谢!!
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

6
 
你可以定义
volatile uchar8 count;
试试。

另外,看是不是别的地方把变量修改了。
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

7
 
谢谢,5楼的 问题解决了,但是还又点不明白这是什么原因呢,
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表