- 博客(9)
- 收藏
- 关注
原创 【无标题】
这是斜体这是斜体快捷键Ctrl+i斜体换行方式富士达换行和按Enter换行没区别这是一个引用这是一个引用的引用这是一个引用的引用的引用结束引用需要一行空白行链接方式1也可以ctrl+V更为便捷。
2024-08-03 15:59:50 196
原创 STM32串口接收中断失效问题的基本解决方法(HAL库),发生ORE溢出错误。
3.串口在接收数据一段时间后,发现控制寄存器CR1的值发生了变化,状态寄存器SR的值也有所改变,可以发现,CR1的接收中断使能位被关闭了(原来是0x202C,现在是0x200C),SR的ORE(上溢错误)也被置1。这是由于串口接收数据过多溢出而导致的。5.解决方法:最根本的原因是接收中断被关闭了,所以编写错误回调函数时要重新开启接收中断,这只是一种make shift的办法,却能够简单地解决接收中断失效的问题。由于打开了RXNE的接收中断,在正常条件下,CR1控制寄存器的RXNEIE位为1。
2023-07-30 12:30:59 9835 7
原创 WCH-LINK使用方法
1.USB-TTL模式,芯片的TXD脚和wchlink的RX脚连接,芯片的RXD脚和wchlink的TX脚连接,且两者共地连接,无需共电源(共电源反而失效),即可完成收发,数据收发时灯并不会闪烁。2.下载模式,切换成arm内核的下载模式的方法:断电时连接TX和GND,上电后断开TX和GND,蓝灯亮为ARM模式,蓝灯灭为RISC-V模式。
2022-11-07 17:30:44 4398 1
原创 STC8H复盘计划第3步:I2C
I2C的时序一共有六块拼图,分别是:起始条件、终止条件、发送一个字节、接收一个字节、发送应答和接收应答。模拟I2C时序需要严格地改变两根信号线的电平来完成这六块拼图,硬件I2C也是需要由这六块拼图搭建而成。软件模拟I2C时,除了需要严格复制它的标准时序,还应注意高电平的保持时间(软件延时),为了让这6块拼图能拼上对齐,还应在每块拼图结束时必要地改变时钟线以及释放数据线。I2C有三种基本类型的数据帧,除去起始条件和终止条件外,本质上就是发送一个字节随机接收应答,接收一个字节随即发送应答。
2022-10-19 22:09:18 686
原创 STC8H复盘计划第2步:UART
传统的8051单片机可以用位寻址的方式很容易找到对应寄存器中的这两位,而高级51单片机的多出的串口则要通过对寄存器的位操作来查询其他串口的这两个标志位。STC8H有四个UART,UART意为通用串行通信接口,是一种全双工异步的通信方式,全双工代表数据能同时在两个方向上进行传输,异步代表没有公共的时钟线,UART有两根数据线(TXD和RXD),在连接方式上将互为主从的两个设备TXD和RXD交叉连接,两个设备应共地。TMOD:设置定时器为16位自动重装载模式,设置定时器用作内部定时,设置定时器的gate。
2022-10-18 22:46:37 1852
原创 STC8H复盘计划第1步:GPIO
STC8H共有P0~P7八组端口,每组端口都有8个引脚,习惯于将GPIO的端口定义成GPIO_PX(X = 0,1,2...),将引脚定义成GPIO_Pin_X(X = 0,1,2...),GPIO可用来作输入或者输出模式实现与外部的通信、控制及数据采集的功能。PnM1和PnM0寄存器八位分别控制8个引脚,n只是代表端口号,x才代表引脚号,在软件模拟I2C时序时栽过坑(I2C引脚想设置成开漏输出,但没有写到对应的引脚上)· GPIO作输入模式时,可以采集红外对管,灰度传感器的信号,读取按键输入等。
2022-10-18 00:42:06 1654
原创 深度学习基础(1):线性回归
线性回归(linear regression)1.概念:线性回归用于拟合标签与各个特征成线性关系的训练数据集,求出各个特征的权重(w1,w2)和偏差(b),对给定新的特征实现标签的预测2.表达式:y=xw+ b,w为加权组成的列向量,x为行代表样本,列代表特征的二维矩阵,b代表偏差(offset)3.定义损失函数l = (xw + b - y)**2/2(平方损失)4.算法:小批量随机梯度下降。定义一个批量大小(batch_size),初始化权重(w1,w2)和偏差(b),从给定数据集中..
2022-04-30 17:55:37 1585
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人