全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 控制/MCU >

如何使用MCXN947 FRDM的USB2.0接口存储PDF文件

时间:2025-07-22 11:12

人气:

作者:admin

标签: USB  文件  接口  PDF  mcu 

导读:当前市场上有不少MCU都带有USB外设,可以用来支持各种USB应用,恩智浦MCXN 系列的HS USB拥有不俗性能,今天带大家解锁如何使用MCX high Speed USB存储输出PDF文件。快来看看吧!...

当前市场上有不少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连接。

70b3f61c-62ec-11f0-a6aa-92fbcf53809c.png

除此,当作为主机或设备角色执行时,这两个接口都可以支持远程唤醒功能。

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。此位可能会导致中断,软件会决定适当的操作。

70ca46ec-62ec-11f0-a6aa-92fbcf53809c.png

该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板子:

70db8c9a-62ec-11f0-a6aa-92fbcf53809c.png

软件中间层的调用顺序如下libharu库-> Fatfs文件系统-> USB mass storage driver,在hpdf_conf.h中配置使用Fatfs接管相应的文件系统的操作函数:

70ed31f2-62ec-11f0-a6aa-92fbcf53809c.png

Libharu库中文件操作属性,通过以下hal函数转换为Fatfs中的对应bmode操作模式:

70ff632c-62ec-11f0-a6aa-92fbcf53809c.png

应用层代码增加如下所示:text_demo.c和grid_sheet.c为应用层输出PDF文档内容的代码。

711877b8-62ec-11f0-a6aa-92fbcf53809c.png

此外在USB_HostApplicationTask任务函数中,

在其所调用的USB_HostMsdFatfsTest(msdFatfsInstance); /* test msd device */中,加入在U盘输出并存储PDF文件的函数,PDF_Text(&p_name);

71296b90-62ec-11f0-a6aa-92fbcf53809c.png

在挂载文件系统结束后,调用pdf_text(&p_name)来实现PDF文档中相关文字或者图片的输出。所生成的PDF文档示例内容如下所示:

713e5f96-62ec-11f0-a6aa-92fbcf53809c.png

输出单页文档的时间如下所示,输出单个PDF文档大约花费900ms,比起传统的USB FS输出存储的速度具有革命性的提升。

7167f068-62ec-11f0-a6aa-92fbcf53809c.png

MCXN所使用的HS USB以其可靠性和高性能,将MCU USB的应用提升到了新的高度!

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信