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

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

3天内不再提示

一文教你如何在Linux上使用树莓派

h1654155966.4254 来源:互联网 作者:佚名 2018-04-20 06:59 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

小编今天介绍的项目是通过使用CY8CKIT-048 PSoC模拟处理器先锋套件和树莓派,进行全天24小时不间断的环境数据监控。

本文转自Hackster.io网站(点击文章末尾的“阅读原文”访问该网站相关页面),由小编编译,欢迎拍砖。

项目简介


通过使用CY8CKIT-048 PSoC模拟协处理器先锋套件和树莓派(Raspberry Pi),进行24小时不间断的环境数据监控。

准备材料

硬件:

  • 赛普拉斯PSoC模拟协处理器先锋套件×1

    (https://www.hackster.io/cypress/products/psoc-analog-coprocessor-pioneer-kit)

  • 树莓派2代B型或其他运行Linux的设备 ×1

    (https://www.hackster.io/raspberry-pi/products/raspberry-pi-2-model-b)

  • USB-A至微型USB线缆

构建系统


赛普拉斯CY8CKIT-048 PSoC®模拟协处理器先锋套件是个很有趣的开发板,可与PSoC Creator 集成开发环境(IDE)轻松配合使用。

其中包括用于与主板之间通信的工具——Bridge Control Panel

Bridge Control Panel允许用户使用I²C协议与相关应用设备之间双向接收/发送数据。数据可用于绘制数据图表或存储到文件。

该工具的“问题”在于,其仅限在Windows系统中使用,而不适用于运行Linux系统的设备,例如Raspberry Pi

下面,我们创建二十四小时环境数据监控的应用实例。

试想,如果可以用兼容的Linux / Raspberry Pi的东西来替代Bridge Control Panel会有怎样的效果?


首先,来看看I²C通信协议是如何通过USB连接工作的。

主板上有两个微控制器

  • 主芯片CY8C4A45LQI,用来运行我们的应用程序,譬如说,收集一些传感器数据,并传输到I²C接口上。

  • CY8C586LTI作为辅助芯片,通过一个USB接口连接到I²C上获取相关数据,以实现I2C-USB bridge。

这块主板的USB HID接口具有一些专有协议。

幸好,该协议与Cypress 3240 USB to I2C bridge基本相同,Kevin Kirkup已经创建了一个相关的库。

https://github.com/kevinkirkup/cy3240-i2c-bridge

把项目从已经淘汰的libhid迁移到libhidapi,并利用Wireshark检测来自Bridge Control Panel的USB命令:

将上述设置进行更新,使其适用于CY8CKIT-048PSoC®模拟协处理器先锋套件

主要的改变如下:

  • 调整USB产品供应商ID

  • 调整协议,使其适用于CY8CKIT-048PSoC®模拟协处理器先锋套件

  • 把项目从已经淘汰的libhid迁移到libhidapi

  • 确保代码可兼容64位系统

欲查询代码,可访问我的GitHub账户

https://github.com/bluetiger9/cypress-usb-i2c-bridge.git dd

使用方法


在Raspberry Pi / Linux设备上安装电路板的操作步骤:

需要为CY8CKIT-048PSoC®模拟协处理器先锋套件的开发板上添加一些udev规则。

这样,即使非根(non-root)用户也拥有访问的权限。

为此,我们创建出49-hid-development.rules文件:

内容如下:

重新启动,使新的设置生效:

构建项目之前,首先要安装所需的依赖项:

然后,从我的GitHub资源库克隆项目:

项目配置:

现在这个代码已经准备好编译,运行“make” 程序了。

但是,还需要再等一下。src目录里有一个main.c文件:

所以,我们需要根据应用程序发布的数据类型先对此进行编辑。

例如,我的项目要发布包含四组传感器值的数据结构(Struct),包括:土壤阻力(水分)、温度、湿度及照度:

从你的PSoC Creator项目中如实复制此struct。

我们还需要根据已经获得的字段,编辑打印数据的代码:

现在可以使用“make”来编译代码了:

接下来,我们要检查一下这个应用程序能否正常运作:

如果一切正常,我们可以利用ts指令创建一些时间戳、改变输出方式为“输出到文件”,然后可以通过“nohup”指令运行该应用程序。这样,即使用户从SSH退出后仍可以保持运行状态:

输出到文件的状态显示如下:

至此,这个应用程序即可全天24小时运行。经过一段时间后,就可以对该文件进行处理,比如绘制数据图表。

OK,尽情享用吧!

原理图


将赛普拉斯开发板连接到树莓派

下载

https://halckemy.s3.amazonaws.com/uploads/attachments/258660/cypr_rpi_C2Drgfd4mm.png

可利用USB缆连接两者。通过Micro USB线缆给树莓派供电。

代码


Cypress USB-I2C bridge

  • bluetiger9

    https://github.com/bluetiger9

  • cypress-usb-i2c-bridge

    https://github.com/bluetiger9/cypress-usb-i2c-bridge

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

    关注

    88

    文章

    11628

    浏览量

    218013
  • 树莓派
    +关注

    关注

    122

    文章

    2069

    浏览量

    109743

原文标题:如何在Linux/树莓派(Raspberry Pi)上使用赛普拉斯I2C-USB Bridge

文章出处:【微信号:CypressChina,微信公众号:Cypress教程】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Immich智能相册在树莓5的高效部署与优化

    将海外广受欢迎的开源智能相册项目Immich部署于树莓5,并通过搭载基于AX650N/AX8850的M.2算力卡,显著提升了系统算力。借助该方案,我们高效部署了多模态模型CLIP,有效缓解了仅依赖
    的头像 发表于 10-14 11:30 737次阅读
    Immich智能相册在<b class='flag-5'>树莓</b><b class='flag-5'>派</b>5<b class='flag-5'>上</b>的高效部署与优化

    如何使用树莓与OpenCV实现面部和运动追踪的云台系统?

    大家好,这是树莓和OpenCV的连载专题。使用树莓与OpenCV实现姿态估计和面部特征点追踪使用
    的头像 发表于 08-14 17:45 979次阅读
    如何使用<b class='flag-5'>树莓</b><b class='flag-5'>派</b>与OpenCV实现面部和运动追踪的云台系统?

    何在树莓 AI HAT+上进行YOLO姿态估计?

    大家好,接下来会为大家开树莓5和YOLO的连载专题。内容包括四个部分:在树莓5使用YO
    的头像 发表于 07-20 20:34 618次阅读
    如<b class='flag-5'>何在</b><b class='flag-5'>树莓</b><b class='flag-5'>派</b> AI HAT+上进行YOLO姿态估计?

    何在树莓 AI HAT+上进行YOLO目标检测?

    大家好,接下来会为大家开树莓5和YOLO的连载专题。内容包括四个部分:在树莓5使用YO
    的头像 发表于 07-19 08:34 1210次阅读
    如<b class='flag-5'>何在</b><b class='flag-5'>树莓</b><b class='flag-5'>派</b> AI HAT+上进行YOLO目标检测?

    树莓5开启YOLO姿态估计识别之旅!

    大家好,接下来会为大家开树莓5和YOLO的连载文章。内容包括四个部分:在树莓5使用YO
    的头像 发表于 07-18 15:31 1995次阅读
    在<b class='flag-5'>树莓</b><b class='flag-5'>派</b>5<b class='flag-5'>上</b>开启YOLO姿态估计识别之旅!

    树莓5使用YOLO进行物体和动物识别-入门指南

    大家好,接下来会为大家开树莓5和YOLO的专题。内容包括四个部分:在树莓5使用YOLO
    的头像 发表于 07-17 17:16 1572次阅读
    在<b class='flag-5'>树莓</b><b class='flag-5'>派</b>5<b class='flag-5'>上</b>使用YOLO进行物体和动物识别-入门指南

    树莓6 传闻:发布日期与规格!

    每当我想再为我的收藏增添树莓时,总会在是立即购买还是等待硬件更强大的下代之间犹豫不决。但新树莓
    的头像 发表于 07-11 16:21 1363次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>6 传闻:发布日期与规格!

    树莓小技巧:无需键盘或显示器,如何通过WiFi设置树莓

    树莓款小巧便携的USB供电计算机,可以隐藏起来用于小型项目,如网络服务器或家庭自动化。通常,设置树莓需要键盘和显示器来编辑和查看
    的头像 发表于 06-26 15:41 1053次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>小技巧:无需键盘或显示器,如何通过WiFi设置<b class='flag-5'>树莓</b><b class='flag-5'>派</b>?

    树莓分类器:用树莓识别不同型号的树莓

    在本教程系列的第部分中,您将学习如何使用树莓AI摄像头来检测不同的树莓型号。本系列由DavidPlowman创建,他是
    的头像 发表于 06-13 16:39 1001次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>分类器:用<b class='flag-5'>树莓</b><b class='flag-5'>派</b>识别不同型号的<b class='flag-5'>树莓</b><b class='flag-5'>派</b>!

    树莓“吉尼斯世界记录”:将树莓的性能发挥到极致的项目!

    树莓款功能强大、体积小巧且高度可定制的设备,多年来,我们见证了它被应用于众多领域。无论是将其装入3D打印的经典游戏机外壳,还是简单地将它隐藏起来作为家庭文件服务器,我们都报道过在社区里用
    的头像 发表于 05-22 16:53 1212次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>“吉尼斯世界记录”:将<b class='flag-5'>树莓</b><b class='flag-5'>派</b>的性能发挥到极致的项目!

    树莓+Balena OS:键解锁智能硬件新技能!

    通过云平台实现远程管理。今天,我们就来详细了解下如何在树莓派上安装BalenaOS,并开发你的第个应用,让你的树莓
    的头像 发表于 03-25 09:25 1531次阅读
    <b class='flag-5'>树莓</b><b class='flag-5'>派</b>+Balena OS:<b class='flag-5'>一</b>键解锁智能硬件新技能!

    人脸识别指南:如何在树莓派上安装和设置 Dlib

    学习如何在树莓派上安装Dlib并配置人脸识别功能,为您的AI项目奠定基础。在树莓派上安装Dlib的详细步骤要为树莓安装Dlib并确保人脸识
    的头像 发表于 03-24 17:31 1262次阅读
    人脸识别指南:如<b class='flag-5'>何在</b><b class='flag-5'>树莓</b>派上安装和设置 Dlib

    STM32、Arduino、树莓开发方式差异大吗

    异同点 STM32、Arduino、树莓是三种不同的硬件平台,各自具有独特的特点和适用场景。   、硬件特性   硬件平台 STM32 Arduino 树莓
    的头像 发表于 01-02 11:33 1936次阅读

    干货来喽!实用树莓Linux编译指南

    不友好,有没有好的解决办法? 今天来分享下我的私藏干货——树莓Linux编译。编译好之后,开发板只需插到树莓派上连接电脑就可以直接用了,
    的头像 发表于 12-18 16:31 842次阅读
    干货来喽!实用<b class='flag-5'>树莓</b><b class='flag-5'>派</b><b class='flag-5'>Linux</b>编译指南

    实用树莓Linux编译指南,打工人必备!

    不友好,有没有好的解决办法? 今天来分享下我的私藏干货——树莓Linux编译。编译好之后,开发板只需插到树莓派上连接电脑就可以直接用了,
    的头像 发表于 12-17 16:19 1998次阅读
    实用<b class='flag-5'>树莓</b><b class='flag-5'>派</b><b class='flag-5'>Linux</b>编译指南,打工人必备!