Langage de programmation pour utiliser les ports séries (COM)
Fermé
aj112
Messages postés
3
Date d'inscription
mercredi 10 juin 2015
Statut
Membre
Dernière intervention
12 juin 2015
-
10 juin 2015 à 11:04
Utilisateur anonyme - 13 juin 2015 à 11:53
Utilisateur anonyme - 13 juin 2015 à 11:53
3 réponses
aj112
Messages postés
3
Date d'inscription
mercredi 10 juin 2015
Statut
Membre
Dernière intervention
12 juin 2015
11 juin 2015 à 13:50
11 juin 2015 à 13:50
Personne pour m'aider ? Je n'ai pas été assez clair ?
Pierrecastor
Messages postés
41110
Date d'inscription
mercredi 5 novembre 2003
Statut
Modérateur
Dernière intervention
15 mars 2023
4 186
11 juin 2015 à 14:21
11 juin 2015 à 14:21
Salut
Un peu au pifometre, mais pour du multi plateforme, intuitif, pas compliqué et tous ça, tu peut regarder du coté de python.
Un peu au pifometre, mais pour du multi plateforme, intuitif, pas compliqué et tous ça, tu peut regarder du coté de python.
Salut,
Je dirais faire appel aux instructions asm in/out (par asm inline ou intrinsic ou encore asm pur ^^) et regarde du coté de la doc (https://wiki.osdev.org/Serial_Ports de ces ports pour COM:
Pour faire appel aux instructions in/out, il te faudra un Windows/Linux 32-bits, car l'appel de ces instructions sur win64 (et lin64 surement) est interdit (plantage du programme/user mode).
Par contre si tu fais ton propre système, tu pourras choisir si tu l'interdis ou non.
Et ne t'en fait pas, l'adresse de ces ports ou autres, reste statique sur un PC, quel que soit ton OS.
Basic asm standard: reg(lowercase) instruction(lowercase) -> instruction dest, src
(\___/)
(='.'=)
(")_(")
This is Bunny. Copy and paste bunny into
your signature to help him gain world domination
Je dirais faire appel aux instructions asm in/out (par asm inline ou intrinsic ou encore asm pur ^^) et regarde du coté de la doc (https://wiki.osdev.org/Serial_Ports de ces ports pour COM:
*------------------------------Port COM------------------------------* Port Série: 0x3F8, 0x2F8, 0x3E8, 0x2E8 Time out: 1 , 1 , 1 , 1 Port parallèle: 0x3BC, 0x378, 0x278, 0x9FC0 Time out: 20 , 20 , 20 , 20 *--------------------------------------------------------------------------*
Pour faire appel aux instructions in/out, il te faudra un Windows/Linux 32-bits, car l'appel de ces instructions sur win64 (et lin64 surement) est interdit (plantage du programme/user mode).
Par contre si tu fais ton propre système, tu pourras choisir si tu l'interdis ou non.
Et ne t'en fait pas, l'adresse de ces ports ou autres, reste statique sur un PC, quel que soit ton OS.
Basic asm standard: reg(lowercase) instruction(lowercase) -> instruction dest, src
(\___/)
(='.'=)
(")_(")
This is Bunny. Copy and paste bunny into
your signature to help him gain world domination
aj112
Messages postés
3
Date d'inscription
mercredi 10 juin 2015
Statut
Membre
Dernière intervention
12 juin 2015
12 juin 2015 à 10:19
12 juin 2015 à 10:19
Je vous remercie pour vos réponses ! Je vais jeter un coup d'oeil aux commandes asm in/out, mais en lisant ce que tu me dis ce qui m'embête c'est que je vais devoir développer sur du 64 bits, donc je ne pourrai pas les utiliser ...
Sinon entre temps j'ai tenté d'installer SMSLIbv pour Java, mais quel bord*l ! Impossible d'installer correctement tellement il y a de manip' à faire ... Donc si quelqu'un a une idée d'un langage qui permet d'installer des API simplement, je suis preneur ! Du genre Python avec pySerial ?
Sinon entre temps j'ai tenté d'installer SMSLIbv pour Java, mais quel bord*l ! Impossible d'installer correctement tellement il y a de manip' à faire ... Donc si quelqu'un a une idée d'un langage qui permet d'installer des API simplement, je suis preneur ! Du genre Python avec pySerial ?
Pierrecastor
Messages postés
41110
Date d'inscription
mercredi 5 novembre 2003
Statut
Modérateur
Dernière intervention
15 mars 2023
4 186
>
aj112
13 juin 2015 à 11:19
13 juin 2015 à 11:19
On peut faire tourner un logiciel 32 bits sur une architecture 64. C'est d'ailleurs le cas de la majorité des logiciels.
Ok ^^ de toute façon même en faisant du 32-bit sur un win64, tu n'arriveras pas à faire de l'I/O manuellement.
Honnêtement je ne sais pas, si ton API ne fait pas planter ton programme, alors c'est bon ça passe, ça doit passer par des couches supérieures, la WinAPI pour Windows et la unknow pour Linux x)
Honnêtement je ne sais pas, si ton API ne fait pas planter ton programme, alors c'est bon ça passe, ça doit passer par des couches supérieures, la WinAPI pour Windows et la unknow pour Linux x)