聚丰项目 > USB硬件加速器

USB硬件加速器

通过usb接口连接主机,通过endpoint实现数据访问,并在外部设备上实现硬件加速和加密解密的安全任务。

北方· 北方·

分享
0 喜欢这个项目
团队介绍

北方· 北方·

团队成员

姚锋 工程师

分享
项目简介
通过usb接口连接主机,通过endpoint实现数据访问,并在外部设备上实现硬件加速和加密解密的安全任务。
硬件说明

使用基于RISC-V的沁恒CH32V103开发套件、核心芯片是CH32V103R8T6最高80MHz系统主频 ,片上集成 RAM 20K, Flash 64KUARTIIC SPIADCPWMUSB等资源。


软件说明

基于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'”,这个需要在后面继续尝试。

image.png

核心代码如下:

主要是通过中断访问中断响应函数,实现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设备显示设备连接成功

image.png

启动主机Endpoint连接工具,打开设备,显示连接成功,并且可以正确下发上传数据

image.png

附件

(0.47 MB)下载

评论区(0 )