correctif

Dependencies:   mbed RF24Network RF24

Revision:
5:48f3f58ebd13
Child:
6:6a3d4e0f6799
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/isen32_board.h	Thu May 20 09:57:23 2021 +0000
@@ -0,0 +1,113 @@
+#include "mbed.h"
+
+// Nucleo Board associé à la carte ISEN
+
+DigitalOut Led1(LED1);      // PA5 attention SPI CLK aussi
+DigitalIn BTN_User(PC_13);
+
+// ISEN32 Board
+
+DigitalOut L0(PB_1);        // Dels, en sortie, reliée à PB1
+DigitalOut L1(PB_2);
+DigitalOut L2(PB_10);
+DigitalOut L3(PB_11);
+DigitalOut L4(PB_12);
+DigitalOut L5(PB_13);
+DigitalOut L6(PB_14);
+DigitalOut L7(PB_15);       // la plus à gauche
+
+DigitalIn BTN1(PA_11);       // Bouton Poussoir, en entrée, relié à PA11
+//DigitalIn BTN2(PA_12);
+//DigitalIn BTN3(PC_6);
+//DigitalIn BTN4(PC_5);
+
+//DigitalOut BZ1(PC_7);       // Buzzer, en sortie, relié à PC7
+
+//DigitalOut M1(PB_4);       // Moteur mini, en sortie, relié à PB4
+//PwmOut M1(PB_4);        // Moteur mini en mode PWM
+
+// Lignes pour entrées analogiques
+AnalogIn RV1(A0);           // RV1, en entrée analogique, relié à PA0
+AnalogIn RV2(A1);           // RV2, en entrée analogique, relié à PA1
+AnalogIn SENSOR(A4);        // Pour capteur externe, exemple capt. de temp. MCP9700 Attention en conflit possible avec DAC
+
+// Lignes SPI pour piloter le MAX7219
+SPI spi(PA_7, PA_6, PA_5);
+DigitalOut CS(PA_8);
+
+// Lignes I2C
+//DigitalOut SCL(PB_6);
+//DigitalOut SDA(PB_7);
+
+// Adresses des 2 EEPROMs I2C
+#define EEPROM1 0b1010000
+#define EEPROM2 0b1010001
+
+// Lignes pour piloter des servomoteurs
+//DigitalOut SERVO1(PB_9);
+//DigitalOut SERVO2(PB_8);
+//DigitalOut SERVO3(PC_8);
+//DigitalOut SERVO4(PC_9);
+
+// Lignes pour piloter 2 moteurs DC
+//DigitalOut EN1(PB_10);
+//PwmOut EN1(PB_10);
+//DigitalOut IN1(PB_1);
+//DigitalOut IN2(PB_2);
+
+void Set_8Dels(uint8_t position)
+{
+    L0 = position & 0x01;
+    L1 = position & 0x02;
+    L2 = position & 0x04;
+    L3 = position & 0x08;
+    L4 = position & 0x10;
+    L5 = position & 0x20;
+    L6 = position & 0x40;
+    L7 = position & 0x80;
+}
+
+/* MAX7219 : Interface SPI pour afficheur 7 segments */
+void Init_spi(void)
+{
+    spi.format(16,3);           // SPI en mode 16 bits
+
+    CS = 0;
+//    spi.write(0x0F01);          // Test Display On
+//    spi.write(0x0F00);          // Test Display Off
+    spi.write(0x0C01);
+    CS = 1;
+
+    CS = 0;
+    spi.write(0x090F);          // Mode BCD sur 4 digits
+    CS = 1;
+
+    CS = 0;
+    spi.write(0x0A03);          // Intensité à 3/15
+    CS = 1;
+
+    CS = 0;
+    spi.write(0x0B03);
+    CS = 1;
+
+//    CS = 0;
+//    spi.write(0x0F01);
+//    CS = 1;
+//    wait_ms(1000);
+    CS = 0;
+    spi.write(0x0F00);          // Test mode Off
+    CS = 1;
+
+    CS = 0;
+    spi.write(0x0101);          // Chiffre des milliers
+    CS = 1;
+    CS = 0;
+    spi.write(0x0282);          // Chiffre des centaines
+    CS = 1;
+    CS = 0;
+    spi.write(0x0303);          // Chiffre des dizaines
+    CS = 1;
+    CS = 0;
+    spi.write(0x0404);          // Chiffre des unités
+    CS = 1;
+}