STM32开发板开发过程5通讯部分电路设计2

 

重磅消息亲爱的各位朋友,我的个人网站目前已经上线,虽然功能还在完善中,但是可以访问了,目前主要有两大块:文章...



重磅消息
亲爱的各位朋友,我的个人网站目前已经上线,虽然功能还在完善中,但是可以访问了,目前主要有两大块:文章版块和论坛版本。这两个版块目前都能正常访问,快去注册发帖吧。说不定,以后你就是论坛的管理员呢 。

网址:www.picmcu.com

快召集你的小伙伴一起去发帖交流吧。

从今天开始,就开始着手设计一款STM32单片机开发板,我每天会把开发的过程跟大家分享出来,尽量做到细致,让初学者对单片机开发有个入门的印象,同时也和大家一起探讨、分享STM32单片机的学习经验,和大家一起成长为单片机高手。

历史回顾:

STM32开发板开发过程|1芯片选型

STM32开发板开发过程|2最小系统设计

STM32开发板开发过程|3GPIO部分设计

STM32开发板开发过程|4通讯部分电路设计1

1. IIC通讯口设计

IIC又叫I2C,是一种两线时的通讯方式,最常见的就是AT24Cxx系列的存储芯片了。本设计中通过AT24C02来实现IIC。



该芯片接在单片机的片上资源I2C1上,即可以使用片上资源实现IIC通讯,也可以通过GPIO口来模拟实现。需要注意的是具有IIC片上资源的引脚一般都是开漏极,也就是如果用作GPIO输出的话是必须要接上拉电阻的,这一点大家在设计产品的时候务必要引起重视,否则这两个口是无法输出高电平的。

2. RS485通讯电路设计

RS485接口是工业现场应用非常普遍的一种接口,因为可以实现主从通讯,一台主机就可以轮训多台分机节点。该接口是通过UART配合电平转换芯片来完成的。本设计中使用SP385作为电平转换芯片。



由于只是在实验室环境下做实验学习之用,该电路被没有加隔离部分,如果要应用到现场最好做隔离处理。

3. CAN通讯接口设计

CAN总线目前被广泛的应用在汽车电子和工业环境中,CAN总线也是两线制总线,传输速率高、传输距离远,最重要的是如果总线上的某一个分机节点出现故障而不会对总线造成压力。目前CAN接口设计的常用方案为:片上CAN资源+电平转换芯片。



CAN通讯是一种非常复杂的通讯,相对于RS485而言其报文结构比较复杂。CAN通讯的数据帧格式可以分为29位ID的扩展帧和11位ID的标准帧。我对RS485和CAN总线的总结如下:

RS485:所见即所得;

CAN:所见非所得;

什么意思,比所说RS485的分机地址为5,那么我直接把数值5赋给地址变量就可以了。但是CAN总线确实非常的麻烦,因为其ID有11位或29位之多。

4. USB通信口设计

对USB大家已经不陌生了,其接口非常常见,如U盘、MP3、MP4、手机、鼠标等。USB只有D+和D-两根线,硬件极其简单但是协议极其复杂。有兴趣的朋友可以搜一下USB协议规范,有几百页之多。



昨天和今天的内容都是通讯接口,通讯接口部分的工作量有一个很大的特点:硬件简单,协议复杂。通讯接口就像一条高速公路一样,路就是硬件,但车怎么走就是软件的事情了。如果管理的好那路上就不堵车,如果管理不好那就天天堵。所以说通讯协议是最考验大家编程能力的。

我还想在这块学习板上加一个彩屏,但是在淘宝上找了一下现成的TFT真彩屏都好贵的,要六七十,甚至一百多。这远远超出了我的设计预算。关于屏的事情,这两天我再好好考虑一下设计方案,争取做到低成本。

最后,希望大家去支持一下我的网站,希望大家都去注册发帖交流,整个网站是我自己百度一边学习一边搭出来,视觉效果上可能是差了一点,但是我已经在很努力的完善了。刚才一位朋友问关于QQ、微信、新浪快捷登录的事情,我再百度下,看看怎么做。只要大家支持,我就努力做好。最后再唐僧一遍网址:www.picmcu.com

您正在收看的是如何开发一款STM32开发板,正在现场直播,毫无保留。

本订阅号致力于单片机、ARM等嵌入式软硬件的设计经验分享,秉承“人人都是电子设计经验的分享者”的理念,成功路上不孤单,我们一起努力。公众号:micropoint8



    关注 玩转嵌入式


微信扫一扫关注公众号

0 个评论

要回复文章请先登录注册