Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2014
    Messaggi
    17

    [C] Gestire una porta I/O

    Salve a tutti,
    è da un po di tempo che cerco di muovermi nel mondo della programmazione in c. Ma come bisogna gestire una porta I/O per dare input al programma o per generare output?

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    In che senso? Spiegati meglio, indicando chiaramente il contesto in cui operi.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it L'avatar di linoma
    Registrato dal
    Mar 2010
    Messaggi
    1,346
    nella maggior parte dei casi devi usare cio che il SO offre per una corretta condivisione della porta all'interno del sistema. Contrariamente a ciò che accade a livello di macchina dove un istruzione o un indirizzo ti permette di poter gestire la tua porta in un sistema + complesso 6 costretto a condividere la porta e cio accade nn solo a livello utente.
    Per gli Spartani e Sparta usa spartan Il mio github

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2014
    Messaggi
    17
    nn mi sono spiegato bene.
    Io vorrei generare output e input con una porta I/O solo per capire come bisogna fare non mi interessa qualcosa di specifico. Basta anche un esempio per farmi capire... grazie

  5. #5
    Come ti è stato detto, dipende dal sistema operativo, lo standard C in sé non fornisce nulla di specifico.

    Su microcontrollori può bastare scrivere in indirizzi di memoria particolari (in caso di porte mappate in memoria), su codice compilato per x86 in kernel mode in genere ci sono degli intrinsic del compilatore che generano istruzioni inp e outp, ma sui sistemi più moderni (dove le applicazioni "normali" girano in ring 3) in genere è necessario "parlare" con driver appositi (ad esempio inpout32) che caricano un driver in kernel mode e gli girano le tue richieste.

    P.S.: il linguaggio di riferimento va indicato nel titolo della discussione; questa volta l'ho aggiunto io, in futuro ricordatene.
    Amaro C++, il gusto pieno dell'undefined behavior.

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2014
    Messaggi
    17
    Potete scrivermi il sorgente in linguaggio c di un programma che accende un led tramite una porta usb premendo un qualsiasi tasto della tastiera? Grazie.

  7. #7
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,590
    Ciò che chiedi è praticamente impossibile: ci sono un sacco di dettagli tecnici che dipendono dai dispositivi in uso.
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  8. #8
    Inanzitutto devi dire quale sistema operativo usi.
    Secondo la scelta della usb è pessima, non si può accendere un led da una porta usb "cosi a secco", io ti consiglio di comprare un convertitore usb->lpt e farti una bella ricerca su internet su come comandare l'lpt.
    In alternativa ci vorranno due chip, uno che codifichi l'usb e l'altro che trasformi il dato seriale in parallelo,una breadboard e un briciolo di conoscenza elettronica.
    Se ti affascina il mondo dell'elettronica e ci vuoi giocherellare io ti consiglio l'acquisto di una scheda arduino uno,30€,pronta all'uso, la programmi in c e la colleghi semplicemente al computer con l'usb.
    Puoi dialogare tra arduino e il computer in maniera semplice ed esistono migliardi di tutorial on line che spiegano ogni sorta di progetto,esistono poi shield(schede) predisposte anche a fare il caffè.Se poi aggiungi che l'ide è completamente gratuito ed esistono migliardi di sketch(programmi) opensource capisci in automatico che è la miglior scelta per "giocare" con l'elettronica.

  9. #9
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Quote Originariamente inviata da mimmo9.7 Visualizza il messaggio
    Potete scrivermi il sorgente in linguaggio c di un programma che accende un led tramite una porta usb premendo un qualsiasi tasto della tastiera? Grazie.
    A parte il fatto che qui non si dovrebbe scrivere codice completo, la cosa non è fattibile se alla tua USB non c'è collegato un dispositivo hardware adeguato.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2014
    Messaggi
    17
    Scusate non che credevo che fosse così difficile, opterò per un'altra strada. Grazie.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.