Forum: Mikrocontroller und Digitale Elektronik Displaymenü in Bascom


von Paul S. (paul_s95)


Lesenswert?

Hallo,
ich wollte mal nachfragen, wie man ein Displaymenü in Basom erstellen 
kann, sodass man sich mit 5 Tasten (oben, unten, rechts, links, Mitte / 
ok) durchsteuern kann. In den Menüs sollte man evtl. PWM-Werte 
bearbeiten können.

: Wiederhergestellt durch Moderator
von meckerziege (Gast)


Lesenswert?

Woran hängts denn?
Was kannst du so und was hast du an Hardware zur Verfügung? Irgendenen 
Mikrocontroller?

Sowas ist ganz leicht machbar, aber du musst uns erstmal sagen wo du 
nicht weiterkommst!

: Wiederhergestellt durch Moderator
von Paul S. (paul_s95)


Lesenswert?

Hmm, also ich hab noch nicht angefangen. Ich kann Grundlagen von bascom. 
Und ich hatte an einen atmega 8 gedacht.

: Wiederhergestellt durch Moderator
von Nachgucker (Gast)


Lesenswert?

Meinst du vom Prinzip her sowas?

Hier wurde ein Touch-Screen GLCD verwendet und ein Menue gewählt.
Wegen GLCD und Touch ist es ein größerer Prozessor.
Du kannst aber das Prinzip erkenne, bzw nachvollziehen.

http://www.mcselec.com/index.php?option=com_content&task=view&id=189&Itemid=57

: Wiederhergestellt durch Moderator
von sBronco (Gast)


Lesenswert?

Ich hab das mal für 5 Tasten gebastelt

Entprellung über touch: wird ausgeführt wenn touch > n mal gleich war
1
SUB KEYPAD
2
3
   lastkey = key : key = 0
4
   If PinD.5 = 0 then key = key + 1                         ' Up
5
   If PinD.2 = 0 then key = key + 2                         ' Left
6
   If PinD.4 = 0 then key = key + 4                         ' Right
7
   If PinD.1 = 0 then key = key + 8                         ' ENTER
8
   If PinD.0 = 0 then key = key + 16                        ' Down
9
10
   If key <> 0 AND key <> 1 AND key <> 2 AND key <> 4 AND key <> 8 AND key <> 16 then Exit Sub
11
12
   incr touch
13
   If touch > 20 then
14
      touch = 20 : Exit Sub
15
   End If
16
17
'flag.0 = LCD update
18
'     .1 = Clock update
19
'     .2 = Eingabe Ausgeführt, warten auf loslassen
20
'     .3 = Sensoren
21
22
   Select Case flag.2
23
      ' noch keine Aktion
24
         Case 0 :
25
            If key <> lastkey then touch = 0
26
            MenuReset = 0
27
      ' Aktion bereits ausgelöst
28
         Case 1 :
29
            If key > 0 then
30
               touch = 0 : Exit Sub
31
            End If
32
33
            If key = lastkey AND touch > tcount then
34
               flag.2 = 0 : touch = 0
35
            End If
36
      End Select
37
End Sub

: Wiederhergestellt durch Moderator
von Paul S. (paul_s95)


Lesenswert?

Okay. Und wie funktioniert das ohne Touch?

: Wiederhergestellt durch Moderator
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.