本队伍编号CICC3042,本篇文章介绍在Windows和Linux环境下分别使用Olimex和蜂鸟调试器下载程序,和上一篇Hbirdv2的移植配合使用。
使用过第一版蜂鸟的同学们可能按照书中的教程使用Olimex ARM-USB-TINY-H调试器在Linux环境中下载程序,用vscode+命令行开发,因此这里在第二版蜂鸟中使用这种开发方式,当手边没有蜂鸟调试器或者不方便用Linux下载程序时,可以使用Windows+Olimex+cmd的方式开发和运行程序。
在Windows/Linux系统下使用蜂鸟调试器时,可以按照官方quick start https://doc.nucleisys.com/hbirdv2/quick_start/sdk.html 中的说明进行操作。
在Linux系统下使用Olimex ARM-USB-TINY-H调试器时,在完成gcc、openocd环境配置的基础上,应当进行以下改动:
1. 在openocd_hbirdv2.cfg文件中修改第四、五行为以下内容:
ftdi_device_desc "Olimex OpenOCD JTAG ARM-USB-TINY-H"
ftdi_vid_pid 0x15ba 0x002a
2.将/etc/udev/rules.d/99-openocd.rules修改为以下内容:
SUBSYSTEM=="usb",
ATTR{idVendor}=="15ba",
ATTR{idProduct}=="002a",
MODE="664",
GROUP="plugdev"
SUBSYSTEM=="tty",
ATTRS{idVendor}=="15ba",
ATTRS{idProduct}=="002a",
MODE="664", GROUP="plugdev"
其他步骤与文档quick start相同。
在Windows系统下使用Olimex ARM-USB-TINY-H调试器时,需要通过Zadig安装olimex驱动程序。在 https://zadig.akeo.ie/ 中下载Zadig,首先在选择Options-List All Devices。
随后将Olimex调试器连接到电脑,Zadig会检测到需要安装的驱动,共有Interface0和1两个接口,需要安装两次,安装完毕后设备管理器中显示可以识别设备,此后可以在Windows系统中下载程序了。
Olimex调试器和开发板的连接方式可以参考《手把手教你设计CPU--RISC-V处理器篇》第一版第十八章,这里引用一下:
下载程序的过程中如果出现类似下图的错误,可能原因经常有以下几个:
1. 板子上的处理器没有正常跑起来或者改动了某些地方造成功能错误
2. 蜂鸟的JTAG引脚分配错误或者开发板和调试器的连线错误
3. openocd配置文件即openocd_hbirdv2.cfg有问题(ftdi_device_desc和ftdi_vid_pid与使用的调试器不符)
4. 如果是Linux系统则99-openocd.rules文件可能有问题或者没有将用户添加到plugdev group中等