/Library/AVR_MLIB/Examples/avr_blink/avr_blink.c
0,0 → 1,96
/* ---------------------------------------------------------------------------
* AVR Blink Demo Application
* www.mlab.cz miho 2008
* ---------------------------------------------------------------------------
* Demo program for AVR processors
* Simple blinking application for ATtiny13/ATmega8 and similar
* ---------------------------------------------------------------------------
* 00.00 2008/04/18 First Version
* ---------------------------------------------------------------------------
*/
 
 
// Configuration
// -------------
 
 
// Define LED port here
// Use port available on all devices with no conflict with ISP port
#define LED B
#define LED_BIT 3
 
 
// Define CPU clock frequency here
// Do not forget to set Clock Oscillator in Low Fuse
// Select just one
//#define F_CPU 1000000UL // Frequency in Hz
#define F_CPU F_CPU_DEFAULT // Default internal RC clock frequency
//#define F_CPU F_CPU_MAX // Maximum internal RC clock frequency
 
 
// Define blink period
#define PERIOD 5000 // in ms
#define DUTY 20 // in %
 
 
// End of Configuration
// --------------------
 
 
// Helpers
#define GLUE(a,b) a##b
#define PORT(a) GLUE(PORT,a)
#define PIN(a) GLUE(PIN,a)
#define DDR(a) GLUE(DDR,a)
 
 
// Port definitions
#define LED_PORT PORT(LED)
#define LED_DDR DDR(LED)
 
 
// Processor definitions
#include <avr/io.h>
 
 
// Define clock values for selected processors
 
// ATtiny13
#if _AVR_IOTN13_H_
#define F_CPU_DEFAULT 1200000UL // Default clock 9.6MHz/8
#define F_CPU_MAX 9600000UL // Maximal internal clock
#endif
 
// ATmega8/16/32/64
#if _AVR_IOM8_H_ | _AVR_IOM16_H_ | _AVR_IOM32_H_ | _AVR_IOM64_H_ \
| _AVR_IOM88_H_
#define F_CPU_DEFAULT 1000000UL // Default clock 1MHz
#define F_CPU_MAX 8000000UL // Maximal internal clock
#endif
 
 
// Use delay library
#include <util/delay.h>
 
 
// Define ON and OFF times on PERIOD and DUTY
#define TIME_ON (1L*PERIOD*DUTY/100)
#define TIME_OFF (1L*PERIOD*(100-DUTY)/100)
 
 
// Main program
int main()
{
 
LED_DDR |=1<<LED_BIT; // Set LED port as output
 
for(;;) // Never ending story
{
LED_PORT |= 1<<LED_BIT; // Set LED port to 1
_delay_ms(TIME_ON); // Wait
LED_PORT &= ~(1<<LED_BIT); // Clear LED port to 0
_delay_ms(TIME_OFF); // Wait
}
return 0;
}
/Library/AVR_MLIB/Examples/avr_blink/bin/avr_blink_ATmega16.hex
0,0 → 1,13
:100000000C942A000C9447000C9447000C94470071
:100010000C9447000C9447000C9447000C94470044
:100020000C9447000C9447000C9447000C94470034
:100030000C9447000C9447000C9447000C94470024
:100040000C9447000C9447000C9447000C94470014
:100050000C94470011241FBECFE5D4E0DEBFCDBF16
:1000600010E0A0E6B0E0EEEBF0E002C005900D92EB
:10007000A036B107D9F710E0A0E6B0E001C01D92AC
:10008000A036B107E1F70E9449000C945D000C9482
:100090000000BB9A29E130E0C39A80E197E2F901C0
:1000A0003197F1F70197D9F7C39880E49CE9F901FA
:0E00B0003197F1F70197D9F7EFCFF894FFCF12
:00000001FF
/Library/AVR_MLIB/Examples/avr_blink/bin/avr_blink_ATmega8.hex
0,0 → 1,10
:1000000012C02CC02BC02AC029C028C027C026C0BF
:1000100025C024C023C022C021C020C01FC01EC0D4
:100020001DC01CC01BC011241FBECFE5D4E0DEBF25
:10003000CDBF10E0A0E6B0E0EAE8F0E002C0059035
:100040000D92A036B107D9F710E0A0E6B0E001C0EC
:100050001D92A036B107E1F702D015C0D1CFBB9AEF
:1000600029E130E0C39A80E197E2F9013197F1F795
:100070000197D9F7C39880E49CE9F9013197F1F72A
:0A0080000197D9F7EFCFF894FFCFF6
:00000001FF
/Library/AVR_MLIB/Examples/avr_blink/bin/avr_blink_ATmega88.hex
0,0 → 1,11
:1000000019C033C032C031C030C02FC02EC02DC087
:100010002CC02BC02AC029C028C027C026C025C09C
:1000200024C023C022C021C020C01FC01EC01DC0CC
:100030001CC01BC011241FBECFEFD4E0DEBFCDBF5C
:1000400011E0A0E0B1E0E8E9F0E002C005900D9217
:10005000A030B107D9F711E0A0E0B1E001C01D92D6
:10006000A030B107E1F702D015C0CACF239A29E129
:1000700030E02B9A80E197E2F9013197F1F701978F
:10008000D9F72B9880E49CE9F9013197F1F70197B2
:08009000D9F7EFCFF894FFCF80
:00000001FF
/Library/AVR_MLIB/Examples/avr_blink/bin/avr_blink_ATtiny13.hex
0,0 → 1,9
:1000000009C021C020C01FC01EC01DC01CC01BC015
:100010001AC019C011241FBECFE9CDBF10E0A0E661
:10002000B0E0E4E7F0E002C005900D92A036B10721
:10003000D9F710E0A0E6B0E001C01D92A036B107EC
:10004000E1F702D015C0DCCFBB9A2EE130E0C39AB5
:1000500080E197E2F9013197F1F70197D9F7C39859
:1000600080E49CE9F9013197F1F70197D9F7EFCFD7
:04007000F894FFCF32
:00000001FF