########################### EB Mcal ######################## 1. EB 是一个电脑 2. 需要装系统 3. 导入包 #----------- MCU 有时钟 -------------# ADC PWM SPI #------------ PORT -----------------# PORT 有 模式 ALT1 或者 ALT2 等等。 GPIO 配 DIO PWM SPI 配极性 和 相序 ############################ ADC ############################ MCAL处于AUTOSAR架构的最底层 与芯片强绑定,英飞凌 使用 EB #---- ADC 简介 ----# 用于将真实世界产生的模拟信号(如温度、压力、声音、指纹或者图像等)转换成更容易处理的数字形式 #DAC 是将数字转模拟 ADC 组成的控制单元: 请求控制,转换控制,模数转换, 结果处理,中断处理 ADC 内核电压选择方案: 1. ADC 模块统一 VAREF 2. 以自己内核的通道 0 作为同意参考电压。 外部模拟 多路复用 ADC 内核有三个请求源: 不同通道分配不同请求源,请求源优先级可以不同。按照列队顺序转换 若三个请求源(软件,计时,外部事件)同时请求,请求源仲裁器会根据优先级进行转换 #---- EB 配置 ----# General [ˈdʒe n rəl] 整体 AdcClockSource [k lɒ k] adc 时钟来源 AdcPrescale AdcHwUnitInputClass [ˈjuːnɪ t] adc 单元输入类 AdcChannel [ˈtʃæ nl] adc 信道 #---- ADC 关键概念 ----# ADC ############################ SPI ############################ #---- 上拉与下拉电阻 ----# 上拉电阻: 信号引脚 通过电阻 与 vcc 电源连接 灌入电流,固定在高电平 下拉电阻: 信号引脚 通过电阻 与 GND 接地 --------- 串行外围设备接口,芯片管脚四根线,串行同步通信总线 SPI接口主要应用在 EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。 #---- 主从模式 ----# 通信: 只能有一个主设备Master(提供时钟,发起读写操作),多个从设备Slave(接收时钟)各自片选信号管理, #---- 4根信号线 ----# 线名 引脚 说明 SDI MISO 数据输入 主设备 接收, 从设备 发出 SDO MOSI 数据输出 主设备 发送, 从设备 接收 SCK SCLK 时钟 时钟 主设备产生 CS CS/SS 片选信号 主设备 来 选择 指定从设备通信 #---- spi连线模型 ----# Master SCLK --> SCLK Serial Clock [ˈsɪə ri əl] [k lɒ k] 串行时钟 :SCK、CLK MOSI --> MOSI Master Output Slave Input 主输出,从输入。也叫:SIMO、MTSR、DI、DIN、SI; SDI: Slave Digital Input [ˈdɪ dʒɪ t l] 从机数字输入 MISO <-- MISO Master Input Slave Output 主输入,从输出。也叫:SOMI、MRST、DO、DOUT、SO SDO: Slave Digital Output 从机数字输出 SS --> SS Slave select 从 选择,低有效,也叫做: nSS、CS、CSB、CSN、EN、nSS、STE、SYNC SPI 一对多 按照这个线并联起来,主芯片 有多个 ss 脚 来控制片选 从芯片 ss 脚 #---- 工作流程 ----# 主从 都有 一个spi串行移位 寄存器,主设备写 spi 一个字节发起传输。 获取数据必须发送,发送数据必然会接收 A. 只写操作需要 忽略接收的字节 B. 只读一个数据 要发送一个空字节 工作流程: 1. 选择从设备: 拉低 对应 SS 片区信号 2. 读写数据 : 主机 发送 sclk 时钟信号,来告诉从机 读/写 3. 主机 发送 数据 到 缓存区Menory 移位寄存器(0-7) MOSI 移位出去 给 从机 从机也将自己寄存器数据通过 MISO 信号发送出去; 这样数据就交换 #---- 四种通信模式 ----# 模式切换方式,设置 SCLK 时钟信号线: CPOL: clock polarity [pə(ʊ)ˈ la rɪ ti] 时钟极性 正负极,如 0 低 1 高 CPHA: clock phase [feɪ z] 时钟相位 第一个边沿有效 还是 第二个边沿有效。 数据 0 1 0 1 采集 0 1 0 1 在如果是高有效 那么: 再高电平 对应的数据 被采集 到。 CPOL = 0; 表示 SCLK = 0 时处于空闲,则 SCLK 高电平有效 CPOL = 0; 表示 SCLK = 1 时处于空闲,则 SCLK 低电平有效 边沿是 发生信号后开始的跳变, 一个周期的中间位置半周期的竖线,上升还是下降 由左到右 观察。 mode0:CPOL=0 && CPHA=0; 空闲时 SCLK 处于低,_|-|_|- 采第1个边沿 采样是半周期位置沿上升沿 ,数据发送是一个周期的结束位置是下降 mode1:CPOL=0 && CPHA=1; 空闲时 SCLK 处于低,-|_ 采第2个边沿 下降沿 mode2: CPOL=1 && CPHA=0; 空闲时 SCLK 处于高,-|_ 采第 1个边沿 下降沿 mode3:CPOL=1 && CPHA=1; 空闲时 SCLK 处于高,_|- 采第2个边沿 上升沿 总结: CPOL=0 && CPHA=0; 级别表示:信号开始 是高还是低,0为开始是低 然后上升; 相位:数据的高低 是看第一边沿还是 第二边沿。 SDI Slave Out Master In [ˈsɪə ri əl] c rui luo 连续数据输入 SDO Slave Out Master In 联系数据输出 设备接线 SDI 与 原来有什么区别 SDO 与 原来有什么区别 #---- 三种工作模式 ----# 运行模式: Run Mode 等待模式: Wait Mode 低功耗 停止模式: Stop Mode 低功耗 #---- SPI 配置 ----# 1. 初始化 GPIO 口, 配置引脚的复用功能,使能 SPIx 时钟。 调用函数 GPIO_Init(); 2. 使能 SPI 时钟总线 RCC_APB2PeriphClockCmd(RCC_APB2Periph_SPI1,ENABLE) 3. 配置 SPI 初始化的参数 设置 SPI 工作模式: SPI Init(SPI1,&SPI_Initstructure) 4. 使能 SPI 外设 SPI_Cmd(SPI1,ENABLE) SPI_Direction [dəˈ re k ʃn] 方向: 通信方式,可以选择为半双工,全双工,以及串行发和串行收方式 SPI_Mode 模式: 设置SPI的主从模式,主机模式SPI_Mode_Master,从机模式(PI_Mode_Slave) SPI_DataSiz 数据大小: SPl_DataSize_8b (8位) , SPl_DataSize_16b (16位) SPI_CPOL 设置时钟极性 SPI_CPHA 设置时钟相位: 选择 串行同步时钟的 第几个跳变沿, SPI_NSS 设置 NSS 信号信号由 硬件 NSS 管脚 还是 软件控制 SPI_BaudRatePrescaler 波特率 预 分频器:决定 SPI 的时钟参数,从 不分频道 256 分频 8 个可选 SPI_FirstBit 设置数据传输顺序是MSB位在前还是LSB位在前。SPIFirstBitMSB(高位在前)SPI FirstBit SPI_CRCPolynomial 设置 CRC 校验多项式,提高通信可靠性 ,大于 1 即可 #--- dio ---# #--- port ---#
Powered by ddoss.cn 12.0
©2015 - 2024 ddoss
渝公网安备50011302222260号 渝ICP备2024035333号 【实验平台安全承诺书】 小绿叶技术社区,优化网络中,点击查看配置信息
您的IP:192.168.122.82,2024-10-10 20:03:18,Processed in 0.02536 second(s).