Bonjour,
finalement j'ai récupéré une carte Atmel ATMEGA32,
j'ai déjà programmé dessus sur Windows avec un logiciel payant d'Atmel "Caviar" qui permet une cross-compilation et un envoi du programme sur la carte.
apparement le cross-compilateur est open source sur linux :
sur debian j'ai installé
- gcc-avr
- avr-libc
- binutils-avr
- avrprog
donc j'ai compilé un prog simple :
avr-gcc main.c
mais je ne sais pas comment l'envoyer sur la carte.
Sinon j'aimerai que la carte gère le protocole Modbus par port série avec le PC, mais comme la carte ne gère pas le multi-tâche, je sais pas trop comment faire.
Faut faire une boucle qui scrute le port COM ? ou utiliser une interruption ?
Ca à l'air de convenir, supporté par linux, lib C et autre languages, fournie avec code source pour piloter, bonne doc, par contre elles sont chères.
Question :
Je programme avec Qt, je sais qu'il y'a des classes pour gérer les E/S (QIODevice ), est-ce possible/facile de gérer une carte sans se servir du driver ?
L'intéret aussi est que Qt est multiplateforme
[^] # Re: No init found...
Posté par ilip . En réponse au message no init found. Évalué à 1.
j'ai essayer de passer l'option init=/sbin/init, ca fait pareil.
avec le noyau d'origine, le init marche sans problème. ca doit être plus un problème de système de fichier mal monté, je ne vois rien d'autre.
[^] # Re: Essais TCP
Posté par ilip . En réponse au message lien entre un site PHP et un programme C++. Évalué à 1.
l'objectif est que lorsque des données arrivent dans la socket du serveur php, une fonction se lance automatiquement.
ca éviterai de scruter constament la socket dans un thread.
mais je sais pas si c'est possible en PHP.
sinon peut être qu'a partir du programme C++ je peux grâce à une commande en DBUS amener le serveur PHP à faire une procédure.
[^] # Re: Essais TCP
Posté par ilip . En réponse au message lien entre un site PHP et un programme C++. Évalué à 1.
# Essais TCP
Posté par ilip . En réponse au message lien entre un site PHP et un programme C++. Évalué à 1.
serveur TCP en Qt
un socket en PHP
j'envoie une trame dans le PHP avec socket_write
je la reçoit bien dans Qt.
par contre je vais avoir un soucis :
dans ce sens je peux interpréter instantanément la trame dans Qt grâce au signal readyRead()
mais coté PHP, je crois pas qu'il puisse déclencher un signal quand qqc arrive sur le socket.
et je vois pas trop comment lire régulièrement la socket PHP sans être bloquant.
# fork & pipe
Posté par ilip . En réponse au message lien entre un site PHP et un programme C++. Évalué à 1.
"les pipes, les forks"
Le php est interprété par le serveur, donc je vois pas trop comment faire un fork.
Tu parle bien de fork sur le serveur PHP ?
Pour l'instant je vois que TCP, en envoyant des trames directement du code PHP
# PS
Posté par ilip . En réponse au message lien entre un site PHP et un programme C++. Évalué à 1.
J'ai pas trouvé comment on modifie un message sur ce forum.
[^] # Re: --> AVR Atmel & linux
Posté par ilip . En réponse au message Piloter une carte E/S par USB. Évalué à 1.
mais j'ai un soucis pour charger le programme.
Pour charger le programme dans la carte on peut utiliser avrdude :
avrdude -p m32 -c stk500 -P /dev/ttyS0 -p m32
(options pour AtMega32)
J'obtiens :
avrdude: ser_open(): can't set attributes for device "/dev/ttyS0": Inappropriate ioctl for device
Donc je me dit que la carte n'est pas reconnue par mon linux
lorsque je la branche au PC par un cable USB, le dmesg me donne :
[ 8997.352073] usb 5-2: new full speed USB device using uhci_hcd and address 12
[ 8997.552158] usb 5-2: configuration #1 chosen from 1 choice
La carte est elle reconnue ou faut il ajouter des modules en dur dans le kernel ?
# --> AVR Atmel & linux
Posté par ilip . En réponse au message Piloter une carte E/S par USB. Évalué à 1.
finalement j'ai récupéré une carte Atmel ATMEGA32,
j'ai déjà programmé dessus sur Windows avec un logiciel payant d'Atmel "Caviar" qui permet une cross-compilation et un envoi du programme sur la carte.
apparement le cross-compilateur est open source sur linux :
sur debian j'ai installé
- gcc-avr
- avr-libc
- binutils-avr
- avrprog
donc j'ai compilé un prog simple :
avr-gcc main.c
mais je ne sais pas comment l'envoyer sur la carte.
Sinon j'aimerai que la carte gère le protocole Modbus par port série avec le PC, mais comme la carte ne gère pas le multi-tâche, je sais pas trop comment faire.
Faut faire une boucle qui scrute le port COM ? ou utiliser une interruption ?
[^] # Re: Phidgets
Posté par ilip . En réponse au message Piloter une carte E/S par USB. Évalué à 1.
Question :
Je programme avec Qt, je sais qu'il y'a des classes pour gérer les E/S (QIODevice ), est-ce possible/facile de gérer une carte sans se servir du driver ?
L'intéret aussi est que Qt est multiplateforme
[^] # Re: Un microcontroleur sur port USB ?
Posté par ilip . En réponse au message Piloter une carte E/S par USB. Évalué à 1.
[^] # Re: Arduino
Posté par ilip . En réponse au message Piloter une carte E/S par USB. Évalué à 1.
Mais je ne suis pas sûr du fonctionnement :
- Est-ce une carte dans laquelle on envoi un programme et qui est par la suite autonome?
- Ou est-ce qu'on peut piloter directement les E/S par un programme C sur un PC branché en USB sur la carte ?
[^] # Re: Un port parallèle sur usb
Posté par ilip . En réponse au message Piloter une carte E/S par USB. Évalué à 1.
[^] # Re: Un port parallèle sur usb
Posté par ilip . En réponse au message Piloter une carte E/S par USB. Évalué à 2.
Le but est de remplacer un automate par une carte PC + carte E/S, ce qui donne un ensemble pas cher et commandé par PC.
Ca devrai être utilisé en domotique, mais je ne connais pas trop ce domaine.