最近学通信接口协议:UART,SPI,I2C,CAN 等,查了一下,可能比较合适的是这类书:微机原理,嵌入式通信,串行通信接口等。目前主要是看网上的文章视频,感觉讲的比较零碎,不成体系,有这类经验的前辈麻烦推荐几本合适的书,想学习一下,谢谢!
1
429463267 2019-10-16 02:58:29 +08:00
图解 http
|
2
starsriver 2019-10-16 07:54:50 +08:00 via Android
|
3
panda1001 2019-10-16 08:19:06 +08:00 via Android 1
通信协议是嵌入式的知识点,协议翻手册,软件上就是 linux 驱动编程那些书
|
4
airqj 2019-10-16 08:20:51 +08:00 via Android 1
买块资料多的单片机开发板就够了 书都不用
|
5
xiaoyu03 2019-10-16 08:40:20 +08:00
我觉得通讯要两个设备间实验才直观,建议树莓派+单片机?
|
6
lihongjie0209 2019-10-16 09:09:30 +08:00
@429463267 #1 怕是没看题吧
|
7
Harv 2019-10-16 09:11:50 +08:00
白皮书
|
8
chinawrj 2019-10-16 09:29:35 +08:00
通信电子线路 电路 数字电路啥的先学一下吧。
|
10
XuanFei990 2019-10-16 10:13:42 +08:00
以前刚入行的时候,我可能是找一些网上文章,或者看一下相关的例程,比如 51 或者 stm32 的开发板例程都会有这类接口的例子,看一下。
后来可能就是去翻一下通信接口的官方协议规范,里边包括物理层,协议层描述,会更清晰一些。 |
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,自行百度下载。 应用还是以车用为主,还是建议从实际节点芯片和控制器入手实践更好。 |
12
laminux29 2019-10-16 10:33:52 +08:00 1
C 或 C++,通信原理(主要是 udp 与 tcp ),数据结构。
我觉得这三样能达到 80 分就可以完成接口的基础设计与实现。 |
13
wangkai0351 2019-10-16 14:31:28 +08:00
stm32 的中文芯片手册+sdk
|
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 |
15
ziyuzile 2019-10-16 16:03:07 +08:00
@wangkai0351 用单片机的话主要是学怎么用,FPGA 自己实现一个简单点的理解更透彻,最后用单片机时那些参数也理解的更深刻一些。
|
16
sansanhehe 2019-10-16 17:04:27 +08:00
unix socket 编程
|
17
starsriver 2019-10-16 18:59:02 +08:00 via Android
|
18
Destiny97 2019-10-16 23:17:57 +08:00 via Android
推荐 fpga 或者单片机 io 模拟
|
19
wangkai0351 2019-10-17 08:49:15 +08:00
|
20
megamilk 2019-10-17 11:12:02 +08:00
直接上单片机吧,学习够了,小麻雀但该有的都有,楼上推荐的 FPGA 成本有点高,上来一大堆逻辑门电路都的整晕你,还要另学 Verilog 或者 VHDL 语言,等入门了能实现各类通讯协议了,再想深入了解底层的东西的话入 FPGA 也不迟
|
21
wangkai0351 2019-10-18 10:39:56 +08:00
@starsriver 老哥怎么不说话了,讨论或者争论最基本讲究有理有据吧,你直接抛出一句“你自己开发过 xxxx 吗?”,企图从经验上倚老卖老,很容易让人一句话怼你哑口无言的,希望你以后慎用这样的 diss 方式。
|
22
starsriver 2019-10-18 13:37:05 +08:00 via Android
|
23
wangkai0351 2019-10-18 14:21:38 +08:00
@starsriver 我就笑笑。
|