Page 1 of 1

Liste des pilotes MicroPython déjà connus

Posted: Wed 7 Apr 2021 23:42
by Dominique
Avant de poser une question sur l'existence d'un pilote, cherchez sur les liens suivants:

Re: Liste des pilotes MicroPython déjà connus

Posted: Wed 7 Apr 2021 23:51
by Dominique

Re: Liste des pilotes MicroPython déjà connus

Posted: Thu 8 Apr 2021 08:23
by sensor56
Pour le cas du Pi Pico, on ne trouve pas encore forcément de librairie annoncées pour cette plateforme, mais d'une manière générale, d'après mon expérience, les librairies ESP32 fonctionnent immédiatement sur le Pi Pico. Voir après modification à la marge. Le point important est généralement d'utiliser les bonnes broches de la Pi Pico à l'appel du constructeur de la classe.

La raison en est que le Pi Pico partage avec l'ESP 32 la même structure du Micropython, notamment le module machine (et ses classes Pin, ADC, PWM, I2C, SPI, etc.) qui sont utilisés en général par les libs.

Re: Liste des pilotes MicroPython déjà connus

Posted: Tue 20 Apr 2021 20:32
by Dominique
sensor56 wrote: Thu 8 Apr 2021 08:23 Pour le cas du Pi Pico, on ne trouve pas encore forcément de librairie annoncées pour cette plateforme, mais d'une manière générale, d'après mon expérience, les librairies ESP32 fonctionnent immédiatement sur le Pi Pico. Voir après modification à la marge. Le point important est généralement d'utiliser les bonnes broches de la Pi Pico à l'appel du constructeur de la classe.

La raison en est que le Pi Pico partage avec l'ESP 32 la même structure du Micropython, notamment le module machine (et ses classes Pin, ADC, PWM, I2C, SPI, etc.) qui sont utilisés en général par les libs.
C'est justement pour cela que je prône l'utilisation de l'API machine et le passage du bus en Paramètre au pilote.
Du coup en créant le bus dans le script principal et en le passant en paramètre au pilote... on obtient des pilotes génériques et plateforme Agnostic.

Code: Select all

from machine import I2C
from mcp4725 import MCP4725
from time import sleep

# Pyboard - SDA=Y10, SCL=Y9
i2c = I2C(2)
# ESP8266 sous MicroPython
# i2c = I2C(scl=Pin(5), sda=Pin(4))

mcp = MCP4725( i2c = i2c )
while True:
	# Make a ramp as fast as possible
	for i in range( 65535 ): # 16 bits
		mcp.value = i