【嵌入式Linux+ARM】硬件相关基础知识(门电路_UART_I2C_SPI)

2019-07-12 16:42发布

    比较基本的一些知识,就算再怎么水,一些基本的电路常识还是需要懂的,需要自己慢慢的积累,实际工作中需要好好积累硬件相关的知识;     正文开始: 1.门电路 与门、或门、非门的几个标志需要记住,特别是后面两个不要混淆,自己画了一遍:
实际电路中可以组合使用:如与非门、或非门等复杂电路。 这些是比较简单的,做个简单的复习: 与门:1 1——>1      1 0——>0      0 1——>0     0 0——>0 或门:1 1——>1      1 0——>1      0 1——>1     0 0——>0 非门:1——>0          0——>1 还有其他的组合,如与非门,或非门等等;
2.上拉电阻与下拉电阻 主要都是用来确定某点电压,特别是该点的状态不确定时。 上拉电阻一般一端接电源正极,通过一个电阻串联接到相关引脚,可以提高驱动能力; 下拉电阻有信号保护的作用。
3. 输入引脚、输出引脚的区别 其实就是GPIO,一个老掉牙的东西了; 输入引脚:从寄存器读值 输出引脚:向寄存器写值 中断引脚:1.有输入引脚的功能,2.可以中断CPU。 其实很多GPIO引脚的功能可以有多个,比如一个引脚可以作为普通的IO管脚来使用,也可以复用为中断引脚、串口引脚、Ad采集等等;   4. 嵌入式硬件环境构建: 目标机与主机 主机用来编辑,编译程序;目标机用来测试与运行程序; 通常有三种连接方式;      JTAG连接(烧写程序)          串口连接(操作bootloader与Linux)         网络(传输文件  NFS);
5. UART协议      所有的协议类,正常使用需要满足两个条件: 你说的别人能听懂:       ——即双方约定信号的协议 你的语速别人要能跟上:——即双方满足时序要求      串口波特率(与比特率的区别): 单片机或计算机在串口通信时的速率。指的是信号被调制以后在单位时间内的变化,即单位时间内载波参数变化的次数,如每秒钟传送240个字符,而每个字符格式包含10位(1个起始位,1个停止位,8个数据位),这时的波特率为240Bd,比特率为10位*240个/秒=2400bps。每秒钟传送的二进制位数,简称比特率。比特率表示有效数据的传输速率,用b/s 、bit/s、比特/秒,读作:比特每秒。      波特率与比特率的关系:      比特率=波特率*单个调制状态对应的二进制位数      例如假设数据传送速率为120符号/秒(symbol/s)(也就是波特率为120Baud),又假设每一个符号为8位(bit),则其传送的比特率为(120symbol/s) * (8bit/symbol)=960bps.      UART(用的是SCI协议),与SPI不同的是SPI是同步的,而SCI是异步的,SPI比SCI多出一条时钟线;      Universal Async Receive/Transmit 通用 异步 接受/发送器  ——即串口;      开发板如何通过UART与主机传输数据?     由于电脑的串口用的是RS232电平(-3V-15V->1  3-15V->0),而一般的单片机用的都是TTL电平(+5V->1  0V->0)所以需要有一个电平转换芯片,如max2326.
6. I2C协议     其实就是两条线(一条数据线SDA,一条时钟线SCL),但要配置的东西还是不少的;     2440(2440中有I2C控制器)——————可以多个I2C设备。    开始信号:SCL为高电平时,SDA由高电平向低电平跳变,开始传送数据。    结束信号:SCL为高电平时,SDA由低电平向高电平跳变,结束传送数据。    2440停止操作SDA,此时I2C设备会把SDA拉低(发出ACK响应信号)    Master每发送完8bit数据后等待Slave的ACK。    即在第9个clock,若从IC发ACK,SDA会被拉低。    若没有ACK,SDA会被置高,这会引起Master发生RESTART或STOP流程
7.SPI串行外设接口(Serial Peripheral Interface)     SPI设备一般有输出数据引脚(SDO)、输入数据引脚(SDI)、时钟信号(SCLK)、片选信号(CS)     SPI的通信原理很简单,它以主从方式工作,这种模式通常有一个主设备和一个或多个从设备,需要至少4根线,事实上3根也可以(单向传输时)。也是所有基于SPI的设备共有的,它们是SDI(数据输入)、SDO(数据输出)、SCLK(时钟)、CS(片选)。      1)SDO – 主设备数据输出,从设备数据输入;      2)SDI – 主设备数据输入,从设备数据输出;      3)SCLK – 时钟信号,由主设备产生;      4)CS – 从设备使能信号,由主设备控制。
注:原创文章,转载请注明出处:http://blog.csdn.net/scottly1/article/details/38238315