历史上的今天
返回首页

历史上的今天

今天是:2024年09月03日(星期二)

正在发生

2019年09月03日 | STM32常用通信——USART,IIC,SPI,CAN

2019-09-03 来源:eefocus

STM32常用通信


CAN通信

CAN根据两根线上电位差来判断总线电平,总线电平分为显性电平和隐形电平,两者必居其一,发送方通过控制总线电平发送信息给接收方。


显性电平对应逻辑0,两根线压差2.5V左右,隐形电平对应逻辑1,压差为0。总线上可以挂很多单元,显性电平具有优先权,一个单元显性电平,则总线为显性。CAN总线起止断有120R的电阻,用于做阻抗匹配,减少回波反射。


CAN的位时序:

<同步段SS>SS

<传播时间段PTS

相位缓冲段1   PBS1>BS1

<相位缓冲段2   PBS2>BS2

1位分为四段,每段由若干Tq组成,

波特率=1/(Tq+TBS1+TBS2)

TBS1=Tq*(TS1[3:0]+1)

TBS2=Tq*(TS2[2:0]+1)

Tq=(BRP[9:0]+1)*TCLK

TCLK=APB时钟周期


过滤器:

互联型28个过滤器,增强型14个过滤器(ag:F103ZET6);

每个过滤器由两个32位寄存器CAN_FxR1和CAN_FxR2组成。

期望收到的值:CAN_FxR1,必须关心的ID:CAN_FxR2;


控制寄存器:

CAN_MCR,INRQ位置1初始化,置零进入正常工作模式。

CAN_BTR,用于设置分频系数BRP,TS1,TS2,决定CAN波特率


发送流程:

选择空置邮箱,设置标识符ID,数据长度和发送数据,请求发送,挂号(等待成为最高优先级),等待总线空闲,发送,空置邮箱


接收流程:

FIFO空,接受有效报文,挂号1(读出,释放邮箱),挂号2(读出,释放邮箱).......满溢出,丢失信息。


SPI

四线通信,MOSI,MISO,CS,SCLK,串行通信,通过移位寄存器进行操作,所以读的时候,需要发送空子节,引起主机发送,如果是写,则不需要考虑接收。

SPI主模块和与之通信的外设备时钟相位和极性应该一致。

32配置省略......


模拟SPI:

void Write_date ()//SPI写模拟CPHA=1,CPOL=1操作的伪代码

{

    片选CS置零选中;

 for(i=0;i<8;i++)//八位

 {     

  时钟脚置为零;

  if(dat&0x80)

     发送1;

  else 

     发送0;

  时钟置高;

  dat<<=1;//先发高位  

 }

    片选CS置高取消选中; 

}


IIC

IIC为串行总线,三种类型信号

开始信号:SCL为高电平时,SDA出现下降沿

结束信号:SCL为高电平时,SDA出现上升沿

应答信号:接收数据的 IC 在接收到 8bit 数据后,向发送数据的 IC 发出特定的低电平脉冲,表示已收到数据CPU 向受控单元发出一个信号后,等待受控单元发出一个应答信号, CPU 接收到应答信号后,根据实际情况作出是否继续传递信号的判断。若未收到应答信号,由判断为受控单元出现故障。


数据传输:

SCL高电平时,SDA数据写入,所以要变化SDA值,需要在SCL低电平时。


USART

通过定时器产生,确定波特率,一般8位,起始,停止各一位,无奇偶校验位,串行通信,RX,TX

推荐阅读

史海拾趣

Boyd Corporation公司的发展小趣事

在电子行业快速发展的背景下,Boyd Corporation始终保持着对技术的追求和对市场的敏锐洞察。公司不断深耕细作,优化现有产品,同时积极研发新产品,以满足市场的不断变化和客户的不同需求。通过持续创新,Boyd Corporation在电子行业中始终保持着领先地位,为客户提供了更优质的产品和服务。

这五个故事展示了Boyd Corporation在电子行业中的发展历程和取得的成就。作为一家技术领先、市场领先的企业,Boyd Corporation将继续秉承创新、质量、服务的理念,为电子行业的发展做出更大的贡献。

DETCO公司的发展小趣事

随着智能家居市场的兴起,ElectronicsCorp看到了巨大的潜力。公司投入大量资金研发智能家居设备和技术,并与多家知名家居品牌合作推出了一系列智能家居解决方案。这些解决方案不仅提供了便捷的智能家居体验,还注重用户隐私保护和数据安全。通过不断创新和优化产品体验,ElectronicsCorp在智能家居领域取得了显著突破,并成为全球智能家居市场的领军企业之一。

