笨小孩求学记之一:请教傻孩子,智峰以及能够点亮 M88 的先学着
打算学AVR了,用的是傻孩子书上的电路图焊接的,程序是用USBASP下载的,
HEX文件时傻孩子的闪烁灯测试程序,
问题是:
1.能够正常擦写程序,但是单片机就是不工作。
2.具体现象就是:输出端好像只有3引脚是高电平,
********************************源代码*************************
/*********************************************************/
/* */
/* ATmega48/88/168实验电路板测试软件 */
/* */
/* 编写:江海波 */
/* */
/* 2007-02 V1.0 */
/* */
/* 提示 : 本程序仅随本书使用,保留版权 */
/* 实例代码用于工程时应谨慎! */
/* */
/* E-mail : soundman@sohu.com */
/* */
/*********************************************************/
#include <iom48v.h>
#include <macros.h>
void Delay_mS(unsigned int Time)
{
unsigned char n;
while(Time>0)
{
for (n=1;n<187;n++)
{
asm("nop");
}
Time--;
}
}
void main (void)
{
DDRC=0xFF;
PORTC=0xAA;
DDRB=0xFF;
PORTB=0xAA;
DDRD=0xFF;
PORTD=0xAA;
while(1)
{
Delay_mS(500);
PORTC^=0xFF;
PORTD^=0xFF;
PORTB^=0xFF;
}
}
*********************************************************************
焊接的电路板不工作,临时有搭接了一个,现象相同。
http://cache.amobbs.com/bbs_upload782111/files_21/ourdev_496179.jpg
(原文件名:图片 001.jpg)
http://cache.amobbs.com/bbs_upload782111/files_21/ourdev_496189.jpg
(原文件名:图片 002.jpg)
http://cache.amobbs.com/bbs_upload782111/files_21/ourdev_496190.jpg
(原文件名:图片 003.jpg)
http://cache.amobbs.com/bbs_upload782111/files_21/ourdev_496191.jpg
(原文件名:图片 004.jpg)
http://cache.amobbs.com/bbs_upload782111/files_21/ourdev_496192.jpg
(原文件名:图片 005.jpg)
http://cache.amobbs.com/bbs_upload782111/files_21/ourdev_496193.jpg
(原文件名:图片 006.jpg)
http://cache.amobbs.com/bbs_upload782111/files_21/ourdev_496194.jpg
(原文件名:截图00.jpg) 是不是软件还要进行一些设置呢,
电路是最小系统。 是不是熔丝位的问题. 还不懂关于熔丝位的东西啊 既然能编程.说明时钟能工作
所以,先不管熔丝了,反正都可以工作.
另外 别忘了勾下"数据自动重载"
既然上面都输出0xAA
下面的
while(1)
{
Delay_mS(500);
PORTC^=0xFF;
PORTD^=0xFF;
PORTB^=0xFF;
}
就可以不要了,直接while(1)即可...
到时测得一高一低即为正常.
另外,你用什么编译器?^= 0xFF;是什么意思? 编译器设乱了,也有可能出问题。
^= 0xff 取反 to 【4楼】 aozima
---------------------------
http://cache.amobbs.com/bbs_upload782111/files_21/ourdev_496433.jpg
(原文件名:截图00.jpg)
*******************************
虽然能正常下载程序(智峰软件上显示的),
但是单片机的所有引脚就像悬浮的似的,没有任何反映。
奥,对了好像第三引脚有程序是高电平 编译器不是下载软件,
你把程序改成第三脚变成低电平看看你的程序受控不? 程序是没问题的,你看下电路 to 【4楼】 aozima
to【7楼】 USB_Study
-------------------------------
程序我不太明白,是从傻孩子的书《深入浅出AVR单片机》光盘里COPY的, 下载到M88中的HEX也时光盘里的 roberzhao
学过数电后还说这样的话,就真该撞墙喽 请问楼主啥专业的 自动化,大二, 学校刚开始学模电。 把高位熔丝--WDTON的"1",变成'0',然后把“编程熔丝”前面的勾打上去。在按自动 谢谢,我现在回实验室在试试。 我比较怀疑,他的编译器工程选项没有选择到正确的芯片…… to 【16楼】 Gorgon Meducer 傻孩子
-----------------------------------
果然聪明,
感谢大家的帮助,
原因找到了,
1.芯片有误,错将M8(ATMEGA8L-8PU)当成M88.
2.工程中与智峰软件中都是选的M88,却烧到了M8中去了。
3.刚开始对下载程序软件还不会使用,尤其是需要设置一些东西的时候。
***********
选错芯片的起因:
当时邮寄芯片的时候,没有傻孩子书中的M48,我想那就用M88代替吧,没成想却把ATMEGA8L-8PU(有两个8^_^)当成了M88.
却带来了这么都麻烦。
还行请问傻孩子用M8做你书中的实验,书中的程序除头文件要变成#include<iom8v.h>需要修改吗?
如果改动较大,我打算在去买个M48(尽量与你书中的硬件做到完全相同,避免不必要的麻烦,就像这次似地) M8可以做一部分实验,就是那些跟外设联系不紧密的,联系紧密的,建议用48或88。
另外恭喜楼主,这个不是你的问题,是下载软件没有做好,下载前应该校验芯片类型。 除了Bootloader以外,M88可以完全替代M48……
还有,由于书写得比较早,现在建议用
#include <iccioavr.h>替代 #include <iom8v.h>之类的东西…… 谢谢,两位:)
【18楼】 NE5532 江海波
【19楼】 Gorgon Meducer 傻孩
页:
[1]