gpt4 book ai didi

linux - OpenOCD 无法连接到 cortex 处理器

转载 作者:IT王子 更新时间:2023-10-29 00:21:06 25 4
gpt4 key购买 nike

我正在尝试从 Raspberry Pi 3 计算模块 GPIO 闪存基于 cortex m0 的 SoC,但它一直失败并出现相同的错误。

Error: Could not initialize the debug port

我正在关注这个 https://learn.adafruit.com/programming-microcontrollers-using-openocd-on-raspberry-pi?view=all和本教程 https://movr0.com/2016/09/02/use-raspberry-pi-23-as-a-jtagswd-adapter/ .编译和安装没有问题。

cortex m0 SoC是Nordic Semiconductor nRF51822蓝牙芯片封装在ISP1302模块中。

模块 GND 和 3.3V 直接连接到计算模块开发套件,SWDCLK 和 SWDIO 按照教程连接到 GPIO 25、24。 SRST 或 TRST 没有连接。

配置文件如下:

source [find interface/raspberrypi2-native.cfg]
bcm2835gpio_swd_nums 25 24
transport select swd

# target
source [find target/nrf51.cfg]

init
targets

(我从 raspberrypi2-native.cfg 中删除了 bcm2835gpio_srst_num 18)

使用 sudo openocd -f config.cfg 执行

树莓派 CM3 在 /boot/config.txt 上使用选项 core_freq=250 运行,我需要此选项才能可靠地访问 UART1。我认为这可能与时钟有关,但不确定如何更改/修复。

我已经尝试了几种 reset_config 的组合,但没有改变错误。完整的初始化栈如下:

Open On-Chip Debugger 0.10.0+dev-00111-gca9dcc8 (2017-04-24-15:30)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
BCM2835 GPIO nums: swclk = 25, swdio = 24
cortex_m reset_config sysresetreq
adapter speed: 1000 kHz
Info : BCM2835 GPIO JTAG/SWD bitbang driver
Info : SWD only mode enabled (specify tck, tms, tdi and tdo gpios to add JTAG mode)
Info : clock speed 1001 kHz
Info : SWD DPIDR 0x00150634
Error: Could not initialize the debug port
TargetName Type Endian TapName State
-- ------------------ ---------- ------ ------------------ ------------
0* nrf51.cpu cortex_m little nrf51.cpu unknown

无论我尝试什么,我总是得到这个“错误:无法初始化调试端口”。

有趣的是,使用连接到 PI USB 的 ST-Link/V2 适配器并修改配置上的接口(interface),它可以正常工作。

有什么建议吗?我究竟做错了什么?是否需要对 GPIO 进行一些初始化?

编辑:

我注意到有人投票结束了这个问题,因为“不清楚在问什么”。

我在问:如何使用 GPIO 将 Raspberry Pi 连接到 nRF51 SoC?请引用以上我尝试过的所有内容。

最佳答案

不完全相同的配置,但在 http://forum.doozan.com/read.php?3,21789,21927 上搜索 pi3揭示了 raspberry123-native.cfg,我们在其中发现了时钟速度的变化:

# 请根据您使用的 Raspi(1,2 或 3)设置正确的 peripheral_base 地址和转换延迟。

接口(interface) bcm2835gpio

# Raspi2和Raspi3 peripheral_base地址

bcm2835gpio_peripheral_base 0x3F000000

# Raspi1 外设_基地址
# bcm2835gpio_peripheral_base 0x20000000

# 转换延迟计算:SPEED_COEFF/khz - SPEED_OFFSET
# 这些取决于系统时钟,校准为 stock 700MHz
# bcm2835gpio_speed SPEED_COEFF SPEED_OFFSET

# Raspi3 BCM2837 (1200Mhz):
bcm2835gpio_speed_coeffs 194938 48

# Raspi2 BCM2836 (900Mhz):
# bcm2835gpio_speed_coeffs 146203 36

# Raspi1 BCM2835: (700Mhz)
# bcm2835gpio_speed_coeffs 113714 28

关于linux - OpenOCD 无法连接到 cortex 处理器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43612379/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com