首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  程序员

问下各位前辈,我最近刚开始学通信接口协议,有没有相关书籍推荐啊

  •  
  •   EZG997 · 29 天前 · 3372 次点击

    最近学通信接口协议:UART,SPI,I2C,CAN 等,查了一下,可能比较合适的是这类书:微机原理,嵌入式通信,串行通信接口等。目前主要是看网上的文章视频,感觉讲的比较零碎,不成体系,有这类经验的前辈麻烦推荐几本合适的书,想学习一下,谢谢!

    第 1 条附言  ·  29 天前
    统一回复:谢谢各位前辈的指点!谢谢!
    23 回复  |  直到 2019-10-18 14:21:38 +08:00
        1
    429463267   29 天前
    图解 http
        2
    starsriver   29 天前 via Android
    @429463267 搞笑呢。

    书本就拉到吧。自己买一个 fpga 核心板或者单片机自己试试,最简单的就是树莓派。100 一个 zero。
        3
    panda1001   29 天前 via Android   ♥ 1
    通信协议是嵌入式的知识点,协议翻手册,软件上就是 linux 驱动编程那些书
        4
    airqj   29 天前 via Android   ♥ 1
    买块资料多的单片机开发板就够了 书都不用
        5
    xiaoyu03   29 天前
    我觉得通讯要两个设备间实验才直观,建议树莓派+单片机?
        6
    lihongjie0209   29 天前
    @429463267 #1 怕是没看题吧
        7
    Harv   29 天前
    白皮书
        8
    chinawrj   29 天前
    通信电子线路 电路 数字电路啥的先学一下吧。
        9
    VDimos   29 天前 via Android
    @429463267 在这瞎误导啥呢
        10
    XuanFei990   29 天前
    以前刚入行的时候,我可能是找一些网上文章,或者看一下相关的例程,比如 51 或者 stm32 的开发板例程都会有这类接口的例子,看一下。
    后来可能就是去翻一下通信接口的官方协议规范,里边包括物理层,协议层描述,会更清晰一些。
        11
    BingZ   29 天前   ♥ 3
    除了 CAN,前 3 个都不复杂,看网上科普足够。至于书,没觉得比芯片手册好。直接上手:
    百科类:
    https://en.wikipedia.org/wiki/Serial_Peripheral_Interface
    https://en.wikipedia.org/wiki/I²C
    https://en.wikipedia.org/wiki/Universal_asynchronous_receiver-transmitter
    科普类:
    https://electrosome.com/spi/
    https://electrosome.com/i2c/

    这些协议的学习分两块:电气特性和应用协议,电子类专业请务必重视电气特性规范和常用的电路设计。前三种协议,找个单片机的手册看看主控如何实现的:如 STM32 系列;再找几个 I2C 或 SPI 的外设芯片做下实验、看下手册就够了。

    另外,I2C 的权威资料可以去 NXP 拿,这是他家主导的。https://www.nxp.com/docs/en/user-guide/UM10204.pdf
    一切以规范协议为准。

    CAN 的坑有点大,入门教材网上挺多,这里介绍一个:
    免费注册后,可下载入门简介:
    https://www.kvaser.cn/training-materials/
    https://www.kvaser.cn/about-can/can-protocol-tutorial/
    入门视频,自备梯子:
    https://www.kvaser.com/e-learning/
    入门后,看正式协议,ISO15765 和 ISO14229,自行百度下载。
    应用还是以车用为主,还是建议从实际节点芯片和控制器入手实践更好。
        12
    laminux29   29 天前   ♥ 1
    C 或 C++,通信原理(主要是 udp 与 tcp ),数据结构。

    我觉得这三样能达到 80 分就可以完成接口的基础设计与实现。
        13
    wangkai0351   29 天前
    stm32 的中文芯片手册+sdk
        14
    wangkai0351   29 天前
    @starsriver 实名 diss 你的评论,楼主要学习通信接口协议:UART,SPI,I2C,CAN 等,你提出的建议是 fpga 核心板或者单片机,从这个角度,我认为你说的不对。
    1 ) fpga 的 UART,SPI,I2C,CAN 等发送和接收模块 IP core 是收费的,你是想让楼主自己练习写 ip core 还是让楼主自己买 ipcore ?我认为不论哪种都是不合适的。
    2 )单片机中包含 UART,SPI,I2C,CAN 的发送和接收模块吗?我认为不包含。姑且认为你说的单片机等于你说的树莓派,倒是可以说通,但是这样说是不符合逻辑的,参考 http://www.elecfans.com/emb/805428.html
        15
    ziyuzile   29 天前
    @wangkai0351 用单片机的话主要是学怎么用,FPGA 自己实现一个简单点的理解更透彻,最后用单片机时那些参数也理解的更深刻一些。
        16
    sansanhehe   29 天前
    unix socket 编程
        17
    starsriver   29 天前 via Android
    @wangkai0351 我就笑笑。

    你自己开发过 fpga 吗?
        18
    Destiny97   28 天前 via Android
    推荐 fpga 或者单片机 io 模拟
        20
    megamilk   28 天前
    直接上单片机吧,学习够了,小麻雀但该有的都有,楼上推荐的 FPGA 成本有点高,上来一大堆逻辑门电路都的整晕你,还要另学 Verilog 或者 VHDL 语言,等入门了能实现各类通讯协议了,再想深入了解底层的东西的话入 FPGA 也不迟
        21
    wangkai0351   27 天前
    @starsriver 老哥怎么不说话了,讨论或者争论最基本讲究有理有据吧,你直接抛出一句“你自己开发过 xxxx 吗?”,企图从经验上倚老卖老,很容易让人一句话怼你哑口无言的,希望你以后慎用这样的 diss 方式。
        22
    starsriver   27 天前 via Android
    @wangkai0351 ? 我只是懒得回覆你而已。

    字面意思。

    不要自作多情。
        23
    wangkai0351   27 天前
    @starsriver 我就笑笑。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2499 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 24ms · UTC 14:35 · PVG 22:35 · LAX 06:35 · JFK 09:35
    ♥ Do have faith in what you're doing.