Good Sky Electric Co Ltd公司的发展小趣事
正确操作摇臂钻床的关键在于遵循操作规程和安全规范。在操作过程中,应注意避免超负荷运行、频繁启动和停止以及长时间连续工作等不当操作。同时,还应定期对设备进行维护保养,如清洁电气元件、检查接线是否松动、更换老化的元件等。
Components Corporation公司的发展小趣事
正确操作摇臂钻床的关键在于遵循操作规程和安全规范。在操作过程中,应注意避免超负荷运行、频繁启动和停止以及长时间连续工作等不当操作。同时,还应定期对设备进行维护保养,如清洁电气元件、检查接线是否松动、更换老化的元件等。
American Custom Components公司的发展小趣事

近年来,电子行业面临着原材料价格上涨、市场竞争激烈等挑战。American Custom Components公司也不例外,面临着成本压力和市场份额的下降。为了应对这些挑战,公司采取了一系列措施,包括优化生产流程、降低生产成本、加强研发创新等。同时,公司还积极拓展新的应用领域和市场,寻找新的增长点。这些努力使得公司在行业竞争中保持了一定的优势。

Bytesonic Corporation公司的发展小趣事

为了进一步加强对大陆市场的投资和管控,Bytesonic Corporation在1998年5月在英属维尔京群岛成立了控股公司——剑桥电子有限公司。这一举措不仅提升了公司的资本运作能力,也为其在全球范围内的业务拓展提供了更多的便利。

问答坊 | AI 解惑

指纹传感器介绍

1、电容式指纹传感器介绍 电容式指纹传感器是目前市场上的主流半导体指纹传感器。 电容式指纹传感器最早是由美国Veridicom公司生产的FPS100指纹传感器。但是,FPS100指纹传感器由于抗静电指标比较低(只有5KV),存在指纹残留的问题,基本上没 ...…

查看全部问答>

霍尔传感器应用

从理论方面介绍了霍尔传感器的各种基础知识…

查看全部问答>

GSM模块

GSM模块将GSM射频芯片、基带处理芯片、存储器、功放器件等集成在一块线路板上,具有独立的操作系统、GSM射频处理、基带处理并提供标准接口的功能模块。因此,GSM模块具有发送SMS短信,语音通话,GPRS数据传输等基于GSM网络进行通信的所有基本功能。 ...…

查看全部问答>

请帮忙推荐一些高精度高稳定性的稳压管

各位大哥,我现在要做一台测量仪器,需要两个高精度的稳压管,要求如下: 第1个:电压 0.5v~1V之间 第2个:电压 6.0~10V之间 请各位多多帮忙!!!…

查看全部问答>

help:使用THUMB编译后运行死机

程序用ARM mode编译后能正常运行,改为Thumb mode编程就死机。用的是IAR的编译器、Jlink、ST的库代码和启动代码。…

查看全部问答>

基于FPGA的高速数据采集系统的研究

基于FPGA的高速数据采集系统的研究…

查看全部问答>

【问TI】关于28027的FLASH API问题??

    最近在研究28027的FLASH远程更新,参考的为2812的《TMS320F281x Boot ROM Serial Flash Programming》文档,对比之下,发现28027和2812的CKFA程序相差甚大,28027的参考文档为《Flash2802x_API_V200_using_CCS3.3v_and_CCS4.0v_ ...…

查看全部问答>

DIY 电源 进度

目前,已经初步浏览了如下datesheet,目的是对相关功能模块有一个大致的概念,以便后续项目遇到时能知道用什么。 HRPWM 和CLA 部分是需要重新学习的。特别是CLA的汇编语言,只待在项目中遇到需求具体学习。  …

查看全部问答>

基于MSP-EXP430FR5739的POV制作

利用MSP-EXP430FR5739,实现了简易的利用POV原理制作的摇摇棒。摇摇棒有16只高亮度LED,一个水银传感器,一个上拉电阻组成。利用430单片机的IO口中断功能,结合水银传感器来检测摇摇棒的运动方向,同方向时,按一定顺序刷新LED,实现文字,图案的显 ...…

查看全部问答>

讨论一下RC滤波器

RC滤波器是模拟电路中最常用的一种简单的滤波器,大家讨论一下R和C分别对电路特性的影响吧,对于截止频率一定的电路,也就是RC乘积定了之后该如何选择R和C…

查看全部问答>