聚豐項目 > USB硬件加速器
通過usb接口連接主機,通過endpoint實現數據訪問,并在外部設備上實現硬件加速和加密解密的安全任務。
北方·
北方·
團隊成員
姚鋒 工程師
使用基于RISC-V的沁恒CH32V103開發套件、核心芯片是CH32V103R8T6最高80MHz系統主頻 ,片上集成 RAM 20K, Flash 64K,UART、IIC 、SPI、ADC、PWM、USB等資源。
基于MounRiver Studio(MRS) 可使用RT-Thread nano進行開發。
計劃中需要按照rt-thread移植,經過多次嘗試,按照文檔的要求,均沒有正確完成。
主要是“../rtthread/libcpu/risc-v/common/context_gcc.S:211: Error: illegal operands `addi sp,sp,32*REGBYTES'”,這個需要在后面繼續嘗試。
核心代碼如下:
主要是通過中斷訪問中斷響應函數,實現USB協議的訪問
void USBHD_IRQHandler (void)
{
USB_DevTransProcess();
}
主函數如下,
int main(void)
{
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
Delay_Init();
USART_Printf_Init(115200);
printf("SystemClk:%d\r\n",SystemCoreClock);
printf("USBHD Device Coder\r\n");
pEP0_RAM_Addr = EP0_Databuf;
pEP1_RAM_Addr = EP1_Databuf;
USBHD_ClockCmd(RCC_USBCLKSource_PLLCLK_1Div5,ENABLE);
USB_DeviceInit();
NVIC_EnableIRQ(USBHD_IRQn);
while(1)
{
}
}
其中加密解密算法在自定義的endpoint1和endpoint2中實現。
連接設備USB設備顯示設備連接成功
啟動主機Endpoint連接工具,打開設備,顯示連接成功,并且可以正確下發上傳數據
(0.47 MB)下載