Hallo,
ich versuche mit einem ATtiny13 impulse von 10mS zu bekommen. Das klappt
einfach nicht. Ich habe im Augenblick einen externen Clock von 8Mhz.
Alles angegeben unter Optionen. Heraus kommen aber 16mS breite Impulse.
Was mache ich verkehrt?
1 | #include <avr/io.h>
|
2 | #include <util/delay.h>
|
3 | int main()
|
4 | {
|
5 |
|
6 | DDRB = (1 << DDB0) | (1 << DDB1);// PORTB als Ausgang
|
7 | while( 1 )
|
8 | {
|
9 |
|
10 | PORTB = (1 << PB1) | (1 << PB0);//LED an PB0 PB1 ein
|
11 |
|
12 | _delay_ms (2);
|
13 |
|
14 |
|
15 | PORTB = (0 << PB1) | (0 << PB0);//LED an PB0 PB01 aus
|
16 | _delay_ms (2);
|
17 |
|
18 | }//endlos (while1)
|
19 |
|
20 | }//Main
|
avr-gcc -mmcu=attiny13 -Wall -gdwarf-2 -std=gnu99 -DF_CPU=8000000UL
-Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD
-MP -MT simulator.o -MF dep/simulator.o.d -c ../simulator.c
avr-gcc -mmcu=attiny13 -Wl,-Map=simulator.map simulator.o -o
simulator.elf
avr-objcopy -O ihex -R .eeprom -R .fuse -R .lock -R .signature
simulator.elf simulator.hex
avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load"
--change-section-lma .eeprom=0 --no-change-warnings -O ihex
simulator.elf simulator.eep || exit 0
avr-objdump -h -S simulator.elf > simulator.lss
AVR Memory Usage
----------------
Device: attiny13
Program: 104 bytes (10.2% Full)
(.text + .data + .bootloader)
Data: 0 bytes (0.0% Full)
(.data + .bss + .noinit)
Build succeeded with 0 Warnings...
Die Ausgabe im Bulid Fenster.
Verwendet wird AVR Studio AVR Studio 4.15.623 mit WinAVR-20081205