Boop
From Bettyhacks.com - Hack BettyTV-Remote
(→Bootloader starten) |
(→Tastatur) |
||
Line 1: | Line 1: | ||
− | + | Boop ([http://de.wikipedia.org/wiki/Betty_Boop Namensgeberin])ist eine Software (Firmware) fuer die [[Betty TV]], welche von '''netguy''' entwickelt wurde, und von einigen anderen erweitert wird. | |
− | Boop ist eine Software | + | Die Firmware dient derzeit haupsaechlich als "testbed" um die Hardware der Betty anzusprechen. |
+ | Die Firmware enthält Routinen für das Ansprechen der meisten Hardwarekomponenten der Betty. | ||
− | == | + | ==Features== |
− | Boop | + | Siehe [[Boop Features]]. Für andere Verwendungen der Betty Hardware siehe [[Projekte]]. |
− | + | ==Lizenz== | |
+ | '''boop''' steht unter der [http://www.gnu.org/copyleft/gpl.html GPL]v3. Bitte beachtet das wenn, ihr an der Software herumbastelt! | ||
− | == | + | ==Download== |
− | + | Den aktuellen Source erhält man über [[SVN]] [https://sourceforge.net/projects/boopfirmware/develop hier]. | |
+ | Das aktuelle RAW-Binary zum download: [https://boopfirmware.svn.sourceforge.net/svnroot/boopfirmware/boop/trunk/boop_rom.bin boop_rom.bin] | ||
− | + | ==Mitarbeit== | |
+ | Wenn Du Fehler findest, oder anders helfen möchtest, melde Dich am Besten im [http://bettyhacks.com/forum Forum]. | ||
+ | Zum Entwickeln: [[Coding Style]]. | ||
− | |||
− | == | + | ==Das System== |
− | + | Die Firmware ist in C geschrieben für den 32-bit Mikroprozessor mit ARM7 Kern (siehe [[Entwicklungsumgebungen]]). | |
− | + | Es sind 64kb SRAM und 16mbit (= 2 MiByte) externer Flash-Speicher vorhanden. | |
− | + | Es ist möglich, ein Programm direkt aus dem RAM auszuführen. Das Überschreiben des Flashspeichers entfällt so (siehe [http://bettyhacks.com/forum/index.php?topic=215.msg1449#msg1449 Forum]). | |
− | + | ||
− | + | ||
− | + | Näheres zu den Komponenten unter [[Betty Hardware]] und [http://www.hackdaworld.org/cgi-bin/awki.cgi/BettyTV hackdaworld] | |
− | + | ||
− | + | ||
− | === | + | ===Das 'Betriebssystem' Timer, Interrupts, ...=== |
− | + | ||
− | + | ||
− | + | Die Timers und Interrupts sind unter [[Boop Peripherie]] aufgelistet. | |
− | + | ||
− | + | ||
− | + | ||
− | unter | + | |
− | === | + | ===Hardwareunterstützung=== |
− | + | ||
− | + | ==== Serielle Schnittstelle ==== | |
− | + | (an der Stiftleiste) | |
− | + | txd0, rxd0 | |
− | + | ||
− | + | ||
− | + | ||
− | + | * Baudrate http://www.standardics.nxp.com/support/documents/microcontrollers/xls/lpc2000.uart.baudrate.calculator.xls | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ==== Display ==== | |
+ | * Anbindung über Speicheradresse 0x81000000 (CMD) und 0x81000001 (DATA) | ||
+ | * Kontrast einstellbar (in Grenzen) | ||
+ | * Diverse Grafik- und Schriftfunktionen (siehe Menu>TestStuff) | ||
+ | ** Schriften | ||
+ | ** Grafik | ||
+ | *** Bereich löschen, füllen, Linie, Rechteck, Kreise etc | ||
− | == | + | =====Hintergrundbeleuchtung===== |
− | === | + | * Pin: [[LPC2220_Pin-Belegung|sck0/P0.4]] |
− | + | * 64 Helligkeitsstufen (Software-PWM in SoundIRQ) | |
− | + | * Leuchtdauer einstellbar (n*[s]) | |
− | + | * Übergangsgeschwindigkeit einstellbar (n * 5 ms / Helligkeitsstufe) | |
− | + | ||
− | + | ||
− | + | ||
− | === | + | ====Tastatur ==== |
− | + | Q: 'keytest' im Menü 'TestStuff' zeigt Tastaturcodes, wie kommt man da wieder raus? | |
− | + | ||
− | + | ||
− | + | A: Batterien rein und raus! Bei dem Hintergedanken der Funktion allerdings völlig legitim. | |
− | + | ||
− | ''' | + | ====Akkuzustand ==== |
+ | Wird in oben rechts als Batteriesymbol angezeigt. | ||
+ | 'bat debug' im Menü 'TestStuff' zeigt - was für Werte? | ||
− | === | + | ====Audio ==== |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | === | + | =====Hardware===== |
− | + | P0.7/SSEL0/PWM2/EINT2 69 PWM<br\> | |
− | + | P0.11/CTS1/CAP1.1 83 Shutdown<br\> | |
− | + | ||
− | + | Verstärker: LM4876 | |
− | + | ||
− | == | + | =====Software===== |
− | + | Sounderzeugung (Menu>TestStuff>SID) und Wiedergabe von Samples (Menu>Credits) | |
+ | |||
+ | ====IR==== | ||
+ | Über Pin 4 (P0.21/PWM5/CAP1.3) kann die IR Diode zum Senden ein und ausgeschaltet werden.<br\> | ||
+ | Der IR-Empfang wird über Pin 84 (P0.12/DSR1/MAT1.0) aktiviert/deaktiviert.<br\> | ||
+ | Über Pin 32 (P0.29/AIN2/CAP0.3/MAT0.3) wird das empfangene Signal eingelesen.<br\> | ||
+ | |||
+ | ====Funk==== | ||
+ | Transceiver [[CC1100]] | ||
+ | Testweise als IR-Device eingebaut, überträgt Tastencodes an den [[SCART Adapter]] mit [[betty_scart]] | ||
+ | |||
+ | * Kommunikation Scartadapter [http://bettyhacks.com/forum/index.php?topic=114.msg826#msg826 Forum] | ||
+ | * Transceiver CC1100 Möglichkeiten [http://bettyhacks.com/forum/index.php?topic=121.msg850#msg850 Forum] | ||
+ | |||
+ | ====Uhr==== | ||
+ | I2C | ||
− | + | [[Category:Firmware]] | |
− | + |