上次发了一个贴子,
【树莓派Pico测评】-开箱+下载
大家很活跃,这次再来一个
怎么写程序,官网上关于这款开发板介绍很详细
首先这款开发板是自研芯片,型号为RT2040
双核 CM0+ 133Mhz
外设不用多说了,该有的全部都有,IO有30个,不像其它芯片那样有PA,PB,PC等,
IO只有编号,GP0,GP29
另外还有一个主要特点是有可编程IO,这个就比较牛了,可以做类似于CPLD的事情,
有9条指令,实际上就是一个微型CPU了
有跳转,等待,输入,输出,发送,接收,移动,中断,设置
16位指令编码,其中3位指令码,5位延时码,等
它可以做什么?可以模拟常规接口,像SPI,I2C,UART,PWM完全没问题,更像时序较严格,快的 WS2812也完全没问题
官方手册用了很大的篇幅来介绍PIO
以后我专门发个贴子来玩玩它
言归正转,说如何开始写程序?
上次例子是往里边下载现成的UF2程序
UF2和HEX差不多吧,关于它的介绍,这里有篇文章,
我就不多说了 https://blog.csdn.net/kh766200466/article/details/103633649
如何自己编译程序呢?
首先这个芯片是Cortex M0+的,
板上带有SWD调试接口
我满怀激动的心情焊接了SWD接口,在KEIL里查找CPU,
一查找开发板重启,再查找还是重启,反正找不到
后来到官方论坛中查找了一下,发现这玩意双核的,好像不太一样,反正我手时的J-LINK V9是不行,
不知道更新的J-LINK 是否可以,有更新的朋友可以试一下
这个芯片寄存器手册官网上是有的,很详细,但我J-LINK用不了,所以就没继续测试下去
官方的SDK是可以在LINUX或WINDOWS下编译的,
但我在WINDOWS下尝试多次还是失败,
GIT,PYTHON,VS2019,GCC全都好了,可CMAKE还是失败,
只好放弃了
官方重点推荐的还有另一种编程方式,即MicroPython编程
这个也比较有意思
先下载MicroPython低层固件
按下板上按钮不松开,再插上USB上电,此时出现盘符,拖入固件
pico_micropython_20210121.uf2
(454.5 KB, 下载次数: 10)
然后就绪后设备管理器会出现一个串口,
下载官方推荐的MicroPython IDE软件,名叫Thonny,
链接 : https://github.com/thonny/thonny/releases/download/v3.3.3/thonny-3.3.3.exe
下载后,安装 ,打开,配置解释器和串口,然后就可以玩耍了
以下代码来个LED闪烁灯,0.2秒开关一次,程序还是比较简单的
- import machine
- import utime
- led_onboard = machine.Pin(25, machine.Pin.OUT)
- while True:
- led_onboard.value(1)
- utime.sleep_ms(200)
- led_onboard.value(0)
- utime.sleep_ms(200)
-
写好后直接点运行按钮即可下载到开发板里运行
最后再来个极端测试,注释掉延时指令看一下
- import machine
- import utime
- led_onboard = machine.Pin(25, machine.Pin.OUT)
- while True:
- led_onboard.value(1)
-
- led_onboard.value(0)
-
不测不知道,一测下一跳,输出脉冲竟然能跑到50.3731KHZ
解释型的指令能跑这么快已经很不错了,
也就是说 led_onboard.value(1) 这个指令时间是小于 20uS的
解释性的比跑普通51还要快了,所以用MicroPython来跑控制完全没问题,
关键是写程序方便啊
来个PDF教程,
正在审核,稍候补充