µLua DS - Forum officiel | Official forum Index du Forum

µLua DS - Forum officiel | Official forum
Le bon endroit pour en savoir plus sur MicroLua et pour parler de vos projets ! | The right place to learn more about MicroLua and talk about your projects !

 FAQFAQ   RechercherRechercher   MembresMembres   GroupesGroupes   S’enregistrerS’enregistrer   ProfilProfil   Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 

[Lua]Lire ET écrire dans un fichier

 
Poster un nouveau sujet   Répondre au sujet    µLua DS - Forum officiel | Official forum Index du Forum -> Section française -> Demande d'aide
Sujet précédent :: Sujet suivant  
Auteur Message
geeker


Hors ligne

Inscrit le: 23 Déc 2012
Messages: 363

MessagePosté le: Jeu 18 Avr 2013 - 17:36    Sujet du message: [Lua]Lire ET écrire dans un fichier Répondre en citant

Bonjours.

J'ai récemment écrit un programme en Lua pour communiquer avec mon arduino via le mod COmputerCraft.
Le problème, c'est que je ne peux pas en même temps envoyer des infos et en recevoir ...
J'ai essayé le code:
Code:

arduino = io.open("COM3", "wr")

Mais ça me retourne "unsupported mode". Quand j'essaye:
Code:

arduinow = io.open("COM3", "w")
arduinor = io.open("COM3", "r")

Le port série "COM3" est déja utilisé ...

Alors est-ce que quelqu'un a une solution, simple et efficace, de faire un "read and write" ?

PS: je poste ici, car ce scénario peut très bien arriver aussi sur µLua Wink
_________________
Beta-testeur de l'extrème
Tox: FFBDC8B34DC3CDE51F8F1CB0A628147DE740ACD1D44682EB5492A681F6541E32E8D8BB6052B3
CtrµLua: ctrulua.github.io
Des p'tits true, des p'tits true, toujours des p'tits true ...


Revenir en haut
Visiter le site web du posteur
Publicité






MessagePosté le: Jeu 18 Avr 2013 - 17:36    Sujet du message: Publicité

PublicitéSupprimer les publicités ?
Revenir en haut
Fantasix
Modérateur

Hors ligne

Inscrit le: 26 Avr 2010
Messages: 1 317
Localisation: SCREEN_UP, en -1, -1

MessagePosté le: Jeu 18 Avr 2013 - 17:39    Sujet du message: [Lua]Lire ET écrire dans un fichier Répondre en citant

Et pourquoi tu ne fais pas une lecture OU une écriture ?

Parce qu'en tout logique, si tu est en train de lire dans le fichier, c'est que tu n'est pas en train d'écrire, et vis versa.

http://lua-users.org/wiki/IoLibraryTutorial

Fanta'
_________________


BMA News :

Création du Homebrew Storage en cours ...


Revenir en haut
Visiter le site web du posteur
geeker


Hors ligne

Inscrit le: 23 Déc 2012
Messages: 363

MessagePosté le: Jeu 18 Avr 2013 - 17:42    Sujet du message: [Lua]Lire ET écrire dans un fichier Répondre en citant

