Sonsivri
 
*
Welcome, Guest. Please login or register.
Did you miss your activation email?
April 19, 2024, 12:52:45 00:52


Login with username, password and session length


Pages: [1]
Print
Author Topic: Attiny2313 Low Fuse Byte accidentally programmed as 0x00  (Read 5536 times)
0 Members and 1 Guest are viewing this topic.
firewalker
Active Member
***
Offline Offline

Posts: 157

Thank You
-Given: 19
-Receive: 88


« on: December 05, 2007, 10:48:08 10:48 »

Using the programmer at bottom address and with avrdude I programmed the Low Fuse Byte at the value of 0x00. After that the avr stopped to respond in any further programming. Like it can't communicate with the programmer. I tried with an without an external crystal. The programmer uses the SPI method for programing the device. Is there any way to restore it?

The programmer.

http://www.tuxgraphic.org/electronics/200510/article05101.shtml
« Last Edit: December 05, 2007, 10:58:04 10:58 by firewalker » Logged
hate
Hero Member
*****
 Warned
Offline Offline

Posts: 555

Thank You
-Given: 156
-Receive: 355


« Reply #1 on: December 05, 2007, 11:07:42 11:07 »

If your low fuse bytes are all programmed (0x00 indicates all are programmed) you'll need an external clock  to program it again. But you should also check your high fuse byte for 'Reset' fuse is programmed or not. If you cannot program it again with an external crystal then your crystal frequency may be the problem or the 'Reset' fuse which I previously mentioned!

Regards...
Logged

Regards...
firewalker
Active Member
***
Offline Offline

Posts: 157

Thank You
-Given: 19
-Receive: 88


« Reply #2 on: December 05, 2007, 11:15:32 11:15 »

I can't check the High fuse. The avr doesn't comunicate.
Logged
sfiga69
Active Member
***
Offline Offline

Posts: 186

Thank You
-Given: 193
-Receive: 159


In the order is preserved, in the mess is created.


« Reply #3 on: December 05, 2007, 01:16:52 13:16 »

I have had the same problem with a atmega48 during internal clock calibration.
To restore it, you can use a parallel programmer.
With the serial programmer not all the fuse bit are accessible.
Logged
8K51
Junior Member
**
Offline Offline

Posts: 80

Thank You
-Given: 86
-Receive: 40


« Reply #4 on: December 05, 2007, 07:02:49 19:02 »

I agree with sfiga69 : in such case parallel programing is the way to restore initial serial programming way.
You can find a simple parallel mode programmer for parallel port among another ones in this page:
http://elm-chan.org/works/avrx/report_e.html
Very usefull site.....
Regards
« Last Edit: December 05, 2007, 07:08:37 19:08 by 8K51 » Logged
chyun3
Junior Member
**
Offline Offline

Posts: 65

Thank You
-Given: 43
-Receive: 6


« Reply #5 on: December 06, 2007, 05:25:40 05:25 »

Hi....u can use  high voltage programmer and all your problem will be solve...

example of high volatge programmer --> STK500
http://www.der-hammer.info/hvprog/index_en.htm
Logged
firewalker
Active Member
***
Offline Offline

Posts: 157

Thank You
-Given: 19
-Receive: 88


« Reply #6 on: December 06, 2007, 10:55:51 10:55 »

I finally made it work. I programmed an ATmega8 with a 12 MHz crystal for use as an extrernal clock and aplied the signal to Xtal1 (pin 5) of the tiny2313. I also applied the option -B 32 to "slow down" avrdude. Thanks you Guys.

The code for the ATmega8

Code:
#include <avr/io.h>

#define INIT DDRC|=_BV(PC0)

#define ON PORTC&=~_BV(PC0)

#define OFF PORTC|=_BV(PC0)

#define nop()  __asm__ __volatile__("nop")

int main(void)
{
        INIT;
        OFF;
        while(1){
                nop();
                ON;
                nop();
                OFF;
        }
   return(0);
}

« Last Edit: December 06, 2007, 12:53:01 12:53 by firewalker » Logged
Pages: [1]
Print
Jump to:  


DISCLAIMER
WE DONT HOST ANY ILLEGAL FILES ON THE SERVER
USE CONTACT US TO REPORT ILLEGAL FILES
ADMINISTRATORS CANNOT BE HELD RESPONSIBLE FOR USERS POSTS AND LINKS

... Copyright © 2003-2999 Sonsivri.to ...
Powered by SMF 1.1.18 | SMF © 2006-2009, Simple Machines LLC | HarzeM Dilber MC