查看: 631|回复: 0
打印 上一主题 下一主题

Atmega8l+SPX3232+CC2420小板亮灯成功

[复制链接]
跳转到指定楼层
沙发
发表于 2016-5-18 22:18:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
前几天收的Atmega8l+SPX3232+CC2420小板,今天捣鼓了一下。点亮了上面那个指示灯。


测量到的接口如下。JP1其实就是ISP下载口,非常方便 。左上方两个是RS232电平的串口,左下角第二个是VCC,经过ASM1117-3.3稳压后给系统供电。JP1里面那个VCC估计不能直接接下载线的VCC,不然如果是4.5v会烧坏CC2420(猜测,我没这么接过)。


刚开始下载一直不成功,提示flash地址00处校验错误。我把接在Atmega8 RESET引脚上的电路部分元件都拆掉就好了(如下图红框里)。哪位高手知道红框中的电路是干嘛的?貌似会影响ISP下载程序。
图中三个脚的元件上面印的是NR96,是啥东东?

拆掉后能正常下载


附上我手动画的部分电路图(高手勿笑)


PB0接的是指示灯,下面是简单的亮灯测试程序
//包含所需头文件
#include <avr/io.h>
#include <avr/interrupt.h>
#include <avr/signal.h>

/*------宏定义------*/
#define uchar        unsigned char
#define uint        unsigned int
#define BIT(x)        (1<<(x))
#define NOP()        asm("nop")
#define WDR()         asm("wdr")

//端口初始化
void port_init(void)
{
        PORTB = 0x01;
        DDRB  = 0x01;
        PORTC = 0x00;
        DDRC  = 0x00;
        PORTD = 0x00;
        DDRD  = 0x00;
}

void init_devices(void)
{
        cli(); //禁止所有中断
        MCUCR  = 0x00;
        MCUCSR = 0x80;//禁止JTAG
        GICR   = 0x00;
        port_init();
        sei();//开全局中断
}
//主函数
int main(void)
{
        init_devices();
        //在这继续添加你的代码
        while(1)
        {
         NOP();
        }
        return 0;
}
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入因仑

本版积分规则

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