****Upgraded 01-03-2010 ***** Now it works also in Arduino 0018 IDE attention to the new position of cores ******** ****Upgraded ***** found an error on the schematic, corrected ******* not for newbies ****** you MUST have experience with AVR chips and a good relationship with soldering iron ****** Few weeks ago out of curiosity (and by the way the need to have a simple way to program ATTiny45 for simple tasks) I started to look into adding ATtiny45 as processor into Arduino IDE. First thing I did was designing a board for Attiny45, something on the tune of the arduinos boards, still modifying it, but usable right now ( schematic Visualizza and board Visualizza or Eagle pkg Scarica ), then started to look into adding to the IDE. Being the lazy person I am , I decided to go with the quickest route modify an existing core set of files and use an external programmer . Looking in the net for clues found a set of cores files for another Tiny chip and modified them to suit the tiny45, dropped them into the cores folder in the ide and i was ready to roll !!! piece o' cake ... really, just some minor snafus took me a few day to iron out, but now it's ok. You can find my set of cores files here Scarica Some information useful that come out from a discussion in the Arduino Forum You HAVE to modify "board.txt" to include the Attiny45 processor, add this part to end of the file attiny45.name=Arduino w ATtiny45 attiny45.upload.protocol=stk500 attiny45.upload.maximum_size=4096 attiny45.upload.speed=19200 attiny45.bootloader.low_fuses=0xdf attiny45.bootloader.high_fuses=0xca attiny45.bootloader.path= attiny45 attiny45.bootloader.file=ATmegaBOOT.hex attiny45.bootloader.unlock_bits=0x3F attiny45.bootloader.lock_bits=0x0F attiny45.build.mcu=attiny45 attiny45.build.f_cpu=8000000L attiny45.build.core=attiny45 these line will define the board giving max memory size for program (4096) and instruct the compiler to build code for the tiny45. to know which mcu are supported by avr-gcc and their names use avr-gcc --target-help in a terminal window (works in Mac OSX and probably in Linux) PIN MAPPING The best I can do for the pin mapping is in the pins_arduino.c in the core folder, the function are multiple per pin depends on the function you use to refer to the pin; I.E. analogWrite (0,231) // output a pwn signal to real pin 5 digitalRead(5) // read a digital value from real pin 1 analogRead(5) // read an analog value from real pin 1 and so on ... like in a real arduino . Use it , modify it, and report here or in the Arduino forum thank you for your time and enjoy ! |