前几天刚完成freepascal arm嵌入式交叉编译,为验证交叉编译的工具链及交叉编译是否正常,在tb买了第1代的pico进行测试,用pico LED闪灯作为直观确定交叉编译是否有效的手段。
开发pico用到的sdk在https://github.com/michael-ring/pico-fpcexamples的units目录。
注意:
freepascal pico编译器似乎不适合pico 2 W,编译出来的uf2文件拷贝到pico后不会重启,后来重新购买第一代的pico就可以正常工作,有pico 2 W或pico 2的可以测试一下。
2025-07-17 确认free pascal不支持RP2350的Raspberry pico 2这板子。
开发pico用到的sdk在https://github.com/michael-ring/pico-fpcexamples的units目录。
注意:
freepascal pico编译器似乎不适合pico 2 W,编译出来的uf2文件拷贝到pico后不会重启,后来重新购买第一代的pico就可以正常工作,有pico 2 W或pico 2的可以测试一下。
2025-07-17 确认free pascal不支持RP2350的Raspberry pico 2这板子。
RP 2040 芯片采用 40 nm 制程工艺,7×7 mm QFN-56 封装。它的具体规格参数如下 :
-
- 搭载双核 ARM Cortex M0+ 处理器,运行频率 133 MHz
- 内置 264 KB 的片上 RAM
- 可通过专用 QSPI 总线支持最高 16 MB 的片外闪存
- DMA 控制器
- 外挂内插器和整数除法器
- 30 个 GPIO 引脚,其中 4 个可用于模拟信号输入
- 2 个 SPI、2 个 I2C、2 个 UART
- 16 个 PWM 通道
- 主机和设备支持的 USB 1.1
- 8 个树莓派可编程 I/O 状态机
- 支持 UF2 的 USB 大容量存储启动模式,用于拖放式编程
Raspberry Pi Pico 开发板
以下展示 Raspberry Pi Pico 开发板的参数和配置 。
- 搭载RP 2040 芯片。
- 采用双核 ARM Cortex M0+ 处理器,运行频率 133 MHz。
- 搭载 264 KB 的片上 RAM,板载 2 MB 闪存。
- 主机和设备支持的 USB1.1。
- 支持低功耗的睡眠和休眠模式。
- 采用拖放式编程。
- 拥有 26 个 GPIO 引脚,其中 3 个可用于模拟信号输入(即 3 路 12 位 ADC)。
- 拥有 2 个 SPI、2 个 I2C、2 个 UART、16 路 PWM。
- 片上时钟、计时器;片上浮点库;搭载温度传感器。
- 可通过 Micro USB 供电,也支持 1.8-5.5 V 直流电源供电。因此我们用串联的干电池或者锂电池即可驱动 Pico,这使得 Pico 的应用更加灵活。
- 配备 1 个 LED 灯和一个开关按钮。该按钮用于向 Pico 烧录程序时控制 Pico 进入 USB 大容量存储模式,也可用于通用的输入。
- 40 个引脚均为 “焊孔 + 齿状边缘” 的形态,由用户灵活选择安装方式,便于与其他开发板焊接。

2、在lazarus建一个控制台应用:
program project1; {$mode objfpc}{$H+} {$MEMORY 10000,10000} uses pico_gpio_c, pico_timer_c; begin gpio_init(TPicoPin.LED); gpio_set_dir(TPicoPin.LED,TGPIODirection.GPIO_OUT); repeat gpio_put(TPicoPin.LED,true); busy_wait_us_32(500000); gpio_put(TPicoPin.LED,false); busy_wait_us_32(500000); until 1=0; end.
3、在project选项:
1)、路径-->其他单元文件-->填units

2 )、配置和目标按以下添加:

3)、在自定义选项添加以下4项,其中-Xu--指定生成uf2格式文件
-Wpfeather_rp2040 -godwarfsets -godwarfcpp -Xu

4、编译应用:

编译成功后在目录有以下几下文件:
其中*.uf2是pico的执行文件。

5、将执行文件拷贝到pico
Pico 采用颇为便捷的拖放式编程:将 Pico 通过 USB 与计算机连接,Pico 会被计算机识别为大容量存储设备,向其中拖放编程文件即可完成程序烧录。
pico的usb线先不要插入电脑USB口,按住BootSet,将usb线插入电脑后松开,这时电脑会出现“PRI-RP2”的盘:

将刚才编译成功的project1.uf2拷贝到这个E盘,拷贝后很快就会看到pico板的LED在闪,说明编译的程序已能正常运行。



浙公网安备 33010602011771号