Je veux bien, mais ça ralentirai énormément le programme (vu que le Lua de CC n'est pas très rapide ><) et ça créerai des confusions.
En plus, si, j'écrit ET je lis en même temps: (ou presque)

term.clear()
term.setCursorPos(1, 1)
print(" ~ Arduino Lua listen ~ ")
print("     Built for COM3      \n")

if arduino then arduino:close() arduino = nil end
arduino = io.open("COM3", "w")

print("Create derivation?")
if read() == "yes" then
 local socket = require("socket")
 if not socket then
  print("No socket library. Please install LuaSocket")
  while true do end
 end
 tcp = socket.tcp(25565)
 tcp:bind('*', 25565)
 tcp:listen()
 client = tcp:accept()
end

if not arduino then
 print("No arduino on 'COM3'.")
 arduino = nil
 sleep(5)
 os.exit(-1)
end

less = true --set to true for infinite message
baud = 9600 --set the bauds number

wri = ""
i = 0
while wri ~= "stop" do
 if 1/baud > 0 then
  sleep(1/baud)
 end
 if redstone.getInput("right") then
  wri = "1"
 else
  wri = "0"
 end
 if redstone.getInput("top") then
  break
 end
 print("sending "..wri)
 arduino:write(wri)
-- get = arduino:read() --commentaire si bug
 if get then
  print(tostring(get))
  if get == "1" then
   redstone.setOutput("left", true)
  else
   redstone.setOutput("left", false)
  end
 end
 arduino:flush()
end

arduino:close()
arduino = nil
wri = nil
receive = nil
i = nil
less = nil
pas = nil

_________________
Beta-testeur de l'extrème
Tox: FFBDC8B34DC3CDE51F8F1CB0A628147DE740ACD1D44682EB5492A681F6541E32E8D8BB6052B3
CtrµLua: ctrulua.github.io
Des p'tits true, des p'tits true, toujours des p'tits true ...


Revenir en haut
Visiter le site web du posteur
thermo_nono
Modérateur

Hors ligne

Inscrit le: 31 Déc 2008
Messages: 2 415
Localisation: La Géhenne

MessagePosté le: Jeu 18 Avr 2013 - 19:35    Sujet du message: [Lua]Lire ET écrire dans un fichier Répondre en citant

 très intéressant tout ça. 
mais une question me turlupine : 
pourquoi connecter un arduino à computercraft ? 
tu veux domotiser ta maison avec minecraft comme interface ? 
si c'est ton projet :  Okay  j'adore l'idée. 


edit : et pourquoi n'as tu pas choisi un raspberry pi
_________________
“Qui reçoit une idée de moi reçoit de la connaissance sans diminuer la mienne, comme celui qui allume sa chandelle à la mienne reçoit la lumière sans me plonger dans l’obscurité.” - Thomas Jefferson


Revenir en haut
Visiter le site web du posteur MSN
geeker


Hors ligne

Inscrit le: 23 Déc 2012
Messages: 363

MessagePosté le: Ven 19 Avr 2013 - 16:38    Sujet du message: [Lua]Lire ET écrire dans un fichier Répondre en citant

thermo_nono a écrit:

 très intéressant tout ça. 
mais une question me turlupine : 
pourquoi connecter un arduino à computercraft ? 
tu veux domotiser ta maison avec minecraft comme interface ? 
si c'est ton projet :  Okay  j'adore l'idée. 


edit : et pourquoi n'as tu pas choisi un raspberry pi
Une raspberry pi ? Pour la simple et bonne raison que j'ai eu ma première arduino pour mon anniv, et que je trouve ça plus polyvalent !
Mon projet consiste (pour l'instant) à établir une communication entre Minecraft (ComputerCraft) et la vraie vie, en gros ça permet de faire un circuit IRL, le prolonger dans le jeu, ajouter des fonctions/remplacer une partie qui pose problème (ex: une flip-flop) et de renvoyer cette partie dans la vraie vie . Mais à la fin, je pourrai commander ma chambre en jouant ^^
_________________
Beta-testeur de l'extrème
Tox: FFBDC8B34DC3CDE51F8F1CB0A628147DE740ACD1D44682EB5492A681F6541E32E8D8BB6052B3
CtrµLua: ctrulua.github.io
Des p'tits true, des p'tits true, toujours des p'tits true ...


Revenir en haut
Visiter le site web du posteur
thermo_nono
Modérateur

Hors ligne

Inscrit le: 31 Déc 2008
Messages: 2 415
Localisation: La Géhenne

MessagePosté le: Ven 19 Avr 2013 - 17:38    Sujet du message: [Lua]Lire ET écrire dans un fichier Répondre en citant

chapeau bas ! 
j'adore l'idée ! (je l'ai déja dit ça ^^ )
Okay Okay Okay
si tu décides de publier tes avancées, met moi un lien.. je suivrai ça avec attention. 
_________________
“Qui reçoit une idée de moi reçoit de la connaissance sans diminuer la mienne, comme celui qui allume sa chandelle à la mienne reçoit la lumière sans me plonger dans l’obscurité.” - Thomas Jefferson


Revenir en haut
Visiter le site web du posteur MSN
Reylak
Administrateur

Hors ligne

Inscrit le: 24 Nov 2008
Messages: 2 838
Localisation: Toulouse

MessagePosté le: Ven 19 Avr 2013 - 19:43    Sujet du message: [Lua]Lire ET écrire dans un fichier Répondre en citant

Moi je me pose une simple question : est-ce que le canal de communication COM3 de l'Arduino supporte le full-duplex ? Peut-être que matériellement tu ne peux pas ouvrir ce flux en lecture en même temps qu'en écriture. Utilise deux ports simultanément, un pour écrire et un pour lire.

Remarque qui a moins de rapport : marrant que tu considères l'Arduino plus polyvalent, un RaspPi ça a une distrib Linux complète dessus et au moins des ports USB, c'est plus facile à gérer non ? C'est une remarque de quelqu'un qui connaît pas du tout cette histoire-là donc je dis peut-être une connerie.
_________________


Plein d'infos sur le SourceForge !


Revenir en haut
Visiter le site web du posteur MSN Skype
geeker


Hors ligne

Inscrit le: 23 Déc 2012
Messages: 363

MessagePosté le: Ven 19 Avr 2013 - 19:53    Sujet du message: [Lua]Lire ET écrire dans un fichier Répondre en citant

Je peux ouvrir les deux en meme temps: j'ai réussit avec le vrai Lua et le port série le fait très bien ...
_________________
Beta-testeur de l'extrème
Tox: FFBDC8B34DC3CDE51F8F1CB0A628147DE740ACD1D44682EB5492A681F6541E32E8D8BB6052B3
CtrµLua: ctrulua.github.io
Des p'tits true, des p'tits true, toujours des p'tits true ...


Revenir en haut
Visiter le site web du posteur
thermo_nono
Modérateur

Hors ligne

Inscrit le: 31 Déc 2008
Messages: 2 415
Localisation: La Géhenne

MessagePosté le: Ven 19 Avr 2013 - 20:30    Sujet du message: [Lua]Lire ET écrire dans un fichier Répondre en citant

en effet, l'Arduino peut à la fois envoyer et recevoir par l'USB. 


Sinon, je trouve comme Reylak le RPi plus polyvalent, cependant, il faut admettre que l'arduino est plus convivial grâce à son langage dédié et qu'il dispose de plus d'entrées/sorties. 
_________________
“Qui reçoit une idée de moi reçoit de la connaissance sans diminuer la mienne, comme celui qui allume sa chandelle à la mienne reçoit la lumière sans me plonger dans l’obscurité.” - Thomas Jefferson


Revenir en haut
Visiter le site web du posteur MSN
Contenu Sponsorisé






MessagePosté le: Aujourd’hui à 03:50    Sujet du message: [Lua]Lire ET écrire dans un fichier

Revenir en haut
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    µLua DS - Forum officiel | Official forum Index du Forum -> Section française -> Demande d'aide Toutes les heures sont au format GMT + 1 Heure
Page 1 sur 1

 
Sauter vers:  

Index | Creer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Powered by phpBB © 2001, 2005 phpBB Group
Traduction par : phpBB-fr.com