• Benvenuti su RaspberryItaly!
Benvenuto ospite! Login Login con Facebook Registrati Login with Facebook


Valutazione discussione:
  • 0 voto(i) - 0 media
  • 1
  • 2
  • 3
  • 4
  • 5

[-]
Tags
python da tastiera input

input da tastiera python
#1
ciao ragazzi ,
ho bisogno del vostro aiuto. ho girato su internet e non ho trovato nulla che mi interessasse davvero, ho trovato solo uno script dove in base ai tasti premuti sulla tastiera mi stampa il tasto premuto, importando pygame e simplegui.
ora io vorrei fare una cosa simile ma con le frecce direzionali della tastiera, senza usare la simplegui.
ora vorrei capire come creare questo script:
se premo freccia destra
stampa 'hai premuto freccia destra'
e così via.
mi serve per controllare un motorino via raspberry.
in attesa di capire come implementare il joystik.
scusate il disturbo ma ho cercato veramente tanto su google e non ho trovato nulla tranne quello script con la gui e senza frecce direzionali ma solo numeri e lettere. ho provato a modificarlo ma non sono arrivato a niente di conclusivo.
grazie in anticipo come sempre ragazzi
Risposta
#2
ciao ragazzi mi serve aiuto, nessuno mi risponde ma io provo a chiedere lo stesso.
sto cercando di usare le frecce direzionali sulla tastiera con pygame per poter gestire un motorino dc con raspberry. sto usando il mio pc ora per provare pygame. solo che sono incastrato, è da stamattina che son dietro solo per le frecce.
il mio codice è questo: 
Codice:
import pygame
pygame.init()
while 1:
  for event in pygame.event.get():
     if event.type == pygame.KEYDOWN:
        if event.key == pygame.K_UP:
           print("hai premuto frecciasu")

pygame.quit()
input()
premetto che non ho mai usato pygame. quindi sicuro sto facendo confusione o ho scritto male qualcosa.
non mi serve creare un gioco tipo muovere una pallina, mi serve per gestire un motorino dove al posto del print ci saranno i relativi comandi. per esempio freccia su avanti e freccia giu indietro. quindi nel caso posso omettere pygame ben venga. 
aiutatemi voi per favore
grazie!
Risposta
#3
[Immagine: Robot-clip-art-book-covers-feJCV3-clipart.png]

che ne dici di qualcosa di veramente bello e magari più facile?
BlueDot robot

anche se questo è quello che cerchi, da quel che ho capito
Keyboard controlled robot
Heart Libro  | Blog EnricoSartori.it | Idea YouTube
Se un utente ti è stato utile, aumenta la sua reputazione! premi il Pollicione! 
Risposta
#4
innanzitutto grazie x la risposta. a curses ci sono arrivato un po' di ore fa e ho gia fatto lo script per far andare il motore premendo le frecce. l'unico problema è farlo andare solo quando il tasto è premuto, al suo rilascio il motore si ferma.
ci penserò su stanotte  Big Grin Big Grin Big Grin 
grazie ancora!! posto il codice nel caso serva a qualcun'altro:

Codice:
import RPi.GPIO as GPIO
import time
import curses
GPIO.setmode(GPIO.BOARD)
GPIO.setup(36, GPIO.OUT)
GPIO.setup(7, GPIO.OUT)  
GPIO.setup(12, GPIO.OUT)
GPIO.output(36, False)        
GPIO.output(7, True)
GPIO.output(12, True)
p = GPIO.PWM(12,100)          ## frequenza 100
p.start(0)


       
def main(stdscr, p):
   stdscr.clear()
   while True:
       # Salva gli input inseriti nella variabile c
       c = stdscr.getch()
       # pulisci il terminale
       stdscr.clear()
       if c == ord('a'):
           stdscr.addstr("HAI PREMUTO 'a'")
       elif c == curses.KEY_UP:
           avanti(p)
           stdscr.addstr("GO!")
           
           
       elif c == curses.KEY_DOWN:
           retromarcia(p)
           stdscr.addstr("RETROMARCIA")
           
       
       else:
           stdscr.addstr("NON RICONOSCO LA CHIAVE INSERITA :(")


def avanti(p):
   GPIO.output(7, True)
   GPIO.output(36, False)
   p.ChangeDutyCycle(100)
   





def retromarcia(p):
   GPIO.output(7, False)
   GPIO.output(36, True)
   p.ChangeDutyCycle(50)
                       
curses.wrapper(main, p)                        
                       
                       
               
               

       
           

input()
   
Risposta
  


Vai al forum:


Navigazione: 1 Ospite(i)
Forum con nuovi Post
Forum senza nuovi post
Forum bloccato
Forum Redirect