Yncréa ISEN Nimes CSI3 Electronique Numérique RF24Network Base 00
Dependencies: mbed RF24Network RF24
isen32_board.h@5:7937720a2afe, 2021-05-23 (annotated)
- Committer:
- Giamarchi
- Date:
- Sun May 23 23:40:19 2021 +0000
- Revision:
- 5:7937720a2afe
- Parent:
- 4:25610749c91c
- Child:
- 6:b5f1a2ddbb56
no modif
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Giamarchi | 4:25610749c91c | 1 | #include "mbed.h" |
Giamarchi | 4:25610749c91c | 2 | |
Giamarchi | 4:25610749c91c | 3 | // Nucleo Board associé à la carte ISEN |
Giamarchi | 4:25610749c91c | 4 | |
Giamarchi | 4:25610749c91c | 5 | DigitalOut Led1(LED1); // PA5 attention SPI CLK aussi |
Giamarchi | 4:25610749c91c | 6 | DigitalIn BTN_User(PC_13); |
Giamarchi | 4:25610749c91c | 7 | |
Giamarchi | 4:25610749c91c | 8 | // ISEN32 Board |
Giamarchi | 5:7937720a2afe | 9 | /* |
Giamarchi | 4:25610749c91c | 10 | DigitalOut L0(PB_1); // Dels, en sortie, reliée à PB1 |
Giamarchi | 4:25610749c91c | 11 | DigitalOut L1(PB_2); |
Giamarchi | 4:25610749c91c | 12 | DigitalOut L2(PB_10); |
Giamarchi | 4:25610749c91c | 13 | DigitalOut L3(PB_11); |
Giamarchi | 4:25610749c91c | 14 | DigitalOut L4(PB_12); |
Giamarchi | 4:25610749c91c | 15 | DigitalOut L5(PB_13); |
Giamarchi | 4:25610749c91c | 16 | DigitalOut L6(PB_14); |
Giamarchi | 4:25610749c91c | 17 | DigitalOut L7(PB_15); // la plus à gauche |
Giamarchi | 5:7937720a2afe | 18 | */ |
Giamarchi | 4:25610749c91c | 19 | DigitalIn BTN1(PA_11); // Bouton Poussoir, en entrée, relié à PA11 |
Giamarchi | 4:25610749c91c | 20 | DigitalIn BTN2(PA_12); |
Giamarchi | 4:25610749c91c | 21 | DigitalIn BTN3(PC_6); |
Giamarchi | 4:25610749c91c | 22 | DigitalIn BTN4(PC_5); |
Giamarchi | 4:25610749c91c | 23 | |
Giamarchi | 4:25610749c91c | 24 | DigitalOut BZ1(PC_7); // Buzzer, en sortie, relié à PC7 |
Giamarchi | 4:25610749c91c | 25 | |
Giamarchi | 4:25610749c91c | 26 | //DigitalOut M1(PB_4); // Moteur mini, en sortie, relié à PB4 |
Giamarchi | 4:25610749c91c | 27 | //PwmOut M1(PB_4); // Moteur mini en mode PWM |
Giamarchi | 4:25610749c91c | 28 | |
Giamarchi | 4:25610749c91c | 29 | // Lignes pour entrées analogiques |
Giamarchi | 4:25610749c91c | 30 | AnalogIn RV1(A0); // RV1, en entrée analogique, relié à PA0 |
Giamarchi | 4:25610749c91c | 31 | AnalogIn RV2(A1); // RV2, en entrée analogique, relié à PA1 |
Giamarchi | 4:25610749c91c | 32 | AnalogIn SENSOR(A4); // Pour capteur externe, exemple capt. de temp. MCP9700 Attention en conflit possible avec DAC |
Giamarchi | 4:25610749c91c | 33 | |
Giamarchi | 4:25610749c91c | 34 | // Lignes SPI pour piloter le MAX7219 |
Giamarchi | 4:25610749c91c | 35 | SPI spi(PA_7, PA_6, PA_5); |
Giamarchi | 4:25610749c91c | 36 | DigitalOut CS(PA_8); |
Giamarchi | 4:25610749c91c | 37 | |
Giamarchi | 4:25610749c91c | 38 | // Lignes I2C |
Giamarchi | 4:25610749c91c | 39 | //DigitalOut SCL(PB_6); |
Giamarchi | 4:25610749c91c | 40 | //DigitalOut SDA(PB_7); |
Giamarchi | 4:25610749c91c | 41 | |
Giamarchi | 4:25610749c91c | 42 | // Adresses des 2 EEPROMs I2C |
Giamarchi | 4:25610749c91c | 43 | #define EEPROM1 0b1010000 |
Giamarchi | 4:25610749c91c | 44 | #define EEPROM2 0b1010001 |
Giamarchi | 4:25610749c91c | 45 | |
Giamarchi | 4:25610749c91c | 46 | // Lignes pour piloter des servomoteurs |
Giamarchi | 4:25610749c91c | 47 | //DigitalOut SERVO1(PB_9); |
Giamarchi | 4:25610749c91c | 48 | //DigitalOut SERVO2(PB_8); |
Giamarchi | 4:25610749c91c | 49 | //DigitalOut SERVO3(PC_8); |
Giamarchi | 4:25610749c91c | 50 | //DigitalOut SERVO4(PC_9); |
Giamarchi | 4:25610749c91c | 51 | |
Giamarchi | 4:25610749c91c | 52 | // Lignes pour piloter 2 moteurs DC |
Giamarchi | 4:25610749c91c | 53 | //DigitalOut EN1(PB_10); |
Giamarchi | 4:25610749c91c | 54 | //PwmOut EN1(PB_10); |
Giamarchi | 4:25610749c91c | 55 | //DigitalOut IN1(PB_1); |
Giamarchi | 4:25610749c91c | 56 | //DigitalOut IN2(PB_2); |
Giamarchi | 5:7937720a2afe | 57 | /* |
Giamarchi | 4:25610749c91c | 58 | void Set_8Dels(uint8_t position) |
Giamarchi | 4:25610749c91c | 59 | { |
Giamarchi | 4:25610749c91c | 60 | L0 = position & 0x01; |
Giamarchi | 4:25610749c91c | 61 | L1 = position & 0x02; |
Giamarchi | 4:25610749c91c | 62 | L2 = position & 0x04; |
Giamarchi | 4:25610749c91c | 63 | L3 = position & 0x08; |
Giamarchi | 4:25610749c91c | 64 | L4 = position & 0x10; |
Giamarchi | 4:25610749c91c | 65 | L5 = position & 0x20; |
Giamarchi | 4:25610749c91c | 66 | L6 = position & 0x40; |
Giamarchi | 4:25610749c91c | 67 | L7 = position & 0x80; |
Giamarchi | 4:25610749c91c | 68 | } |
Giamarchi | 5:7937720a2afe | 69 | */ |
Giamarchi | 4:25610749c91c | 70 | /* MAX7219 : Interface SPI pour afficheur 7 segments */ |
Giamarchi | 4:25610749c91c | 71 | void Init_spi(void) |
Giamarchi | 4:25610749c91c | 72 | { |
Giamarchi | 4:25610749c91c | 73 | spi.format(16,3); // SPI en mode 16 bits |
Giamarchi | 4:25610749c91c | 74 | |
Giamarchi | 4:25610749c91c | 75 | CS = 0; |
Giamarchi | 4:25610749c91c | 76 | // spi.write(0x0F01); // Test Display On |
Giamarchi | 4:25610749c91c | 77 | // spi.write(0x0F00); // Test Display Off |
Giamarchi | 4:25610749c91c | 78 | spi.write(0x0C01); |
Giamarchi | 4:25610749c91c | 79 | CS = 1; |
Giamarchi | 4:25610749c91c | 80 | |
Giamarchi | 4:25610749c91c | 81 | CS = 0; |
Giamarchi | 4:25610749c91c | 82 | spi.write(0x090F); // Mode BCD sur 4 digits |
Giamarchi | 4:25610749c91c | 83 | CS = 1; |
Giamarchi | 4:25610749c91c | 84 | |
Giamarchi | 4:25610749c91c | 85 | CS = 0; |
Giamarchi | 4:25610749c91c | 86 | spi.write(0x0A03); // Intensité à 3/15 |
Giamarchi | 4:25610749c91c | 87 | CS = 1; |
Giamarchi | 4:25610749c91c | 88 | |
Giamarchi | 4:25610749c91c | 89 | CS = 0; |
Giamarchi | 4:25610749c91c | 90 | spi.write(0x0B03); |
Giamarchi | 4:25610749c91c | 91 | CS = 1; |
Giamarchi | 4:25610749c91c | 92 | |
Giamarchi | 4:25610749c91c | 93 | // CS = 0; |
Giamarchi | 4:25610749c91c | 94 | // spi.write(0x0F01); |
Giamarchi | 4:25610749c91c | 95 | // CS = 1; |
Giamarchi | 4:25610749c91c | 96 | // wait_ms(1000); |
Giamarchi | 4:25610749c91c | 97 | CS = 0; |
Giamarchi | 4:25610749c91c | 98 | spi.write(0x0F00); // Test mode Off |
Giamarchi | 4:25610749c91c | 99 | CS = 1; |
Giamarchi | 4:25610749c91c | 100 | |
Giamarchi | 4:25610749c91c | 101 | CS = 0; |
Giamarchi | 4:25610749c91c | 102 | spi.write(0x0101); // Chiffre des milliers |
Giamarchi | 4:25610749c91c | 103 | CS = 1; |
Giamarchi | 4:25610749c91c | 104 | CS = 0; |
Giamarchi | 4:25610749c91c | 105 | spi.write(0x0282); // Chiffre des centaines |
Giamarchi | 4:25610749c91c | 106 | CS = 1; |
Giamarchi | 4:25610749c91c | 107 | CS = 0; |
Giamarchi | 4:25610749c91c | 108 | spi.write(0x0303); // Chiffre des dizaines |
Giamarchi | 4:25610749c91c | 109 | CS = 1; |
Giamarchi | 4:25610749c91c | 110 | CS = 0; |
Giamarchi | 4:25610749c91c | 111 | spi.write(0x0404); // Chiffre des unités |
Giamarchi | 4:25610749c91c | 112 | CS = 1; |
Giamarchi | 4:25610749c91c | 113 | } |