1.SPI 串行外围接口,全双工同步通信,有四根线 MOSI:主器件数据输出,从器件数据输入 MISO:主器件数据输入,从器件数据输出 SCLK:时钟信号,主器件发出 CS:使能信号,主器件控制 有四种工作模式 CPOL:clock polarity时钟极性 SPI空闲时,SCLK电平(0空闲时低电平,1空闲时高电平) CPHA:clock phase时钟相位 SPI在第几个边沿采样数据(0第一个边沿,1第二个边沿) 时钟的极性(CPOL)用来决定在总线空闲时,同步时钟(SCK)信号线上的电位是高电平还是低电平。当时钟极性为0时(CPOL=0),SCK信号线在空闲时为低电平;当时钟极性为1时(CPOL=1),SCK信号线在空闲时为高电平; 时钟的相位(CPHA)用来决定何时进行信号采样。 (当相位为0,在奇数边沿采样。相位为1,在偶数边沿采样。) 当时钟相位为1时(CPHA=1),在SCK信号线的第二个跳变沿进行采样;这里的跳变沿究竟是上升沿还是下降沿?取决于时钟的极性。当时钟极性为0时,取下降沿;当时钟极性为1时,取上升沿。 当时钟相位为0时(CPHA=0),在SCK信号线的第一个跳变沿进行采样。跳变沿同样与时钟极性有关:当时钟极性为0时,取上升沿;当时钟极性为1时,取下降沿。
2、STM32F103有5个时钟源 HSI高速内部时钟 8MHZ HSE高速外部时钟 4-16MHZ LSI低速内部时钟 40KHZ LSE低俗外部时钟 32.768KHZ PLL锁相环 最高72MHZ
3.IIC 两根线,一根数据线,一根时钟线。 当时钟线高电平时,数据线由高到低表示起始信号。 时钟线高电平时,数据线由低到高表示停止信号。 时钟线高电平时SDA的数据有效。 时钟线低电平SDA的数据无效,此时SDA数据变换。 当时钟线为高,数据线为低表示应答。 时钟线为高,数据线为高表示非应答。
4.keil代码大小 Code:程序代码,存储在rom中; RO-data:只读数据,存储在rom中; RW-data:可读可写数据,既存储在ram中,也存储在rom中(RW-data已初始化的数据会存储在rom中,上电会从rom搬移至ram中); ZI-data:Zero Initialize,未初始化的数据,上电后在ram中划分一个区域统一存储,MDK会给默认赋值为0。 rom大小=Code+RO-data+RW-data ram大小=RW-data+ZI-data
5.IO输出 推挽电路是由两个三极管或场效应管,以推挽方式存在于电路中,推挽输出可以输出高电平和低电平,可以直接驱动功耗不大的数字器件。 开漏输出需要借助外部上拉电阻才能输出高电平,可实现线与功能,只要有一个信号为低电平则总线为低电平。
6.串行通信和并行通信 串行 并行 通讯距离: 较远 较近 抗干扰能力: 较强 较弱 传输速率: 较慢 较快 成本: 较低 较高 单工:就是只能A到B,固定一个方向 半双工:A可到B,B可到A,但是是分时进行的 全双工:A和B之间可以同时进行收发数据
同步:两根线 数据线和时钟线 一个时钟 一个数据0或者1 数据帧 速度上会更高,因为同步的基本上是数据。 异步:一根线 只有数据线 设备之间有通信协议 如0 是起始位,然后是数据主体,然后通讯停止位。 速度上会较低,因为异步通信数据位上还有各种标识符号 字符。
7.串口通信协议 1- RS232 主要用于工业上的传输,可以抗干扰,高低电平是 -15 代表1,15代表0 。 TTL 40cm以上出错率就会很大了 ,用RS232传输的话距离可以比较长。 TTL RS232标准电平 TTL 概念图: 设备A --------MAX3232电平转换芯片 ------DB9接口 ======= DB9接口 ----MAX3232电平转换芯片-----设备B DB9 公头和母头 直通线 RXD-RXD TXD-TXD 常用在设备和电脑的连接 交叉线 RXD-TXD RXD-TXD 一般用于设备和设备的直连 两头母口是交叉,一公一母是直连。
2- USB转串口 TTL USB转串口 设备A -----------CH340串口转换芯片------USB接口=============USB接口---------电脑串口助手
3- 原生的串口转串口 直接TTL链接通信 如蓝牙WIFI GSM等 控制器出来的都是 TTL电平 通过电平转换芯片MAX3232来转换成RS232通讯
TTL 单片机—从芯片出来 0-5V RS-232 +15—–15V TTL电平经过电平转换芯片成232电平经过DB9接口即可以通信
|