找回密码
 立即注册

微信扫码登录

查看: 47|回复: 1

[USB] USB端点中断不产生

[复制链接]

4

主题

5

回帖

48

积分

英勇黄铜

积分
48
发表于 前天 18:08 | 显示全部楼层 |阅读模式 来自 中国
Information
说明:   建议参照本版块置顶帖内容输入必要信息
芯片型号: TLSR9517C
驱动SDK版本: telink_b91m_driver_sdk V2.3.0

问题简述:做中断向量表偏移后,usb音频demo的端点中断没有跳转到我注册中断服务函数usb_endpoint_irq_handler

背景:
自己做boot+app两个固件:0x20000000-0x20009fff为boot;0x2000a000以后为app

启动文件使用cstartup_flash.S
boot链接脚本使用flash_boot.link
app链接脚本在 flash_boot.link 基础上将NDS_SAG_LMA_FLASH修改为0x2000a000
image.png

在boot中,使用

typedef void (*iapfun)(void);
static iapfun jump_to_app;
jump_to_app = (iapfun)(uint32_t *)(app_addr);
jump_to_app();

跳转到APP

问题详细描述:
不修改NDS_SAG_LMA_FLASH,即NDS_SAG_LMA_FLASH=20000000,不做boot,只做app;此时USB mic-spk功能正常


修改NDS_SAG_LMA_FLASH后,其他注册的外设中断都正常响应(定时器,串口,RF),只有usb的端点中不响应。usb端点的中断标志有置位,但是没跳转到我注册的usb_endpoint_irq_handler
初始化和中断服务函数都跟USB_Demo中的一样

image.png
image.png

4

主题

5

回帖

48

积分

英勇黄铜

积分
48
 楼主| 发表于 昨天 17:15 | 显示全部楼层 来自 广东广州
已解决,需要初始化的时候使能端点6和端点7的中断
    usbhw_set_eps_irq_mask(FLD_USB_EDP7_IRQ);
    usbhw_set_eps_irq_mask(FLD_USB_EDP6_IRQ);

在例程USB_Demo - mic_spk_app.c中,MCU_CORE_B91的 user_init 里没有使能(MCU_CORE_B92的 user_init 里有)
建议可以补充一下
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Telink forum ( 沪ICP备17008231号-1 )

GMT+8, 2025-10-24 00:38 , Processed in 0.097762 second(s), 24 queries .

Powered by Telink 隐私政策

泰凌微电子版权所有 © 。保留所有权利。 2024

快速回复 返回顶部 返回列表