登录注册
论坛
一粒金砂(初级)
5
0
QQ截图20200526194528.png (220.15 KB, 下载次数: 0) 下载附件 保存到相册 2020-5-26 19:47 上传 QQ图片20200526194901.png (34.06 KB, 下载次数: 0) 下载附件 保存到相册 2020-5-26 19:49 上传
QQ截图20200526194528.png (220.15 KB, 下载次数: 0)
下载附件 保存到相册
2020-5-26 19:47 上传
QQ图片20200526194901.png (34.06 KB, 下载次数: 0)
2020-5-26 19:49 上传
用MPLAB X IDE想试一下ATMEGA这个单片机,程序编译通过,下载的时候也选择的是内部8MRC振荡,可是实际到单片机上电运行的时候看灯闪烁的状态怎么变成了1M的,之前用ATMEL AUDIO写的程序生成的HEX文件用同样的方法烧录到单片机里可以正常运行,但把C程序复制到MPLAB X IDE里编译通过,把HEX文件烧录到单片机,震荡频率就变成了1M,搞不懂是什么原因呢
扫一扫,分享给好友
版主
1万
25
avr单片机有个CLKDIV8的熔丝位,默认是设置的,你没有修改吧。
dcexpert 发表于 2020-5-26 21:29 avr单片机有个CLKDIV8的熔丝位,默认是设置的,你没有修改吧。
太感谢提醒了,厉害,我一个人摸索确实是不行啊
问题出在这里:
这样的写法
#include <avr/io.h> #define F_CPU 8000000UL #include <util/delay.h>
和这样的写法
#include <avr/io.h>
#include <util/delay.h> #define F_CPU 8000000UL
对工作频率影响特别大,
按前面的那种写法配置位设置为不分频程序才能正常运行
按后面的写法配置位必须8分频程序才能正常运行
能请教一下这个怎么理解呀,
发表回复 回帖后跳转到最后一页
论坛测评队员
EEWorld Datasheet 技术支持
查看 »