- 博客(10)
- 收藏
- 关注
原创 SPI通信协议
一页一共是256个字节,所以一页内的字节地址,就取决于最低的一个字节,而高位的2个字节,就对应的是页地址。如果在进行正常读写时,突然产生中断,然后想用SPI通信线去操控其他器件,这时如果把CS置回高电平,那时序就终止了,但如果不想终止总线,又想操作其他器件,这就可以hold引脚置低电平,芯片释放总线,但是芯片时序不会终止,它会记住当前的状态,当你操作完其他器件时,可以回过来,hold置回高电平,然后继续hold之前的时序,相当于SPI总线进了一次中断,并且在中断里,可以用SPI干别的事情。
2024-01-13 19:45:30
1122
1
原创 I2C通信
使用同步时序就可以极大地降低单片机对硬件电路的依赖。异步时序的好处是省一根时钟线,节省资源,缺点就是对时间要求太严格,对硬件电路依赖比较严重。同步时序的好处,就是对时间要求不严格,对硬件电路不怎么依赖。主机对SCL线完全控制,另外在空闲状态下,主机可以主动发起对SDA的控制,只有在从机发送数据和从机应答的时候,主机才会转交SDA的控制权给从机。从机可以是姿态传感器、OLED、存储器、时钟模块等。对于SCL时钟线,对于从机,在任何时候都只能被动的读取,从机不允许控制SCL线,对于SDA数据线,从机不允许主动发
2023-09-17 13:45:49
270
1
原创 USART串口协议
TX(Transmit Exchange)是数据发送脚,RX(Receive Exchange)是数据接收脚SCL(Serial Clock)是时钟,SDA(Serial Data)是数据SCLK(Serial Clock)是时钟,MOSI(Master Output Slave Input)是主机输出数据脚,MISO(Master Input Slave Output)是主机输入数据脚,CS(Chip Select)是片选,用于指定通信的对象CAN_H和CAN_L是两个差分数据脚,用两个
2023-09-02 18:21:37
1305
原创 DMA数据转运
位段区相当于是位寻址,它把外设寄存器和SRAM中所有的位都分配了地址,你操作这个新的地址,就相当于操作其中的一位,因为32位的地址有99%是空的,所以地址空间很充足,即使把每一位都单独编码,那也是毫无压力,所以就存在了这样一个位段,用于单独操作寄存器或SRAM的某一位。软件触发一般适用于存储器到存储器的转运。AHB从设备是DMA自身的寄存器,DMA作为外设,自己也会有相应的配置寄存器,这里连接在了总线右边的AHB总线上,所以DMA,即是总线矩阵的主动单元,可以读写各种存储器,也是AHB总线上的被动单元。
2023-08-30 00:25:38
342
1
原创 计算机网络学习
交换机有一个特点就是它可以进行桥接,两台交换机可以通过各自的端口进行桥接,桥接起来会产生一个现象,一开始1号交换机的表没有C、D,A向C发送消息是找不到C的,那就会选择广播发送,广播到那个连接另一个交换机的端口时,另一个交换机记录了C对应4号,就找到了C,在A的数据发送过来的时候,C、D的交换机就把A的MAC和端口记录在表里(1号口),B过来也是(1号口),在A、B的交换机上也是在发送数据成功后把C、D记录在5号口。IP数据包就是MAC包的数据部分,IP数据包的头包含了IP的源地址、IP的目的地址。
2023-08-23 17:28:12
47
原创 ADC数模转换器
对于STM32 ADC,触发ADC开始转换的信号有两种,一种是软件触发,就是你在程序中手动调用一条代码,就可以启动转换了;采样保持:AD转换的量化编码需要一小段时间,如果在这一小段时间里,输入的电压还在不断变化,那就没法定位输入电压到底在哪了,所以在量化编码之前,需要设置一个采样开关,先打开采样开关,收集一下外部的电压,比如可以用一个小容量的电容存储一下这个电压,存储好了之后,断开采样开关,再进行后面的AD转换,这样在量化编码的期间,电压始终保持不变,这样才能精确地定位电压的位置,这就是采样保持电路。
2023-08-20 18:31:42
407
1
原创 定时器笔记
采样频率越低,采样个数N越大,滤波效果就越好。OC1和OC1N是两个互补的输出端口,分别控制上管和下管的导通和关闭,然后是在切换上下管导通状态时,如果在上管关断的瞬间,下管立刻就打开,那可能会因为器件的不理想,上管还没完全关断,下管就已经导通了,出现了上下管同时导通的现象,这会导致功率损耗,引起器件发热,所以在这里为了避免这个问题,就有了死区生成电路,它会在上管关闭的时候,延迟一小段时间,再导通下管,下管关闭的时候,延迟一小段时间,再导通上管,这样就可以避免上下管同时导通的现象了。N越大,相对误差越小。
2023-08-19 16:24:08
369
原创 EXTI外部中断
所以为了能让硬件跳转到一个不固定的中断函数里,就需要在内存中定义一个地址的列表,这个列表地址是固定的,中断发生后,就跳到这个固定位置,然后这个固定位置,由编译器,再加上一条跳转到中断函数的代码,这个中断地址的列表,就叫做中断向量表。旋转编码器:用来测量位置、速度或旋转方向的装置,当其旋转轴旋转时,其输出端可以输出与旋转速度和方向对应的方波信号,读取方波信号的频率和相位信息即可得知旋转轴的速度和方向。机械触点式编码器,按键的轴按下,上面两根线短路,松手,上面两根线断开,就是个普通按键。
2023-08-08 20:44:54
290
原创 GPIO输入笔记
一般在电路中遇到的一端接在电路中,另一端接地的电容,是用来滤除一些干扰,保证输出电压波形的平滑的滤波电容。关于光敏传感器:当我们遮住光线时,输出指示灯灭,代表输出高电平;松手时,输出指示灯亮,代表输出低电平。强上拉、强下拉、弱上拉、弱下拉,强和弱指的是电阻阻值的大小,上拉和下拉就指的是接到VCC还是GND。ctrl+alt+space 显示代码提示框。按键一般下接GND,下拉。
2023-08-07 13:18:09
52
原创 STM32--GPIO个人笔记
开漏输出模式下,P-MOS部分无效,只有N-MOS在工作,数据寄存器为1时,下管断开,这时输出相当于断开,也就是高阻模式;数据寄存器为0时,下管导通,输出直接接到VSS,也就是输出低电平,这种模式下,只有低电平有驱动能力,高电平是没有驱动能力的。无源蜂鸣器:内部不带振荡源,需要控制器提供振荡脉冲才可发声,调整提供振荡脉冲的频率,可发出不同频率的声音。输入模式下可读取端口的高低电平或电压,用于读取按键输入、外接模块电平信号输入、输出模式下可控制端口输出高低电平,用以驱动。输入模式时,下面两个MOS均无效。
2023-07-26 18:08:05
45
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人