V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
liuyulvv
V2EX  ›  问与答

STM32 和 ARM Linux

  •  
  •   liuyulvv · 2021-02-25 10:02:54 +08:00 · 1864 次点击
    这是一个创建于 1128 天前的主题,其中的信息可能已经有所发展或是发生改变。

    小弟只会照着开发文档写程序,对单片机、嵌入式这些东西都不懂

    实验室最近想买个传感器,在官网上看到的是传感器是可以通过 STM32 进行编程控制的,但是我们想用英伟达的 Jetson 开发板,Jetson 是 ARM Linux,运行 Ubuntu,请问 Jetson 也可以通过编程控制这个传感器嘛?

    15 条回复    2021-02-25 15:23:29 +08:00
    Cooky
        1
    Cooky  
       2021-02-25 10:07:50 +08:00 via Android
    gpio ?
    ZoteTheMighty
        2
    ZoteTheMighty  
       2021-02-25 10:15:32 +08:00
    用 gpio 应该可以, 很久很久之前在学校搞过三星 4412 的开发版, 一般主要是交叉编译环境要搭好,其余就可以参照着移植驱动了。
    ZoteTheMighty
        3
    ZoteTheMighty  
       2021-02-25 10:18:42 +08:00
    要能看懂 datasheet 。
    jworg
        4
    jworg  
       2021-02-25 10:24:05 +08:00
    传感器型号给出来啊,不然怎么知道模数转换后输出是啥,万一是 i2c 等一些高级点的接口,直接驱动没问题,输出高低电平频率比较高的话可能需要编写内核模块然后 gpio 采样了,频率低的话不停读也没问题
    surfwave
        5
    surfwave  
       2021-02-25 10:29:38 +08:00
    Jetson 用 GPIO,安装 linux 可以用 Python 来编程控制传感器。STM32,Arduino 这些开发要底层用它们的环境,毕竟就是一个单片机,没有操作系统,一般是 c 写的。
    rainman777
        6
    rainman777  
       2021-02-25 10:35:57 +08:00
    如果硬件接口相同的话应该是可以的,但是用 linux 来控制(读取)传感器会稍微复杂一些,可能还会涉及到重新 build device tree,还要去写硬件驱动~ 建议用 MCU 来做,比较简单~
    rainfallmax
        7
    rainfallmax  
       2021-02-25 10:39:13 +08:00
    先搞懂传感器的 datasheet,是数字量还是模拟量 输入输出,再看开发板上有没有对应脚位输入输出。。。。
    nevin47
        8
    nevin47  
       2021-02-25 10:40:01 +08:00
    我印象中 Jetson 的板子默认有 GPIO,官方还有 GPIO 的 API 驱动

    自己对着 Datasheet 改一下协议就好了,应该不难
    liuyulvv
        9
    liuyulvv  
    OP
       2021-02-25 10:43:28 +08:00
    liuyulvv
        10
    liuyulvv  
    OP
       2021-02-25 10:48:40 +08:00
    @jworg 图片里面的 i2c 就是大佬说的 i2c 嘛
    @rainman777 还想要联网,看重的一个 sim 卡拨号联网装置不支持 stm32,jetson 还有一定的算力。
    jworg
        11
    jworg  
       2021-02-25 10:55:40 +08:00   ❤️ 1
    @liuyulvv 有 i2c 或者 uart 就随随便便写啦,c,golang,rust,bash 任君挑,也就可以明确说 Jetson 可以通过编程控制这个传感器,arm 里默认文件系统有 i2c-tools 这个工具,i2c/dump/i2cget/i2cset 调试起来很方便的
    soysss
        12
    soysss  
       2021-02-25 11:02:18 +08:00
    没看懂。
    systemcall
        13
    systemcall  
       2021-02-25 11:50:02 +08:00
    有 i2c,那就用 i2c 的工具来控制吧。没有用过 Jetson,但是这种东西肯定是有 i2c 的工具的,官方的文档里面看一下有没有 i2c 的例程
    注意一下要使用的 i2c 有没有和别的功能冲突,有些板子是和 i2s 之类的东西复用了部分引脚之类的资源的,多留意一下
    systemcall
        14
    systemcall  
       2021-02-25 11:53:11 +08:00   ❤️ 1
    @rainman777 #6
    如果是树莓派那样自带了开箱即用的操控 SPI I2C 等接口的工具的话,连 bash 都可以写
    看样子不是什么复杂的需求,只是一个传感器而已,不用绑到什么别的东西上面,又不是接个屏幕之类的东西,没那么复杂。如果不需要输出系统的画面而是完全自己控制屏幕,也可以用 SPI I2C 之类的接口的工具直接控制
    surfwave
        15
    surfwave  
       2021-02-25 15:23:29 +08:00
    确实,最好要去官网看 Datasheet,GPIO 里面哪些口对应 I2C 或者 SPI 等等总线,找到驱动之后,能够驱动起来编程就简单了。另外 Jetson 是一个系列,你这个具体型号是 Nano,TX1 还是什么?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2579 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 15:40 · PVG 23:40 · LAX 08:40 · JFK 11:40
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.