Produktbeskrivning
Mängdrabatterna avser endast köp i multiplar om 500 respektive 3400 stycken.
RP2040 är en tvåkärning 32-bitars ARM-Cortex M0+ med en flexibel klockfrekvens på upp till 133MHz. Internt har RP2040 264KB RAM.
Två programmerbara IO-block (PIO) med totalt åtta maskiner kan konfigureras för att hantera olika protokoll och enkla funktioner med låg latency och utan att belasta microkontrollern, exempelvis kan de emulera interface för SD-kort eller VGA-video.
o Dual-core cortex M0+ med upp till 133MHz klocka, inbyggd PLL möjliggr variabel klockfrekvens
o RP2040 microcontroller med 264kByte multi-bank high performance SRAM
o 2 × UART, 2 × I2C, 2 × SPI, 16 st PWM-kanaler
o 12-bit 500ksps Analogue to Digital Converter (ADC)
o 2 × Programmable IO (PIO) blocks, 8 state machines total
o 1 × Timer with 4 alarms, 1 × Real Time Counter
o External Quad-SPI Flash with eXecute In Place (XIP)
o On-board USB1.1 (device eller host)
o Kapsel: QFN-56
o 3.3V logiknivå
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.
RP2040 är en tvåkärning 32-bitars ARM-Cortex M0+ med en flexibel klockfrekvens på upp till 133MHz. Internt har RP2040 264KB RAM.
Två programmerbara IO-block (PIO) med totalt åtta maskiner kan konfigureras för att hantera olika protokoll och enkla funktioner med låg latency och utan att belasta microkontrollern, exempelvis kan de emulera interface för SD-kort eller VGA-video.
o Dual-core cortex M0+ med upp till 133MHz klocka, inbyggd PLL möjliggr variabel klockfrekvens
o RP2040 microcontroller med 264kByte multi-bank high performance SRAM
o 2 × UART, 2 × I2C, 2 × SPI, 16 st PWM-kanaler
o 12-bit 500ksps Analogue to Digital Converter (ADC)
o 2 × Programmable IO (PIO) blocks, 8 state machines total
o 1 × Timer with 4 alarms, 1 × Real Time Counter
o External Quad-SPI Flash with eXecute In Place (XIP)
o On-board USB1.1 (device eller host)
o Kapsel: QFN-56
o 3.3V logiknivå
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.