Chinaunix首页 | 论坛 | 博客
  • 博客访问: 484271
  • 博文数量: 55
  • 博客积分: 1867
  • 博客等级: 上尉
  • 技术积分: 587
  • 用 户 组: 普通用户
  • 注册时间: 2006-12-29 01:33
文章分类

全部博文(55)

文章存档

2013年(1)

2012年(2)

2011年(16)

2010年(11)

2009年(5)

2008年(10)

2007年(8)

2006年(2)

分类:

2006-12-30 17:33:15


天啊,我烧死了一大堆AVR mega8。

我有两个 mega8 的项目,都使用 RST 引脚作为 I/O, 同时也都是使用内部时钟,所不同的是一个使用 RST 作为输入,一个作为输出。对于作为输入的,编程 RSTDISBL 没有问题, 而作为输出的编程 RSTDISBL 后,烧一片死一片。

猜 想原因是, 在使用内部时钟后,一上电单片机就开始工作了,如果 RST 被编程作为输出用,这时编程器在RST脚上加 12V 高压,要么烧毁 RST 引脚 (强上拉),要么 12V 被拉到地,总之单片机是不能进入编程模式了。而作为输入使用,就没有问题,因为这时 RST 引脚一般都是弱上拉, 12V的高压还是可以加上去的。

解决办法:

1、尽量不要使用RST作为输出用,但可以安全地作为输入来使用。
2、如果一定要作为输出使用,也不是不可以,但要冒一点风险,可以在单片机上电后,延迟几秒,再初始化和使用 RST 引脚。

切记,切记!






阅读(3330) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~