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

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

  •  
  •   EZG997 · 2019-10-16 00:37:14 +08:00 · 5456 次点击
    这是一个创建于 1866 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

    书本就拉到吧。自己买一个 fpga 核心板或者单片机自己试试,最简单的就是树莓派。100 一个 zero。
    panda1001
        3
    panda1001  
       2019-10-16 08:19:06 +08:00 via Android   ❤️ 1
    通信协议是嵌入式的知识点,协议翻手册,软件上就是 linux 驱动编程那些书
    airqj
        4
    airqj  
       2019-10-16 08:20:51 +08:00 via Android   ❤️ 1
    买块资料多的单片机开发板就够了 书都不用
    xiaoyu03
        5
    xiaoyu03  
       2019-10-16 08:40:20 +08:00
    我觉得通讯要两个设备间实验才直观,建议树莓派+单片机?
    lihongjie0209
        6
    lihongjie0209  
       2019-10-16 09:09:30 +08:00
    @429463267 #1 怕是没看题吧
    Harv
        7
    Harv  
       2019-10-16 09:11:50 +08:00
    白皮书
    chinawrj
        8
    chinawrj  
       2019-10-16 09:29:35 +08:00
    通信电子线路 电路 数字电路啥的先学一下吧。
    VDimos
        9
    VDimos  
       2019-10-16 09:51:04 +08:00 via Android
    @429463267 在这瞎误导啥呢
    XuanFei990
        10
    XuanFei990  
       2019-10-16 10:13:42 +08:00
    以前刚入行的时候,我可能是找一些网上文章,或者看一下相关的例程,比如 51 或者 stm32 的开发板例程都会有这类接口的例子,看一下。
    后来可能就是去翻一下通信接口的官方协议规范,里边包括物理层,协议层描述,会更清晰一些。
    BingZ
        11
    BingZ  
       2019-10-16 10:32:11 +08:00   ❤️ 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,自行百度下载。
    应用还是以车用为主,还是建议从实际节点芯片和控制器入手实践更好。
    laminux29
        12
    laminux29  
       2019-10-16 10:33:52 +08:00   ❤️ 1
    C 或 C++,通信原理(主要是 udp 与 tcp ),数据结构。

    我觉得这三样能达到 80 分就可以完成接口的基础设计与实现。
    wangkai0351
        13
    wangkai0351  
       2019-10-16 14:31:28 +08:00
    stm32 的中文芯片手册+sdk
    wangkai0351
        14
    wangkai0351  
       2019-10-16 14:37:24 +08:00
    @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
    ziyuzile
        15
    ziyuzile  
       2019-10-16 16:03:07 +08:00
    @wangkai0351 用单片机的话主要是学怎么用,FPGA 自己实现一个简单点的理解更透彻,最后用单片机时那些参数也理解的更深刻一些。
    sansanhehe
        16
    sansanhehe  
       2019-10-16 17:04:27 +08:00
    unix socket 编程
    starsriver
        17
    starsriver  
       2019-10-16 18:59:02 +08:00 via Android
    @wangkai0351 我就笑笑。

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

    字面意思。

    不要自作多情。
    wangkai0351
        23
    wangkai0351  
       2019-10-18 14:21:38 +08:00
    @starsriver 我就笑笑。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1220 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 18:19 · PVG 02:19 · LAX 10:19 · JFK 13:19
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.