0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何用NXP的官方生态快速搭建USB相关的工程模板

恩智浦MCU加油站 来源:恩智浦MCU加油站 作者:牛 2021-11-18 17:30 次阅读

本文的内容和视频的起意,是因为B站好(粉)汉(丝)中的一位后台留言说,他想要APDS9960实现PPT翻页器的教程。你看人家哥特萝莉的头像,而且作为一个无BGM无字幕无后期的三无B站小户,自然不能漠视,所以就有了这个教程视频以及文章。

后来整理好后,感觉其实这个教程挺好的,可以非常高效的展示如何利用NXPSDK包,MCUXpressoIDE以及配置工具Config Tool搭建一个基于USB接口的工程,遂结合视频写下这篇文章做个心得记录。

开发工具搭建

我之前在B站上传了两个视频,专门介绍SDK,IDE以及配置工具:

一个是如何上手NXP家MCU的SDK代码包和IDE 另外一个是用MCUXpresso Config Tool配置工具快速生成KEIL和IAR的工程模板 当然这篇文章在这里主要是提示各位看官,要去下载最新的SDK(2.10), 最新的MCUXpresso IDE(11.4.0) 以及最新的Config Tool(v10),不知道HTTP门牌号的请记住这里mcuxpresso.nxp.com。 版本同步好后,我们就可以利用NXP的生态链,在不到30分钟的时间内搭建一个基于USB接口的工程。

硬件搭建

我们这个demo用的是LPC55S69-IOT Kit以及淘宝买的PAJ7620模块,用的是I2C接口,没有用到中断引脚,程序走的是轮询的方式获取手势数据的。

PAJ7620的驱动程序参考(git clone)的是SeedStudio公布在github上的代码,license是MIT的。

基于MCUXpresso工具链

快速生成参考工程模板

这一部分参考我提供的B站视频。

这里我们用的是GPIO的例程作为工程的原始模板,后边用配置工具一步步的增加功能。

新手用户,记得把下载好的SDK代码包拖拽到MCUXpresso IDE的“Installed SDKs”下。

通过MCUXpresso IDE集成的

配置工具增加外设驱动

新建好工程后,我们可以通过MCUXpresso IDE右上脚的配置工具按钮,进入集成的Config Tool界面,

在外设界面下增加需要的外设驱动,点击“确认”后,工程会自动添加对应的“fsl_xxx.c”和“fsl_xxx.h”,记得一点,如果要增加外设驱动,需要“使能”外设的功能。注意要在“组件管理器”中选择“Drivers”。

通过MCUXpresso IDE集成的

配置工具增加USB组件

USB外设在配置工具里是以Middleware的形式出现的,所以咱们要在“组件管理器”中选择“Middleware”了,在Middleware下选择USB,然后根据需要去掉不需要的USB类以及选择主从机等。

在Middleware中添加了USB组件后,会有一些系统级的配置问题,按照右下角提示的内容修改时钟、引脚的配置,也可能需要右键点击问题然后让配置工具自动添加代码修复问题。

USB组件可以通过配置工具轻松简单的配置USB相关的信息,比如Class,VID,PID等等。也可以轻松实现复合类。

USB HID键盘配合

PAJ7620的手势实现翻页

工程配置好后,我们需要把app_paj7620.c / app_paj7620.h添加到source目录里(直接拖拽进去即可)。然后在main.c的初始化部分调用paj7620_Init(),在while(1)中调用paj7620_task()即可实现PAJ7620手势识别的功能

根据不同的手势结果(代码里的变量gPAJ7620代表了手势的结果)在usb_device_interface_0_hid_keyboard.c中的USB_DeviceHidKeyboardAction()通过USB_DeviceHidSend()发送给PC即可。

小结

这篇文章的主要内容是介绍如何用NXP的官方生态快速搭建USB相关的工程模板,结合PAJ7620倒是其次,希望视频和文章都能很好的帮到大家。我觉得刚上手可能要个把小时,熟悉后基本30分钟内就可以搭出来了。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 传感器
    +关注

    关注

    2515

    文章

    47688

    浏览量

    738678
  • NXP
    NXP
    +关注

    关注

    60

    文章

    1210

    浏览量

    176524
  • usb
    usb
    +关注

    关注

    59

    文章

    7377

    浏览量

    257475

原文标题:LPC55xx+PAJ7620手势传感器实现USB PPT翻页器【附教程视频】

