Pico-Arduino
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
[detail level 123]
 Narduino
 CClient
 CHardwareI2C
 CHardwareSerial
 CSPISettings
 CHardwareSPI
 CIPAddress
 CPluggableUSBModule
 CPluggableUSB_
 CPrint
 CPrintable
 CServer
 CStream
 CMultiTarget
 CUDP
 CArduinoPicoToneArduinoPicoTone provides static methods for PicoTone
 CMapA simple key value map collection
 CMapEntry
 CMuliticoreFifoThe RP2040 contains two FIFOs for passing data, messages or ordered events between the two cores. Each FIFO is 32 bits wide, and 8 entries deep. One of the FIFOs can only be written by core 0, and read by core 1. The other can only be written by core 1, and read by core 0
 CPicoDefaultSerialPicoDefaultSerial is using the pico default output. It is mapped to the Arduino Serial variable
 CPicoGPIOFunctionThe pico requires that the function of the pin is defined. In Arduino, there is no such concept: so we do this at the first call of the corresponding function: enum gpio_function { GPIO_FUNC_XIP = 0, GPIO_FUNC_SPI = 1, GPIO_FUNC_UART = 2, GPIO_FUNC_I2C = 3, GPIO_FUNC_PWM = 4, GPIO_FUNC_SIO = 5, GPIO_FUNC_PIO0 = 6, GPIO_FUNC_PIO1 = 7, GPIO_FUNC_GPCK = 8, GPIO_FUNC_USB = 9, GPIO_FUNC_NULL = 0xf, };
 CPicoHardwareI2CArduino I2C implementation using the Pico functionality
 CPicoHardwareSerialSerial Stream for a defined UART. By default we use the following pins: UART0 tx/rx = gp0/gp1; UART1 tx/rx = gp4/gp5;
 CPicoHardwareSPIArduino HardwareSPI interface using the Pico API. We use the following default pins spi0: pinRx = 16; pinTx = 19; pinCS = 17; pinSCK = 18; spi1: pinRx = 12; pinTx = 11; pinCS = 13; pinSCK = 10; On the master miso = pinRx and mosi = pinTx
 CPicoLoggerA simple Logger that writes messages dependent on the log level
 CPicoToneWe use the TimerAlarmRepeating to generate tones
 CPIOManagerThe PIO subsystem on RP2040 allows you to write small, simple programs for what are called PIO state machines, of which RP2040 has eight split across two PIO instances. A state machine is responsible for setting and reading one or more GPIOs, buffering data to or from the processor (or RP2040’s ultra-fast DMA subsystem), and notifying the processor, via IRQ or polling, when data or attention is needed
 CQueueConstruct a new Pico Queue object
 CSemaphorePico Semaphore which might be useful if you use the 2 processors (e.g. with the Thread class)
 CSoftwareSerialSoftware Serial Arduino Stream which uses the Pico PIO
 CThread
 CTimerAlarmAlarm functions for scheduling future execution
 CTimerAlarmRepeatingRepeating Timer functions for simple scheduling of repeated execution
 CVectorVector implementation which provides the most important methods as defined by std::vector. This is neither part of Pico nor of the Arduino framwork but nevertheless it is quite handy to have and most of the times quite better then dealing with raw c arrays
 CiteratorIterator for the Vector class