Guten Morgen !
Ich benutze eine ATmega32 mit 16Mhz und hab Bascom 1.11.8.3.
Ich habe mich mal darin versucht eine Tastenabfrage zu erstellen
Hier mal mein Code dazu.
wenn einer einen Fehler sieht bitte nicht gleich los schimpfen bin noch in der lern Phase.
ich glaube da ist in der lib (glcdks108.lib) was nicht richtig. aber ist wie gesagt nur so ne Ahnung. Wie gesagt wenn ich versuche den Code zu Compeilieren dann kommt der oben beschriebene Fehler.
Code:$regfile = "m32def.dat" ' specify the used micro $crystal = 16000000 ' used crystal frequency $lib "glcdks108.lib" ' printing will still work as only the receiver pin is disabled Wait 2 Config Graphlcd = 128 * 64sed , Dataport = Portd , Controlport = Portc , Ce = 1 , Ce2 = 0 , Cd = 3 , Rd = 4 , Reset = 2 , Enable = 5 Config Adc = Single , Prescaler = Auto , Config Pina.0 = Input 'Const Ref = 5 / 1023 Declare Sub Taste1() Declare Sub Taste2() Declare Sub Taste3() Declare Function Tastenabfrage() As Byte Declare Sub Start1() Start Adc Dim Ws As Word Dim Taste As Byte Dim Adc1 As Word Config Pinb.0 = Output Beep Alias Pinb.0 Adc1 = Getadc(0) Setfont Font8x8 Cls Wait 1 Call Start1 Do Taste = Tastenabfrage() If Taste <> 0 Then Select Case Taste Case 1 Call Taste1 Case 2 Call Taste2 Case 3 Call Taste3 End Select End If Loop End Function Tastenabfrage() As Byte Tastenabfrage = 0 Ws = Getadc(0) If Ws < Adc1 Then Select Case Ws Case 210 To 250 Tastenabfrage = 1 Case 150 To 200 Tastenabfrage = 2 Case 50 To 100 Tastenabfrage = 3 End Select End If End Function Sub Taste1() Sound Beep , 600 , 200 Lcdat 1 , 1 , " Taste 1" End Sub Sub Taste2() Sound Beep , 600 , 500 Lcdat 1 , 1 , " Taste2" End Sub Sub Taste3() Sound Beep , 600 , 700 Lcdat 1 , 1 , "taste3" End Sub Sub Start1() Lcdat 1 , 1 , "Bitte eine Taste" Lcdat 1 , 1 , "drücken" End Sub 'end program $include "font8x8.font"







Zitieren
Lesezeichen