嵌入式系统
文章平均质量分 73
Gentle Jade
机电男一枚,热爱探索、热爱学习、专注技术;
曾获全国大学生“恩智浦杯”智能汽车竞赛全国总决赛四轮组一等奖、“夸父逐日”挑战赛二等奖
现主要学习研究Linux、嵌入式MCU、RTOS等工业机器人场合应用
展开
-
嵌入式通信协议札记(一):串口通信
一.串口通信的物理层与协议层物理层规定了通讯系统的机械、电子特性(相当于规定了用嘴巴还是肢体交流)协议层规定了通讯逻辑、数据打包解包标准(相当于规定了用中文还是英文交流)1.物理层串口通信的物理层有很多标准和变种,以RS232标准为例,规定了信号的用途、通讯接口、电平标准。电平标准串口通讯分为TTL标准和RS232标准因为控制器一般使用TTL电平标准,所以常常会使用MA3232芯片对TTL及RS232电平的信号进行互相转换。信号的用途串口线中的RTS、CTS、DSR、DTR及DCD原创 2020-08-03 20:59:01 · 865 阅读 · 1 评论 -
嵌入式通信协议札记(二):I2C
一.I2C通信协议简介1.物理层I2C物理层有以下特点:I2C是支持多设备的总线,支持多个通讯主机、多个通讯从机I2C使用两条总线线路,SDA(双向串行数据线)、(SCL)串行时钟线每个连接到总线的设备都有一个独立的地址,主机利用地址进行不同设备的访问多个主机同时使用总线时,为防止数据冲突会通过仲裁的方式决定哪个设备占用总线具有三种传输模式:标准模式(100k/s)、快速模式(400k/s)、高速模式(3.4M/s)总线通过上拉电阻接到电源,当I2C设备空闲时输出高阻态,当所有设备都空闲原创 2020-08-05 11:33:58 · 332 阅读 · 0 评论 -
嵌入式通信协议札记(三):SPI
一.SPI协议简介SPI协议(Serial Peripheral Interface),即串行外围设备接口,是一种高速全双工通信总线,多应用在通信速率要求较高的场合。另外还支持双线单向以及单线模式。其中双线单向模式可以同时使用MOSI及MISO数据线向一个方向传输数据,可以加快一倍的传输速度。而单线模式则可以减少硬件接线,当然这样速率会受到影响。1.物理层SPI通信使用三条总线SCK、MOSI、MISO,还有片选线SS。SS(Slave Select):从设备选择信号线,常称为片选信号线,亦称N原创 2022-03-30 10:41:44 · 1978 阅读 · 0 评论 -
串口通信数据收发处理流程
关于串口数据接收处理有多种方法,下面主要总结两种:1.引入接收状态标记USART_RX_STA//定义变量USART_RX_STA,接收状态//bit15, 接收完成标志//bit14, 接收到0x0d//bit13~0, 接收到的有效字节数目/** * @brief 串口1中断服务程序 * * @remark 下面代码直接把中断控制逻辑写在中断服务函数内部 * 说明:采用HAL库处理逻辑,效率不高。 * * @param void * * @return void原创 2022-03-22 17:20:14 · 4177 阅读 · 1 评论 -
DMA实现数据传输流程
1.相关概念(1)DMA直接寄存器访问可实现外设数据寄存器到存储器、存储器到外设数据寄存器、存储器到存储器之间的高效数据传输,无需CPU操作控制。(2)外设与存储器外设包括ADC、SPI、I2C、USART等等存储器包括片内SRAM、外部存储器、片内Flash等等(3)具体应用场合举例:ADC采集可以利用DMA将AD转换数据转移到目标存储区,适用于多通道采集、采样频率高、连续传输的ADC采集场合;将特定存储区的数据转移到外设数据寄存器,用于外设的对外数据传输,如存储器传输数据到串口数据寄存器原创 2022-03-23 12:23:02 · 12645 阅读 · 1 评论 -
I2C应用——AHT10温湿度传感器
I2C读取AHT10温湿度数据需要结合传感器的数据手册来编写代码。//aht10.c#include "aht10.h"#include "delay.h"#include "iic.h"/** * @brief 向ATH10写入数据 * * @param cmd 命令 * @param data 要写入的数据 * @param len 写入数据大小 * * @return u8 0,正常,其他,错误代码 */u8 AHT10_Write_Data(u8原创 2022-03-29 16:49:50 · 5305 阅读 · 0 评论 -
SPI应用——W25Q128串行FLASH
一.FLASH存储器介绍FLASH存储器又称闪存,它与EEPROM都是掉电后数据不丢失的存储器,但FLASH存储器容量普遍大于EEPROM,现在基本取代了它的地位。在存储控制上,最主要的区别是FLASH芯片只能一大片一大片地擦写,而EEPROM可以单个字节擦写。W25Q128是一种使用SPI通讯协议的NOR FLASH存储器,它的CS/CLK/DIO/DO引脚分别连接到了 STM32对应的SDI引脚NSS/SCK/MOSI/MISO上,其中STM32的NSS引脚是一个普通的GPIO,不是SPI的专用NS原创 2022-03-30 17:49:30 · 4482 阅读 · 0 评论 -
QSPI应用——W25Q128串行FLASH(先挖个坑 以后再写)
SPI协议其实是包括:Standard SPI、Dual SPI和Queued SPI三种协议接口,分别对应3-wire, 4-wire, 6-wire。(1)通常我们说的SPI就是Standard SPI,有4根信号线,分别为CLK、CS、MOSI和MISO。数据线工作在全双工。(2)Dual SPI,它只是针对SPI Flash而言,不是针对所有SPI外设。对于SPI Flash,全双工并不常用,因此扩展了mosi和miso的用法,让它们工作在半双工,用以加倍数据传输。也就是对于Dual SPI F原创 2022-04-01 10:09:58 · 885 阅读 · 0 评论 -
嵌入式基本外设札记(一):ADC
一.ADC功能框图分析1.①电压输入范围ADC输入范围为VREF- ≤ VIN ≤ VREF+ ,由VREF-、VREF+、VDDA、VSSA四个外部引脚决定。在设计原理图时一般把VSSA、VREF-接地,VDDA、VREF+接3V3,得到ADC的输入电压范围为0~3.3V。如果想要让输入的电压范围变宽,可以测试负电压或更高的正电压,需要在外部添加一个电压调理电路,把需要转换的电压抬升或降压到0~3.3V就可以用ADC测量了。2.②输入通道STM32的ADC多达18个通道, 外部16个通道就是原创 2022-04-01 11:43:51 · 2263 阅读 · 0 评论