1、XR806的在线调试SWD接口是PB2和PB3,分别对应DATA和CLK。很遗憾,官方版子并没有接出来,只能手动焊线。
2、使能在线调试。在文件device/xradio/xr806/xr_skylark/project/demo/audio_demo/prj_config.h中添加#define PRJCONF_SWD_EN 1

2、由于PB2和PB3是在__wrap_main()中初始化成调试接口的,所以上电并不是调试口,意味着不要使用jlink控制XR806进入复位,不然大概率会跑飞。
3、由于没办法控制芯片复位,而我们调试程序一般都是从程序开始的,所以需要利用程序,使上电自动停止在代码main_task中,我使用的是开发板上的按键,代码如下所示,按下按键程序才能继续跑,使Jlink连接开发板,halt住芯片时,程序的位置是确定的,不然Jlink接入时,代码位置是随机的。
static void main_task(void *arg)
{
/* 初始化按键 */
gpio_input_init();
/* 确定Jlink接入时的代码的位置 */
while(1) {
uint8_t i = 0;
if (HAL_GPIO_ReadPin(GPIO_INPUT_PORT, GPIO_INPUT_PIN) == 1) {
printf ("no pressn");
i = 0;
} else {
printf ("pressn");
i ++;
}
if (i >= 5) {
printf("test beginn");
break;
}
LOS_Msleep(100);
}
platform_init();
OHOS_SystemInit();
OS_ThreadDelete(&g_main_thread);
}
4、接入GDB

5、确保虚拟机开启了SSH。不同虚拟机的开启方式,这里就不介绍了。
6、使用putty(或者其他带隧道功能的SSH)连接虚拟机

7、连接成功后,打开指定可执行文件的文件夹
cd device/xradio/xr806/xr_skylark/demo/audio_demo/gcc
gdb audio_demo.elf
注意linux默认使用linux64位的gdb,需要在环境变量中设置为arm的gdb。
8、进入gdb后,输入:target remote:3331即可连接开发板。
1、XR806的在线调试SWD接口是PB2和PB3,分别对应DATA和CLK。很遗憾,官方版子并没有接出来,只能手动焊线。
2、使能在线调试。在文件device/xradio/xr806/xr_skylark/project/demo/audio_demo/prj_config.h中添加#define PRJCONF_SWD_EN 1

2、由于PB2和PB3是在__wrap_main()中初始化成调试接口的,所以上电并不是调试口,意味着不要使用jlink控制XR806进入复位,不然大概率会跑飞。
3、由于没办法控制芯片复位,而我们调试程序一般都是从程序开始的,所以需要利用程序,使上电自动停止在代码main_task中,我使用的是开发板上的按键,代码如下所示,按下按键程序才能继续跑,使Jlink连接开发板,halt住芯片时,程序的位置是确定的,不然Jlink接入时,代码位置是随机的。
static void main_task(void *arg)
{
/* 初始化按键 */
gpio_input_init();
/* 确定Jlink接入时的代码的位置 */
while(1) {
uint8_t i = 0;
if (HAL_GPIO_ReadPin(GPIO_INPUT_PORT, GPIO_INPUT_PIN) == 1) {
printf ("no pressn");
i = 0;
} else {
printf ("pressn");
i ++;
}
if (i >= 5) {
printf("test beginn");
break;
}
LOS_Msleep(100);
}
platform_init();
OHOS_SystemInit();
OS_ThreadDelete(&g_main_thread);
}
4、接入GDB

5、确保虚拟机开启了SSH。不同虚拟机的开启方式,这里就不介绍了。
6、使用putty(或者其他带隧道功能的SSH)连接虚拟机

7、连接成功后,打开指定可执行文件的文件夹
cd device/xradio/xr806/xr_skylark/demo/audio_demo/gcc
gdb audio_demo.elf
注意linux默认使用linux64位的gdb,需要在环境变量中设置为arm的gdb。
8、进入gdb后,输入:target remote:3331即可连接开发板。
举报