国产久操视频-国产久草视频-国产久热精品-国产久热香蕉在线观看-青青青青娱乐-青青青青在线成人视99

  • 正文
  • 附件下載
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

DAPLink:移植DAP USB部分——五

2024/05/20
6522
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

咱們就簡化流程,快快結(jié)束這個(gè)項(xiàng)目。

DAPLink主頁:https://www.keil.com/pack/doc/CMSIS/DAP/html/index.html

看一下DAP的更新記錄

可以發(fā)現(xiàn)在2.0.0以后采用高速的批量傳輸(bulk)端點(diǎn)完成數(shù)據(jù)交互,一般我們指DAPLinkV1與V2也主要指代這倆大版本。

v1調(diào)試器使用的是HID驅(qū)動(dòng),使用中斷端點(diǎn),在win8.1/win10下可以做到免安裝驅(qū)動(dòng)程序,但是HID雖然免驅(qū),但速度太低。

v2調(diào)試器使用了winusb驅(qū)動(dòng),設(shè)備端在USB描述符中報(bào)告自身支持winusb特性,需要一個(gè)inf驅(qū)動(dòng)文件,Win10可以免驅(qū),走批量傳輸端點(diǎn),速度要快很多,我們本次目標(biāo)也是針對V2版本進(jìn)行移植。

閑扯到此為止,感興趣的小伙伴可以自行查閱相關(guān)資料。

首先是添加RL-USB驅(qū)動(dòng),按下圖配置,可以看到RT1020還沒有適配驅(qū)動(dòng)接口,一會(huì)需要外部進(jìn)行添加。

需要添加新的文件,主要由SDK目錄跟DAP源碼中得來

這是需要引入的新頭文件

對USB部分進(jìn)行配置,CMSIS-DAP是必須要的,幫助keil識(shí)別DAPLink

同樣進(jìn)行配置,我這里沒有廠家碼,就直接使用MCU-Link里面的數(shù)據(jù)了

編寫main代碼

#include "fsl_device_registers.h"
#include "fsl_debug_console.h"
#include "peripherals.h"
#include "pin_mux.h"
#include "clock_config.h"
#include "board.h"
#include "cmsis_os2.h"
#include "rl_usb.h"
#include "osObjects.h"
#include "DAP_config.h"
#include "DAP.h"

__NO_RETURN void app_main (void *argument)
{
DAP_Setup();
USBD_Initialize(0U);
USBD_Connect(0U);
while (!USBD_Configured(0U));
DAP_ThreadId = osThreadNew(DAP_Thread, NULL, &DAP_ThreadAttr);
osDelay(osWaitForever);
for (;;) {}
}

int main(void)
{
BOARD_ConfigMPU();
BOARD_InitBootPins();
BOARD_InitBootClocks();
BOARD_InitDebugConsole();

/* Just enable the trace clock, leave coresight initialization to IDE debugger */
SystemCoreClockUpdate();
CLOCK_EnableClock(kCLOCK_Trace);
osKernelInitialize();
osThreadNew(app_main, NULL, NULL);
if (osKernelGetState() == osKernelReady)
{
osKernelStart();
}
for(;;){}
}

處理一下各類報(bào)錯(cuò),主要集中在DAP IO接口上,把之前的代碼統(tǒng)統(tǒng)注釋掉,這次不對這部分進(jìn)行修改。

下載進(jìn)去看看效果。

Keil里面顯示也正常,因?yàn)闆]移植IO部分,所以沒有識(shí)別到芯片。

收工

代碼工程

5.az158_dapLink.zip (520.37 KB, 點(diǎn)擊下方附件下載)

當(dāng)前環(huán)境

  • 5.az158_dapLink.zip
    下載

相關(guān)推薦

周宁县| 建宁县| 依安县| 得荣县| 平武县| 亳州市| 慈利县| 鲁甸县| 达日县| 麻江县| 肇州县| 格尔木市| 禹城市| 崇左市| 太白县| 卢氏县| 顺平县| 霸州市| 朝阳区| 宜良县| 长宁区| 广东省| 谢通门县| 开化县| 广德县| 西昌市| 贵溪市| 重庆市| 浦东新区| 巨鹿县| 红河县| 庆云县| 团风县| 明水县| 浑源县| 东丽区| 罗城| 盐城市| 辽阳市| 娱乐| 金坛市|