当前市场上有不少MCU都带有USB外设,可以用来支持各种USB应用,恩智浦MCXN 系列的HS USB拥有不俗性能,今天带大家解锁如何使用MCX high Speed USB存储输出PDF文件。快来看看吧!
MCXN947的USB0全速接口它包括一个支持OTG协议的On-The-Go(OTG)双角色子系统。MCXN947包含两个USB 2.0接口。其中USB0是一个全速接口。USB0控制器中的OTG实现为全速兼容的外围设备提供了一种设备解决方案,同时为实现USB 2.0全速/低速兼容的嵌入式主机提供了有限的主机功能。
此外,MCXN系列MCUUSB1是一个高速接口。同样支持OTG功能,它由USB 2.0HS控制器和USB 2.0的PHY组成。内部创新集成高速USB 2.0 PHY。
同时USB1符合通用串行总线规范2.0版和USB 2.0版规范的OTG和嵌入式主机补充。USB1 HS框图显示了USB1 HS方框图,USB 2.0 PHY框图显示了USB 2.0 PHY方框图。USB1 HS控制器通过UTMI+接口与USB HS PHY连接。
除此,当作为主机或设备角色执行时,这两个接口都可以支持远程唤醒功能。
USB控制器块提供符合通用串行总线规范的高性能USB功能,2.0版,以及移动和嵌入式主机USB修订版2.0规范的补充。
USB控制器由一个独立的USB控制器核心组成:On-The-Go(OTG)控制器核心。每个控制器核心支持UTMI接口。有关更多详细信息,请参阅功能。控制器核心为单核,USBHS仅在SD和OD模式下可用。它在MD模式下不起作用。配置SPC.ACTIVE_CFG[DDCC_VDD_LVL]=SPC.ACTIVE_CFG[CORELDO_VDD_LVL]>=0x2,以确保模块的正确运行。即使在以下情况下,也需要此配置使用PMIC或其他外部电压源绕过板载核心调压器。
在MCXN947 MCU中,USB控制器支持睡眠模式、深度睡眠模式和断电模式,以节省功耗。当USB子系统在超过3毫秒的时间内检测到USB总线上没有活动时,它会将ISTAT[SLEEP]位设置为1。此位可能会导致中断,软件会决定适当的操作。
该USB 2.0 PHY的SOC包含一个集成的USBPHY宏单元,能够在设备或主机模式下运行。在设备模式下,它可以以480 Mbit/s的USB高速(HS)速率或12 Mb/s的全速(FS)速率连接到USB主机系统。在主机模式下,PHY可以连接到以1.5 Mbit/s的HS、FS或USB 2.0低速(LS)速率运行的外围设备。集成的USBPHY模块使用标准UTMI+接口与USB HS控制器通信。PHY包括一个480 MHz PLL、UTM数字逻辑和状态机、模拟收发器电路和一个用于配置和状态报告。USB_DP和USB_DM引脚直接连接到USB连接器。
并且USBPHY还包含USB设备充电器检测模块(USBDCD)的数字和模拟部分,具有USB电池充电规范1.2版检测和信号功能。集成的480 MHz PLL并且集成了USB设备充电器检测模块(USBDCD),具有USB电池充电规范1.2版的功能。
接下来,我们就介绍如何使用MCXN947 FRDM的USB2.0接口存储PDF文件。
硬件使用FRDM-MCXN947板子:
软件中间层的调用顺序如下libharu库-> Fatfs文件系统-> USB mass storage driver,在hpdf_conf.h中配置使用Fatfs接管相应的文件系统的操作函数:
Libharu库中文件操作属性,通过以下hal函数转换为Fatfs中的对应bmode操作模式:
应用层代码增加如下所示:text_demo.c和grid_sheet.c为应用层输出PDF文档内容的代码。
此外在USB_HostApplicationTask任务函数中,
在其所调用的USB_HostMsdFatfsTest(msdFatfsInstance); /* test msd device */中,加入在U盘输出并存储PDF文件的函数,PDF_Text(&p_name);
在挂载文件系统结束后,调用pdf_text(&p_name)来实现PDF文档中相关文字或者图片的输出。所生成的PDF文档示例内容如下所示:
输出单页文档的时间如下所示,输出单个PDF文档大约花费900ms,比起传统的USB FS输出存储的速度具有革命性的提升。
MCXN所使用的HS USB以其可靠性和高性能,将MCU USB的应用提升到了新的高度!
-
mcu
+关注
关注
146文章
18001浏览量
367970 -
接口
+关注
关注
33文章
9019浏览量
153828 -
usb
+关注
关注
60文章
8207浏览量
273543 -
文件
+关注
关注
1文章
583浏览量
25403 -
PDF
+关注
关注
1文章
173浏览量
34550
原文标题:使用MCX high Speed USB存储输出 PDF文件
文章出处:【微信号:NXP_SMART_HARDWARE,微信公众号:恩智浦MCU加油站】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
如何在MCXN947板的FlexSPI接口接HyperRAM

如何在MCXN947微控制器上配置安全启动和生命周期

恩智浦MCX N23的官方评估板FRDM-MCXN236详解

FRDM-MCXN947的纯Linux命令行环境搭建
关于将Flash写入FRDM-MCXN947的问题求解
MCXN947使用ADC并编写代码,总是报警告是怎么回事?
MCXN947如何配置和外扩PSRAM?
USB2.0 接口控制演示实验

恩智浦MCX系列MCU的新品MCXN947
《恩智浦FRDM-MCXN947开发实践指南》上线啦

MCXN947系列高性能微控制器产品介绍

基于Label CIFAR10 image on FRDM-MCXN947例程实现鞋和帽子的识别

使用NXP MCX-N板卡搭建环境及点灯

评论