文章出处:【微信号:NXP_SMART_HARDWARE,微信公众号:恩智浦MCU加油站】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    HAL工程应该这样搭建

    不一、为何要自己手动搭建一个软件工程?(1)在KeilMDK的开发环境下:工程师都会找一个模板,这个模板可能是在某一家开发板厂家提供的一个例
    的头像 发表于 03-26 08:09 54次阅读
    HAL<b class='flag-5'>工程</b>应该这样<b class='flag-5'>搭建</b>

    何用“搭积木“方式快速搭建智慧工厂大屏

    传统的工厂管理方式里,管理层缺乏一个可视化的工具来实现对工厂生产的整体管理。通过ZWS云低代码平台,可以使用“搭积木“的方式快速搭建出一个智慧工厂可视化大屏,实现工厂管理的实时高效。ZWS云低代码
    的头像 发表于 12-06 08:24 172次阅读
    如<b class='flag-5'>何用</b>“搭积木“方式<b class='flag-5'>快速</b><b class='flag-5'>搭建</b>智慧工厂大屏

    鸿蒙原生应用/元服务开发-新版本端云一体化模板体验反馈

    一、前言 云端一体化模板是基于Serverless服务构建的一套模板,提供了应用生态常见场景需求的代码实现,开发者可将所需能力快速部署和集成到自己的应用中。 二、准备 体验最新的远端一
    发表于 12-05 14:57

    手把手带你创建HAL版本MDK工程模板

    如何快速开发 STM32 项目?我们总不能每次开发一个项目就搭建一次工程,这样效率太低了。
    的头像 发表于 11-20 10:31 466次阅读
    手把手带你创建HAL版本MDK<b class='flag-5'>工程</b><b class='flag-5'>模板</b>

    Kubernetes 集群及其生态搭建

    上一次接触到kubernetes集群的时候已经是一年以前了,那个时候官方的版本还只是 v1.10 ,而现在过去一年的时间了,官方版本已经快速的迭代到了 v1.17 了,社区也越来越成熟、相关
    的头像 发表于 11-01 16:04 175次阅读
    Kubernetes 集群及其<b class='flag-5'>生态</b><b class='flag-5'>搭建</b>

    何用Python自动套用模板批量生成PDF文档

    办最高效的事。 今天就给大家讲讲如何用Python自动套用模板批量生成下方这样的PDF文档。 1.准备 开始之前,你要确保Python和pip已经成功安装在电脑上噢,如果没有,请访问这篇文章: 超详细Python安装指南 进行安装。如果你用Python的目的是数据分析,可
    的头像 发表于 10-31 10:56 597次阅读
    如<b class='flag-5'>何用</b>Python自动套用<b class='flag-5'>模板</b>批量生成PDF文档

    STM32Cube 官方例程学习指南

    STM32CubeMX 是 ST 官方提供的一个代码生成工具。使用该工具,通过图形化的配置方法,就能快速生成 STM32 的各种片上外设的初始化代码。CubeMX 生成的软件工程使用 HAL 库
    发表于 09-28 06:47

    何用BMlang搭建Tensorflow模型?

    在EVM1684上如何用BMlang搭建一个Tensorflow模型,求助官方一个demo。
    发表于 09-18 07:00

    通过STM32Cube快速创建基于STM32 MCU的USB应用

    目标• 本动手实验的目的是通过STM32 Cube快速创建基于STM32 MCU的USB应用,包括但不限于CDC类,MSC类等。然后,基于创建的工程完成USB复合设备的应用设计。• 实
    发表于 09-11 08:28

    SOLIDWORKS焊件设计-快速搭建结构件产品

    SOLIDWORKS 软件的焊件功能是很多工程师非常喜欢的功能,通过该功能可以快速搭建由结构件组装的产品,由此可见,结构件库直接决定焊接模块的设计能力。
    的头像 发表于 08-31 17:03 441次阅读
    SOLIDWORKS焊件设计-<b class='flag-5'>快速</b><b class='flag-5'>搭建</b>结构件产品

    何用散装转移类型进行USB通信

    应用:示范如何用散装转移类型进行USB通信 BSP 版本: NUC230/NUC240系列 BSP CMSIS v3.01.002 硬件: NuTiny-EVB-NUC240 V1.2 此示例代码
    发表于 08-22 07:11

    USB是什么?USB如何快速的插进接口# #电路知识 #电工 #电路原理

    usb
    安泰仪器维修
    发布于 :2023年07月17日 18:07:12

    NXP遥控机械臂

    NXP
    还没吃饭
    发布于 :2023年06月24日 21:58:43

    何用Multisim搭建电路

    如下图所示,本节讲述如何在Multisim工作平台搭建此电路?
    的头像 发表于 05-17 11:52 3964次阅读
    如<b class='flag-5'>何用</b>Multisim<b class='flag-5'>搭建</b>电路

    请问I.MX RT:SDK中的USB音频驱动是否兼容USB Audio Class 2.0规范?

    P/N:IMX RT1052 问NXP USB Audio(USB2.0)是否支持所有Win7及以上版本,NXP有没有相关文档和报告。
    发表于 05-09 14:23