shineblink core 开发板(简称Core)的库函数支持USB通信功能,所以只用几行代码即可实现USB通信功能。
Core采用的Soc芯片是Nordic半导体公司的Nrf52840芯片,内置USB控制器,所以我们可以通过软件的方式将Core改造成USB转Uart串口透传工具,方便我们在开发中使用。
如果是Win10电脑则不用考虑驱动问题,当Core连接电脑后系统会自动安装。如果你的电脑是Win7系统,在<a href="https://yunpan.360.cn/surl_yPvRUHuUzHv" target="_blank">此处</a>下载驱动。然后按下面的步骤完成Win7系统的USB CDC ACM驱动安装。
本例中采用Uart0做为转接口,引脚对应Core电路板上的Rx0,Tx0引脚。
--配置Uart0串口波特率为115200并开始工作
LIB_Uart0Config("BAUDRATE_115200")
--配置USB以CDC模式开始工作
LIB_UsbConfig("CDC")
--开始大循环
while(GC(1) == true)
do
--查询是否收到来自USB端口的数据,如果收到就通过Uart0转发出去
usb_recv_flag,usb_recv_tab = LIB_UsbCdcRecv()
if usb_recv_flag == 1 then --收到一包USB数据
LIB_Uart0Send(usb_recv_tab)
end
--查询是否收到uart0数据,如果收到就通过USB转发给PC
uart0_recv_flag,uart0_recv_tab = LIB_Uart0Recv()
if uart0_recv_flag == 1 then --收到一包Uart数据
LIB_UsbCdcSend(uart0_recv_tab)
end
end
<small>如果感兴趣,上面代码中出现的LIB开头的库函数可以在<a href="../api/ApiDoc.html" target="_blank">API文档</a>中通过<kbd>Ctrl</kbd>+<kbd>F</kbd>查询。</small>
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。