fbpixel
Étiquettes :
5
(1)

Le Raspberry Pi Pico est une carte de développement basé sur le microcontrôleur RP2040. Son microprocesseur double coeur Arm Cortex M0+ en fait une carte bon marché et puissante. Elle peut être programmé en C++ et Python. La version W permet aussi de se connecter au Wifi.

Quelques caractéristiques de la carte

  • Mode « sleep » et « dormant » pour économie d’énergie
  • 2 × SPI, 2 × I2C, 2 × UART, 3 × entrées analogique
  • 16 × canaux PWM contrôlables (tous les GPIO peuvent émettre une pwm)
  • Horloge et minuterie intégrées
  • Capteur de température interne
  • 8 × machines d’état à entrées/sorties programmables (PIO) pour le support de périphériques personnalisés

Caractéristiques du microcontrôleur

Le microcontrôleur Raspberry Pi Pico utilise le microprocesseur Dual ARM Cortex-M0+. Ce processeur fonctionne à une fréquence d’horloge de 133 MHz. Il possède une mémoire RAM de 264 kB et une mémoire Flash de 2000 kB (pour la programmation et l’enregistrement de données).

  • CPU Dual ARM Cortex-M0+
  • Voltage : 5V
  • Flash : 2000 kB
  • RAM : 264 kB
  • Clock speed : 133MHz
  • WiFi : Yes(W)
  • Bluetooth : No
  • SD : No

Alimentation électrique

Le microcontrôleur Raspberry Pi Pico fonctionne sur une plage de tension de 1.8-5.5V grâce à son régulateur de tension embarqué.Le microprocesseur, quant à lui, fonctionne avec une tension de 3.3V. Le microcontrôleur consomme, en fonctionnement normal, jusqu’à 90mA (s’il n’alimente rien) et peut accepter sur chacune des broches IO un courant maximum de 16mA.

Pinout

  • Analog I/O : 3 (26, 27, 28)
  • Digital I/O : 26 (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 26, 27, 28)
  • Broches PWM : 16 (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
  • Communication Serial: 2 ((0, 1), (4, 5))
  • Communication I2C : 2 ((4, 5), (2, 3))
  • Communication SPI : 2 ((5, 2, 4, 3), (9, 10, 12, 11))

Code C de base et identification des broches

#include <Arduino.h>

const int analogPin=A0; // broches A0,A1,A2 ou 26,27,28 
//(29=A3 Temperature sensor) 
const int digitalInPin=2; // broches 0-22,26-28
const int digitalOutPin=4; 
const int pwmPin=3; //2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17

int analogVal=0;
int digitalState=LOW;
int pwmVal=250;

void setup() {
  Serial.begin(115200);
  
  pinMode(analogPin,INPUT_PULLUP); // Argument OUTPUT, INPUT, INPUT_PULLUP
  pinMode(digitalInPin,INPUT);
  pinMode(digitalOutPin,OUTPUT);
  pinMode(pwmPin,OUTPUT);
}

void loop() {
 analogVal=analogRead(analogPin); // return int
 Serial.print("Analog read : ");Serial.println(analogVal);
 digitalState=digitalRead(digitalInPin); // return boolean
 Serial.print("Digital read : ");Serial.println(digitalState);
 
 digitalWrite(digitalOutPin,HIGH); // valeur LOW(0) ou HIGH(1)
 analogWrite(pwmPin,pwmVal);// valeur 0-255 en fonction de analogWriteResolution();
}

Résumé des caractéristiques

Microcontrôleur
Nom: RaspberryPiPico
Marque: RaspberryPi
Caractéristiques
CPU: Dual ARM Cortex-M0+
Tension d’alimentation : 1.8-5.5V
Tension logique: 5V
E/S digitales: -1
Entrées analogiques: 0
Flash: 2000kB
SRAM: 264kB
EEPROM: NCkB
Fréquence d’horloge: 133 MHz
Wifi: Yes(W)
Bluetooth: No
SD card: No
Touch: No
UART/SPI/I2C/I2S: Yes/Yes/Yes/No

Par où commencer

Sources

How useful was this post?

Click on a star to rate it!

Average rating 5 / 5. Vote count: 1

No votes so far! Be the first to rate this post.

As you found this post useful...

Follow us on social media!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?