TV-B-Gone mit Attiny2313

Gast #1552038
Hi Leute,
es geht darum das ich TV-B-Gone mit einem Attiny2313 aufbauen will.
Hardwaremäßig ist alles fertig, nur bei der Programmierung haperts 
gerade.
Anbei der Quellcode von TV-B-Gone.
AVR Studio gibt mir beim "compilen" bei der Textzeile n Error:

 // turn off output to IR emitter on 0C0A (PB2, pin 14) for offTime
  TCCR0B &= 0b11111000;  // CS02:CS00=000 to stop Timer0
  TCCR0A &= 0b00111111;  // COM0A1:0=00 to disconnect 0OC0A from PB2 
(pin 14)
  PORTB &= 0b11111011;   // turn off IR emitter on 0C0A (PB2, pin 14) in 
case it was High
  delay_ten_us(pgm_read_word(&powerTab[index].offTime));

Bei "TCCR0B &= 0b11111000" gibt es den ersten Error.
Ist da irgendein Fehler drin?


mfg Adrian
Angehängte Dateien:
Gast #1552048
>This version of the firmware has the most popular 7 POWER codes for North 
>America
>(which is how many codes fit into the ATtiny2313 2KB flash memory).

Was willst Du damit, da geht kein einziger Fernseher hier aus?
Gast #1552068
Die meisten Codes vom sind eh 37,4xx Khz.
Deswegen scheint mir das relativ zu sein.

Die Fehlerbeschreibung in AVR Studio ist "../tvbgone.c:606: error: 
'TCCR0B' undeclared (first use in this function)"
Gast #1552090
hmm...bei mir hat AVR Studi gemeckert. Aber ich werde deine Hex-File 
gleich mal verwenden.
Danke dafür :)

Nein ich habe nichts verändert. Alles so von der Seite kopiert.
#1552120
Das Problem kenne ich. Das gleiche Problem wird bei meinem Wohnzimmer 
Rechner auch angezeicht. Da habe ich Windows 7 mit AVTR Studio 4.18 und 
WinAVR-20090313. Es werden alle Portnamen nicht erkannt. Auch DDRA usw 
werden nicht erkannt. Im Code wird TCCR0B auch nicht farbig angezeigt, 
richtig?

Ironischer Weise funktioniert es jedoch auf meinem Werkstatt-PC mit 
Windows XP SP3, und den gleichen AVR Studio- und WinAVR Versionen. 
Entweder liegts an Windows 7, oder irgendwas ist bei der Installation 
schief gegangen...
Gast #1552129
Ich habe auch Windows 7 und da macht es Zicken :/
Genau! Das wird nicht farbig angezeigt.

Also dank deiner Hexfile leuchtet ja wenigsens die eine LED :)
Danke schonmal dafür
#1552130
hmmm Moment mal, ich nehme alles zurück. Diene 
Neues_Textdokument__2_.txt lässt sich auf meinem Wohnzimmer PC trotzdem 
fehlerfrei kompilieren, obwohl die Register nicht farbig angezeigt 
werden... Es muss also an etwas anderem liegen...
Gast #1552140
Oh gehts jetz doch?
Ja vllt sollte ich mir die neuere Version mal ziehen.

Also ich hoffe ja jetz eigentlich das es funktioniert. Die LED auf Pin 
14 funktioniert jetz und wenn ich den Taster betätige geht sie auch 
aus...was aber noch nich UMBEDINGT weiß heißen kann. Weil der Taster ist 
ja auf GND + Reset gelegt. Bei meinem Phillips hier funktioniert es 
zumindest nicht. Muss ich morgen wohl testweise mal Saturn raiden ;) :D
#1552151
Yo:

Build started 12.1.2010 at 22:01:10
avr-gcc  -mmcu=attiny2313 -Wall -gdwarf-2 -std=gnu99  -DF_CPU=1000000UL 
-Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -MD 
-MP -MT aaa.o -MF dep/aaa.o.d  -c  ../aaa.c
avr-gcc -mmcu=attiny2313 -Wl,-Map=aaa.map aaa.o     -o aaa.elf
avr-objcopy -O ihex -R .eeprom -R .fuse -R .lock -R .signature  aaa.elf 
aaa.hex
avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" 
--change-section-lma .eeprom=0 --no-change-warnings -O ihex aaa.elf 
aaa.eep || exit 0
avr-objdump -h -S aaa.elf > aaa.lss

AVR Memory Usage
----------------
Device: attiny2313

Program:    2274 bytes (111.0% Full)
(.text + .data + .bootloader)

Data:          0 bytes (0.0% Full)
(.data + .bss + .noinit)


