arduino:rcan-fr
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
arduino:rcan-fr [2021/08/03 11:41] – [Port configuration byte] phil45 | arduino:rcan-fr [2024/03/13 10:13] (current) – [RCAN: GC2a] phil45 | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== RCAN: GC2a ====== | ====== RCAN: GC2a ====== | ||
+ | |||
+ | |||
\\ | \\ | ||
{{: | {{: | ||
\\ | \\ | ||
=====Introduction===== | =====Introduction===== | ||
+ | {{ : | ||
La série de matériels courants __**[[: | La série de matériels courants __**[[: | ||
RCAN est le firmware pour les solutions basées sur le CAN sur la plateforme Arduino.\\ | RCAN est le firmware pour les solutions basées sur le CAN sur la plateforme Arduino.\\ | ||
- | La cible du firmware est l' | + | La cible du firmware est l' |
\\ | \\ | ||
=====Dépendances===== | =====Dépendances===== | ||
- | {{ : | + | {{: |
- | La seule bibliothèque | + | Ajouter la bibliothèque **mcp_can** dans l'IDE Arduino |
- | | + | |
- | pour être capable de communiquer avec la puce MCP2515.\\ | + | |
====Modifications==== | ====Modifications==== | ||
- | Deux modifications | + | Une modification |
+ | '' | ||
<code cpp> | <code cpp> | ||
// if print debug information | // if print debug information | ||
+ | #ifndef DEBUG_MODE | ||
//#define DEBUG_MODE 1 | //#define DEBUG_MODE 1 | ||
- | + | #endif | |
- | /* | + | |
- | | + | |
- | */ | + | |
- | #define TIMEOUTVALUE | + | |
</ | </ | ||
- | Le TIMEOUTVALUE de 50 à l' | + | __ Il est très important de désactiver le DEBUG_MODE sinon il n'y a pas assez de mémoire disponible. L'IDE Arduino IDE se plaindra à propos de cela, et RCAN redémarrera continuellement.__\\ |
- | __Il est très important de désactiver le DEBUG_MODE sinon il n'y a pas assez de mémoire disponible. L'IDE Arduino IDE se plaindra à propos de cela, et RCAN redémarrera continuellement.__\\ | + | |
\\ | \\ | ||
=====Carte GPIO===== | =====Carte GPIO===== | ||
La différence entre le version standard à base de PIC et les cartes Arduino est le schéma d' | La différence entre le version standard à base de PIC et les cartes Arduino est le schéma d' | ||
- | {{ : | + | {{ : |
Le GPIO est compatible avec le __**[[: | Le GPIO est compatible avec le __**[[: | ||
| Le Nano avec l' | | Le Nano avec l' | ||
\\ | \\ | ||
- | ====Broches d' | + | ====Broches d' |
- | ^ Broche du Nano ^ GC2a ^ ArduCAN-IO | + | |< >| |
- | | A6 | 10 | + | ^ Broche du Nano ^ GC2a ^ |
- | | A7 | 9 | + | | A6 | 10 | |
+ | | A7 | 9 | | ||
+ | |||
+ | **Note 1:** //Utilisez le __**[[https:// | ||
+ | **Note 2:** //Pour de meilleures performances **un quartz de 16MHz** devrait être utilisé.// | ||
====Variables==== | ====Variables==== | ||
^ Variable Nr ^ Description ^ | ^ Variable Nr ^ Description ^ | ||
Line 63: | Line 65: | ||
^ Bit ^ Valeur ^ Fonction ^ Remarque ^ | ^ Bit ^ Valeur ^ Fonction ^ Remarque ^ | ||
| 0 | 1 | Entrée | Initialise le port comme entrée avec résistance de tirage interne. \\ La carte GC2a fournira également des réseaux de résistances de 10 kOhm parce que la valeur des résistances de tirage interne est trop élevée. | | | 0 | 1 | Entrée | Initialise le port comme entrée avec résistance de tirage interne. \\ La carte GC2a fournira également des réseaux de résistances de 10 kOhm parce que la valeur des résistances de tirage interne est trop élevée. | | ||
- | | 0 | 0 | Output | + | | 0 | 0 | Sortie |
- | | 1 | 1 | Input off delay | Input 2 seconds off delay for occupancy detectors. | | + | | 1 | 1 | Délai de désactivation de l' |
- | | 1 | 1 | Output pulse | Pulse length according the global node configuration. | | + | | 1 | 1 | Impulsion de sortie |
- | | 2 | 1 | Invert | + | | 2 | 1 | Inversion |
- | | 3 | 1 | IR port | Not used. | | + | | 4 | 1 | Sync | Synchronise |
- | | 4 | 1 | Sync | Synchronise | + | |
\\ | \\ | ||
====CBUS==== | ====CBUS==== | ||
- | //The CBUS protocol is copyrighted by Mike Bolton & Gil Fuchs.// | + | //Le protocole |
- | ^ CBUS-> | + | ^ CBUS-> |
- | | Event node number | + | | Numéro de l' |
- | | Event address | + | | Adresse de l' |
- | Module node number and module CANID are the same and just one value in the firmware.\\ | + | Le numéro de nœud du module et le module CANID sont les mêmes et juste une valeur dans le firmware.\\ |
- | The CBUS learning | + | Le mode d' |
\\ | \\ | ||
- | The same flat addressing scheme can be used with the PIC based boards by setting the event node numbers to the modules | + | Le même schéma d' |
- | In case the RCAN based modules | + | Dans le cas où les modules |
\\ | \\ | ||
====MBus==== | ====MBus==== | ||
- | Support | + | Support |
- | * Inputs are reported as s88 events. (0x11) | + | * Les entrées sont rapportées comme des évènements |
- | * Outputs react on 0x0B with MM 0x3nnn. | + | * Les sorties réagissent sur 0x0B avec MM 0x3nnn. |
- | * Read/Write config with 0x07 and 0x08. | + | * Configuration Lecture/Écriture avec 0x07 et 0x08. |
- | * Ping is also supported as query in the CBus Node Dialog. | + | * Le Ping est également supporté comme interrogation dans le dialogue du Nœud CBus. |
\\ | \\ | ||
\\ | \\ | ||
- | =====Serial Monitor===== | + | =====Moniteur Série===== |
500000bps\\ | 500000bps\\ | ||
- | ^ Command | + | ^ Commande |
- | | usbon/ | + | | usbon/ |
- | | dump | Shows the EEPROM | + | | dump | Affiche les premiers 64 octets de l'EEPROM | |
- | | sod | Start of Day | | + | | sod | Début de Journée |
- | | init | Re-init all I/O | | + | | init | Réinitialise toutes les E/S | |
- | | stat | Shows the I/O state | | + | | stat | Affiche l' |
- | | pub | Publish board identification and type | | + | | pub | Publie l' |
- | | loop | Set the loopback | + | | loop | Règle le mode loopback pour cette session. | |
- | | norm | Set the normal | + | | norm | Règle le mode normal. (par défaut) | |
- | | cbus | Switch to CBUS protocol. (125k) (default) | | + | | cbus | Commute le protocole |
- | | mbus | Switch to Märklin | + | | mbus | Commute le protocole |
- | | 8m | Set MCP2515 | + | | 8m | Règle la vitesse de l' |
- | | 16m | Set MCP2515 | + | | 16m | Règle la vitesse de l' |
- | | l0 | Set pin layout to fit the CANGC2a. (default) -> Push the reset button to make changes active. | + | | gpio | 16 ports E/ |
- | | l1 | Set pin layout to fit the ArduCAN-I/O. -> Push the reset button to make changes active. | + | | servo | 4 ports servo et 12 ports E/S | |
- | | =<id> | Set the CANID. | + | | =<id> | Règle le CANID. |
- | | #< | + | | $pppppppppppppppp | Configure plusieurs ports: Le <p> peut être: 0 pour la sortie, 1 pour l' |
- | | : | + | | #< |
+ | | : | ||
- | Also all CAN traffic and supported | + | Aussi tous le trafic |
- | ====Loopback | + | ====Mode |
- | | //The original text is found in the Microchip | + | | //Le texte d' |
- | > Loopback | + | > Le mode Loopback autorisera la transmission |
- | > This mode can be used in system development and testing. | + | > Ce mode peut être utilisé lors du développement et les tests de système. |
- | > In this mode, the ACK bit is ignored and the device will allow incoming | + | > Dasn ce mode, le bit ACK est ignoré et le périphérique autorisera l' |
- | > The Loopback | + | > Le mode Loopback est un mode silencieux, signifiant qu' |
- | ====Monitor output example==== | + | ====Exemple de sortie du moniteur==== |
< | < | ||
MBus 0x3017 | MBus 0x3017 | ||
Line 138: | Line 140: | ||
\\ | \\ | ||
- | =====Setup===== | + | =====Configuration===== |
{{: | {{: | ||
- | The CBUS-IO | + | Le CBUS-IO |
- | The firmware | + | La version |
\\ | \\ | ||
- | ====Incompatibilities==== | + | ====Incompatibilités==== |
- | * SLiM is not supported | + | * SLiM n'est pas supporté |
- | * FLiM is not supported | + | * FLiM n'est pas supporté |
- | * Learn mode is not supported | + | * Le mode apprentissage n'est pas supporté |
- | * The ‘Device Addressed’ model; This is fixed: NN -> CANID, DN -> Port 1...16 | + | * Le modèle |
- | * The push button will not request a node number by OPC_RQNN, | + | * Le bouton poussoir ne demandera pas de numéro de nœud par OPC_RQNN, |
- | ====Drawbacks==== | + | ====Désavantages==== |
- | With the FLAT addressing it is not possible | + | Avec l' |
- | This option | + | Cette option |
- | __Tip:__ With the **[[# | + | __Astuce:__ Avec le **[[# |
\\ | \\ | ||
- | =====Push Button===== | + | =====Bouton poussoir===== |
- | The push button on the Arduino | + | Le bouton poussoir sur l'Arduino |
- | After every reboot an OPC_PNN | + | Après chaque redémarrage un OPC_PNN |
- | This feature can be used to identify a node.\\ | + | Cette caractéristique peut être utilisé pour identifier un nœud.\\ |
\\ | \\ | ||
- | =====GC2a | + | =====GC2a |
- | The GC2a can be used parallel as CBus/ | + | Le GC2a peut être utilisé en parallèle comme interface |
- | It uses the same ASCII framing as the CANGC1(e) | + | Il utilise le même format |
{{: | {{: | ||
- | Line setting must be set to: | + | La configuration de la ligne doit être réglée à: |
* USB | * USB | ||
- | * 500000bps (This is set automatically in case of USB type.) | + | * 500000bps (Cela est réglé automatiquement en cas de type USB.) |
- | * __No__ hardware handshake | + | * __Pas__ d' |
* Linefeed | * Linefeed | ||
- | With this option, | + | Avec cette option, |
- | > Note: Because the [[https:// | + | > Note 1: Parce que le [[https:// |
+ | > Note 2: Pour de meilleurs performances un quartz de 16MHz devra être utilisé. | ||
\\ | \\ | ||
=====SyncID===== | =====SyncID===== | ||
- | The SyncID | + | L'option |
- | The port mapping is 1:1.\\ | + | La cartographie du port est 1:1.\\ |
- | It can also be use to switch multiple outputs with a single Rocrail command.\\ | + | Cela peut également être utilisé pour commuter plusieurs sorties avec une seule commande rocrail.\\ |
- | ====Example==== | + | ====Exemple==== |
- | On board with ID 33 is input port switched to ON.\\ | + | Sur la carte avec l' |
- | Another board with ID 22 hast set SyncID | + | Une autre carte avec l' |
- | This situation | + | Cette situation |
\\ | \\ | ||
- | =====Source | + | |
+ | |||
+ | =====Code | ||
+ | * {{: | ||
* https:// | * https:// | ||
- | * https:// | ||
====Documentation==== | ====Documentation==== | ||
- | ===Schedule and PCB=== | + | ===Programme et circuit imprimé=== |
* https:// | * https:// | ||
arduino/rcan-fr.1627983700.txt.gz · Last modified: 2021/08/03 11:41 by phil45