'*************************************************************************************** ' 'ACHTUNG! 'Sie handeln auf eigene Gefahr! 'Bei diesen Daten handelt es sich um Beispielanwendungen die nicht für den produktiven 'Einsatz geeignet sind. 'Anpassung Kurt Pieper 'Original Pollin 'Testprogramm fuer ATTiny2313 'Pollin-Spiel Best.Nr.810148 '*************************************************************************************** $regfile = "ATtiny2313.dat" Lcd_db4 Alias Portb.0 Lcd_db5 Alias Portb.1 Lcd_db6 Alias Portb.2 Lcd_db7 Alias Portb.3 Lcd_e Alias Porta.0 Lcd_rs Alias Porta.1 Lcd_ein Alias Portd.6 Config Lcd_ein = Output Lcd_kontrast Alias Portb.4 Config Lcd_kontrast = Output Summer Alias Portd.5 Config Summer = Output 'led Led1 Alias Portd.0 Led2 Alias Portd.1 Led3 Alias Portd.3 Led4 Alias Portd.4 $framesize = 40 $swstack = 10 $hwstack = 32 $crystal = 1000000 Config Lcdmode = Port Config Lcd = 16 * 2 , Chipset = Ks077 'LCD wird im 4-Bit-Modus betrieben Config Lcdbus = 4 Config Lcdpin = Pin , Db4 = Lcd_db4 , Db5 = Lcd_db5 , Db6 = Lcd_db6 , Db7 = Lcd_db7 , E = Lcd_e , Rs = Lcd_rs Declare Sub Init Declare Sub Piep Dim Username As String * 20 Dim W As Byte Dim I As Byte Dim Adresse As Byte Dim Kommando As Byte 'LED-Ausgänge Config Led1 = Output Config Led2 = Output Config Led3 = Output Config Led4 = Output '************************************** '******** LCD initialisieren ********** '************************************** Call Init '************************************** '*** 5x Test-Tonausgabe auf Summer **** '************************************** For I = 1 To 5 'Displayposition Zeile 1, Position 1 Locate 1 , 1 'Display-Textausgabe Lcd "Summer-" 'Displayposition Zeile 2, Position 1 Locate 2 , 1 'Display-Textausgabe Lcd "test "; Lcd I 'eigentliche Soundausgabe auf den Summer For W = 20 To 250 Sound Summer , 2 , W Next Next Cls '************************************** '************* LED-Test *************** '************************************** Cls Locate 1 , 1 Lcd "LED-Test" Locate 2 , 1 Lcd "LEDs an" Set Led1 Set Led2 Set Led3 Set Led4 Wait 2 Locate 2 , 1 Lcd "LEDs aus" Reset Led1 Reset Led2 Reset Led3 Reset Led4 Wait 2 '************************************** '************* Tasten-Test ************ '************************************** Cls Locate 1 , 1 Lcd "Tasten" Locate 2 , 1 Lcd "Test" Do Debounce Pind.0 , 1 , Key_t1 , Sub Debounce Pind.1 , 1 , Key_t2 , Sub Debounce Pind.2 , 1 , Weiter Debounce Pind.3 , 1 , Key_t3 , Sub Debounce Pind.4 , 1 , Key_t4 , Sub Loop Weiter: Wait 2 'Disable Interrupts '************************************** '***** Displayausgabe Test beendet **** '************************************** Cls Locate 1 , 1 Lcd "Testlauf" Locate 2 , 1 Lcd "beendet" 'Endlosschleife Do ' Loop '----------------------------- ' func/subs '----------------------------- Sub Init Set Lcd_ein Set Lcd_kontrast Initlcd Cursor Off Cls Locate 1 , 1 : Lcd " Check " Locate 2 , 1 : Lcd " Board " Wait 5 Cls Cursor Off End Sub Sub Piep Sound Summer , 124 , 675 'H2(1/16) End Sub Key_t1: Locate 2 , 1 Lcd "Taste 1 " Call Piep Return Key_t2: Locate 2 , 1 Lcd "Taste 2 " Call Piep Return Key_t3: Locate 2 , 1 Lcd "Taste 3 " Call Piep Return Key_t4: Locate 2 , 1 Lcd "Taste 4 " Call Piep Return Key_ein: ' nix Return 'Programmende End