Build succeeded with 0 Warnings...
#1552164
-------- begin --------
avr-gcc (WinAVR 20100110) 4.3.3
Copyright (C) 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is 
NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR 
PURPOSE.


Compiling C: main.c
avr-gcc -c -mmcu=attiny2313 -I. -gdwarf-2 -DF_CPU=8000000UL -Os 
-funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall 
-Wstrict-prototypes -Wa,-adhlns=./main.lst  -std=gnu99 -MMD -MP -MF 
.dep/main.o.d main.c -o ma

Linking: main.elf
avr-gcc -mmcu=attiny2313 -I. -gdwarf-2 -DF_CPU=8000000UL -Os 
-funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall 
-Wstrict-prototypes -Wa,-adhlns=main.o  -std=gnu99 -MMD -MP -MF 
.dep/main.elf.d main.o --output m

Creating load file for Flash: main.hex
avr-objcopy -O ihex -R .eeprom -R .fuse -R .lock main.elf main.hex

Creating load file for EEPROM: main.eep
avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" \
        --change-section-lma .eeprom=0 --no-change-warnings -O ihex 
main.elf main.eep || exit 0

Creating Extended Listing: main.lss
avr-objdump -h -S -z main.elf > main.lss

Creating Symbol Table: main.sym
avr-nm -n main.elf > main.sym

Size after:
AVR Memory Usage
----------------
Device: attiny2313

Program:    1908 bytes (93.2% Full)
(.text + .data + .bootloader)

Data:          0 bytes (0.0% Full)
(.data + .bss + .noinit)



-------- end --------
Gast #1552829
Habe vorhin gemerkt, das die "Anzeige-LED" auf dem Port vom Transistor 
war und umgekehrt.
Das kuriose flackern der LED war also warscheinlich das Aussenden der 
Frequenzen was man sehen konnte.
Habs vor ein paar Minuten umgelötet und getestet...nix passiert...
Außerdem wurd der Transistor VERDAMMT HEISS! Liegt wohl an dem zu gering 
bemessenen Vorwiderstand und dem (nicht vorhandenen) Vorwiderstand der 
IR-LED.

Werde die Schaltung nachher nochmal aufm Steckbrett aufbauen. Schätze 
als Vorwiderstand für den Transistor ca n K nehmen und die Dioden mit 
470. Werde auch VERSUCHEN die EU-Codes einzuprogrammieren, da jetz noch 
die Ami-Codes drin sind.
Falls ich das nicht hinkriege muss mir hier vllt jemand helfen ;)
#1553156
IR-LED braucht nicht unbedingt nen Vorwiederstand (gehe davon aus das du 
das ganze mit 3 V betreibst). Aber den Transistoren solltest du 
unbedingt einen viel größeren Wiederstand gönnen. so ca. das 80fache. 
versuchs mal mit 10K.
Wieso nimmst du nicht die original-schaltung (du sagst ja du hast sie 
abgeändert, wo hast du die überhaupt her)?
Gast #1555908
Sooo, ich habe den Code mal etwas abgeändert.
Nur mein Compiler macht wieder zicken.
Kann mir Jemand die Hex mal hochladen von meinem Code?

Vllt läufts ja dann =)

mfg
Angehängte Dateien:
Gast #1555962
Ja das weiß ich :) Hab ich weiter Oben schon alles beschrieben.
Er gibt in meinem AVR Studio Fehlermeldungen raus und bei allen Anderen 
komischerweise nicht...

Deswegen frage ich ja ;)
Gast #1557464
1
// This function delays the specified number of 10 microseconds
2
void delay_ten_us(unsigned long int us) {
3
  unsigned long int timer;
4
  const unsigned long int DelayCount=6;  // this value was determined by trial and error
5

6
  while (us != 0) {
7
    // Toggling PD0 is done here to force the compiler to do this loop, rather than optimize it away
8
    for (timer=0; timer <= DelayCount; timer++) {PIND |= 0b0000001;};
9
    us--;
10
  }
11
}

Das is einfach nur Humbug. Der Kommentar ist falsch, der Ansatz noch 
falscher.
#1557562
adrian schrieb:
> Nein das weiß ich, aber man kann ja den Code einfach in den Compiler
> kopieren, ne ;)

Hä ???

Ich weiß ja nicht, womit Du kompilierst.

Aber ich benutze den WINAVR und der will mindestens ein File haben und 
das muß *.c heißen.


Peter
Gast #1656011
mal kurz gefragt an der interresanten Diskuson vorbei

hat einer einen für die Brd funktionierenden hex file den er posten kann

für atiny2113


gruß

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 16 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.