Torna indietro   Hardware Upgrade Forum > Software > Programmazione

DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort
Fino a 740 km WLTP con la batteria da 97,2 kWh, sospensioni che leggono la strada con una telecamera e un abitacolo da salotto parigino. La nuova DS N°7 raccoglie l'eredità della DS 7 e la porta, per la prima volta, nel mondo 100% elettrico. Ecco come è fatta, cosa offre e quanto costa.
Recensione Samsung Galaxy Tab S12 Ultra: non chiamatelo tablet... è molto di più
Recensione Samsung Galaxy Tab S12 Ultra: non chiamatelo tablet... è molto di più
Abbiamo provato Samsung Galaxy Tab S12 Ultra nella versione 12 GB + 256 GB con tastiera, e il risultato è un tablet che in questa configurazione si comporta come un notebook con la fluidità tipica di Android. Spessore di 5,1 mm, display Dynamic AMOLED 2X da 14,6 pollici, MediaTek Dimensity 9500 e un software senza incertezze compongono un prodotto di vertice, con prezzi da 1.539 euro, frenato solo da un'autonomia nella parte bassa del confronto
Hyundai IONIQ 5 N, l'elettrica che finge di essere termica (e ci riesce da paura)
Hyundai IONIQ 5 N, l'elettrica che finge di essere termica (e ci riesce da paura)
Abbiamo provato per dieci giorni la Hyundai IONIQ 5 N, con 650 CV, 770 Nm e uno 0-100 km/h in 3,4 secondi. Il suo punto forte è N e-Shift, che simula un cambio a otto rapporti con suoni da motore termico e perfino un bang supersonico
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 03-06-2011, 16:37   #1
norih43
Member
 
Iscritto dal: May 2002
Messaggi: 83
[c++] ARDUINO, impostare una comunicazione seriale in c++/linux

Dato che tutto è un file sotto linux ho provato a leggere i dati inviati da ARDUINO tramite la porta /dev/ttyACM0 come se fosse un normale file attraverso questo codice da me scritto (che è ridicolo )
Codice:
 #include <fstream>
    #include <iostream>
    using namespace std;

    int main(){
    fstream fd;
    string s;
    int i=1;
    fd.open("/dev/ttyACM0",ios::in|ios::out);
    while (i<1e3){
    fd>>s;
        cout<<s<<"xx"<<s.length()<<"\n";
        i++;
    }
    fd.close();
    return 0;
    }
solo che ogni tanto funziona e a volte no . Dato che comunque il codice non è il massimo, volevo capire se c'èun modo semplice in c++ (e non in C che non conosco ) per gestire la seriale come si faceva con istruzioni tipo QBASIC per esempio:
OPEN “COM1:2400,N,8,1” FOR OUTPUT AS #1

a distanza di trent'anni non dovrebbe essere più semplice??

Ultima modifica di norih43 : 03-06-2011 alle 22:00.
norih43 è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2011, 17:53   #2
misterx
Senior Member
 
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
la domanda ora è: linux o windows ?
misterx è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2011, 18:34   #3
norih43
Member
 
Iscritto dal: May 2002
Messaggi: 83
linux ovviamente ( /dev/ttyACM0)
norih43 è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2011, 18:34   #4
pabloski
Senior Member
 
Iscritto dal: Jan 2008
Messaggi: 8406
io la farei così

Codice:
#include <iostream>
#include <fstream>
using namespace std;

int main () {
  ifstream fd;

  fd.open ("/dev/ttyACM0", ifstream::in);
  while (fd.good())
    cout << (char) fd.get();
  fd.close();

  return 0;
}
ovviamente il good permette di continuare a leggere finchè non si verificano errori sullo stream o arriva l'eof
pabloski è offline   Rispondi citando il messaggio o parte di esso
Old 05-06-2011, 10:07   #5
norih43
Member
 
Iscritto dal: May 2002
Messaggi: 83
La soluzione di pabloski lavora ma è equivalente alla mia (anche se non conoscevo la funzione fstream.good() grazie)... ho notato che quando non funziona resta il led TX acceso.... secondo me è da reinizializzare la porta seriale... come si può fare?
norih43 è offline   Rispondi citando il messaggio o parte di esso
Old 05-06-2011, 12:33   #6
pabloski
Senior Member
 
Iscritto dal: Jan 2008
Messaggi: 8406
Quote:
Originariamente inviato da norih43 Guarda i messaggi
La soluzione di pabloski lavora ma è equivalente alla mia (anche se non conoscevo la funzione fstream.good() grazie)... ho notato che quando non funziona resta il led TX acceso.... secondo me è da reinizializzare la porta seriale... come si può fare?
ho trovato questo http://www.arduino.cc/cgi-bin/yabb2/...num=1269643472

se ho capito bene si tratta dello stesso problema
pabloski è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort DS N°7 E-Tense: il SUV premium made in Melfi...
Recensione Samsung Galaxy Tab S12 Ultra: non chiamatelo tablet... è molto di più Recensione Samsung Galaxy Tab S12 Ultra: non chi...
Hyundai IONIQ 5 N, l'elettrica che finge di essere termica (e ci riesce da paura) Hyundai IONIQ 5 N, l'elettrica che finge di esse...
CES Unveiled Milan, l'IA diventa tecnologia fondativa e il commercio torna centrale CES Unveiled Milan, l'IA diventa tecnologia fond...
 Recensione OPPO Find X10 Pro Max: un top di gamma completo con tre fotocamere da 200MP Recensione OPPO Find X10 Pro Max: un top di gam...
Kaspersky punta su IA e servizi gestiti ...
Già sfruttata la falla Brotli che...
Potrebbe essere stato scoperto un nuovo ...
Claude Code, il prompt per scovare telec...
Palit e GALAX smentiscono le voci sulla ...
Fujifilm annuncia la Instax Mini Evo 2, ...
Tailscale chiude le falle SSH verso root...
Il tuo Galaxy laggava nei giochi? Samsun...
Arrivano i nuovi Amazon Echo: prezzi da ...
Il nuovo pickup elettrico Ford può alime...
Opera WebAI: così l'intelligenza artific...
Copilot nella Sidebar di Edge sparisce p...
X terrorizza gli utenti con una mano gig...
Firmware UEFI, embargo saltato per error...
Android 18 limiterà le modifiche alla ru...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 16:11.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v