Produktbeskrivning
QT Py 2040 är ett mycket litet utvecklingskort från Adafruit, baserat på Raspberry Pis RP2040-krets.
Kortet är bara 20x17.5mm stort (litet!), har krenellerade kanter för ytmontering, men har trots sin lilla storlek gott om beräkningskraft: en tvåkärning 32-bitars ARM-Cortex M0+ med 120 MHz klockfrekvens, 8MB SPI Flash, 264 KB Ram.
Kan agera HID, Midi, USB-serie-apparat eller till och med som en pluttig hårddisk för alla operativsystem (native USB).
QT Py 2040 har en kontakt för Stemma QT, en port för snabba prototyper med en uppsjö sensorer, displayer, m.m. Stemma QT är i princip samma sak som Sparkfuns Qwiic-system med ett annat namn, så även de korten fungerar fint med QT Py.
Egenskaper:
USB-C-kontakt
Mått: 20x17.5mm
13 GPIO-pins (11 på 2.54mm hål, två på Stemma QT)
Fyra 12-bitars ADC
Två I2C-portar (varav en på QT-kontakten)
SPI och UART
Alla I/O-pins har PWN
3.3V regulator med max 600mA strömuttag i korta perioder
12MHz-kristall för timing
Reset- och bootloader-knapp för smidig programmering och omstart
Stiftlister för hålmontering/bruk med kopplingsdäck medföljer (ej monterade).
Mer om PIO:
De två konfigurerbara PIO har åtta "state machines. PIO kan snabbt och utan att belasta processorn kan utföra enklare funktioner. I och med att det sker separat från processorn, kan de exempelvis läsa av pins och ha datan klar när processorn behöver den.
Eftersom RP2040 kan ha upp till 133Mhz klockfrekvens kan det bli problematiskt att kommunicera med äldre eller långsammare enheter. Många processorcykler kan gå åt innan RP2040 får något svar på seriell kommunikation. Men med PIO-maskinerna kan RP2040 istället ägna sig åt sina beräkningar, medan PIO-maskinerna sköter kommunikation med omvärlden. När så processorn vill läsa av datan, så har PIO-pinnarna den lagrad för snabb avläsning.
Särskilt om det är något obskyrt protokoll det handlar om, eller exempelvis en ovanlig display, så kan PIO-maskinerna "bit-banga" kommunikationen, alltså skapa rätt bitflöde utan att "förstå" protokollet det handlar om. Detta utan att kärnan i RP2040 behöver vänta, eller hantera precis timing.
Alla PIO-maskiner har tillgång till alla GPIO-pins, kan operera från 2KHz till 133Mhz klockfrekvens, och kan läsa och skriva till pins, skicka data till FIFO och räkna upp en klocka på bara en klockcykel.
PIO kan exempelvis generera klockor, styra servon utifrån en enkel instruktion, eller återkoppling, dimma lysdioder, bland mycket annat.
Ett litet assembler-liknande språk som heter pioasm, med bara nio instruktioner (!) är allt som krävs för att programmera PIO-maskinerna. Om du vill komma igång med assembler-programmering kan PIO vara en bra början, då det är begränsat och väldokumenterat.
Kortet är bara 20x17.5mm stort (litet!), har krenellerade kanter för ytmontering, men har trots sin lilla storlek gott om beräkningskraft: en tvåkärning 32-bitars ARM-Cortex M0+ med 120 MHz klockfrekvens, 8MB SPI Flash, 264 KB Ram.
Kan agera HID, Midi, USB-serie-apparat eller till och med som en pluttig hårddisk för alla operativsystem (native USB).
QT Py 2040 har en kontakt för Stemma QT, en port för snabba prototyper med en uppsjö sensorer, displayer, m.m. Stemma QT är i princip samma sak som Sparkfuns Qwiic-system med ett annat namn, så även de korten fungerar fint med QT Py.
Egenskaper:
USB-C-kontakt
Mått: 20x17.5mm
13 GPIO-pins (11 på 2.54mm hål, två på Stemma QT)
Fyra 12-bitars ADC
Två I2C-portar (varav en på QT-kontakten)
SPI och UART
Alla I/O-pins har PWN
3.3V regulator med max 600mA strömuttag i korta perioder
12MHz-kristall för timing
Reset- och bootloader-knapp för smidig programmering och omstart
Stiftlister för hålmontering/bruk med kopplingsdäck medföljer (ej monterade).
Mer om PIO:
De två konfigurerbara PIO har åtta "state machines. PIO kan snabbt och utan att belasta processorn kan utföra enklare funktioner. I och med att det sker separat från processorn, kan de exempelvis läsa av pins och ha datan klar när processorn behöver den.
Eftersom RP2040 kan ha upp till 133Mhz klockfrekvens kan det bli problematiskt att kommunicera med äldre eller långsammare enheter. Många processorcykler kan gå åt innan RP2040 får något svar på seriell kommunikation. Men med PIO-maskinerna kan RP2040 istället ägna sig åt sina beräkningar, medan PIO-maskinerna sköter kommunikation med omvärlden. När så processorn vill läsa av datan, så har PIO-pinnarna den lagrad för snabb avläsning.
Särskilt om det är något obskyrt protokoll det handlar om, eller exempelvis en ovanlig display, så kan PIO-maskinerna "bit-banga" kommunikationen, alltså skapa rätt bitflöde utan att "förstå" protokollet det handlar om. Detta utan att kärnan i RP2040 behöver vänta, eller hantera precis timing.
Alla PIO-maskiner har tillgång till alla GPIO-pins, kan operera från 2KHz till 133Mhz klockfrekvens, och kan läsa och skriva till pins, skicka data till FIFO och räkna upp en klocka på bara en klockcykel.
PIO kan exempelvis generera klockor, styra servon utifrån en enkel instruktion, eller återkoppling, dimma lysdioder, bland mycket annat.
Ett litet assembler-liknande språk som heter pioasm, med bara nio instruktioner (!) är allt som krävs för att programmera PIO-maskinerna. Om du vill komma igång med assembler-programmering kan PIO vara en bra början, då det är begränsat och väldokumenterat.