欢迎光临散文网 会员登陆 & 注册

STM32入门教程-2023持续更新中

2023-03-19 13:59 作者:玄炫植  | 我要投稿

基于标准库








还得是施密特(图中肖特基为施密特,图片翻译错误)












90度相位差判断旋转方向


配置中断的顺序






PWM






GPIO配置为复用推挽输出(AF_PP)


千万别用这个,不然调试端口全没,只能串口烧录


这里解除jtag的复用

驱动究竟干了啥




关于测周法的解释



从模式可以自动清零CNT

主从触发的高级应用后面再学



利用补码的定义在CNT自减时把结果从uint16_t变成int16_t 可以读出负数

抗噪声



AD值最大为2^12 - 1也就是4095 ->3.3V

DA原理图


逐次逼近ADC,采用二分法去计算数字量




ADC时钟分频只能选择6往后的,因为最大支持14MHz

看门狗





用通道序号作为传入值实现人工扫描[doge]




触发源选择就是开启该触发源的DMA

套娃(结构体访问寄存器)

关于(uint32_t)ADC1->DR这个寄存器


开始学USART啦



挖个坑CRC校验是什么?



usart1挂在apb2->72MHz




16倍波特率=72MHz / 寄存器(DIV)

使用keil精简库中的printf


编码选utf-8,串口接收同样,防止乱码,这里加如下

--no-multibyte-chars

或者采用GB2312编码,串口使用GBK模式接收


串口触发中断





挖坑:多主多从


主机发送

PS:高位先行

主机接收

应答机制

地址选择


看手测儿!

软件iic整体架构

iic时序(6种)->设置mpu6050.h->main函数里实现


bit 6 置0就是关闭休眠模式

硬件iic


硬件i2C

10位地址标志位11110

EV5事件:(大标志位)DR->CC->I2C

软硬件iic的区别

软件占空比不规则,SCL下降沿来时不能立刻读写数据,有延时

小尖峰因为从机释放数据线的瞬间主机拉低SDA,这就是硬件的快速响应


SPI协议


片选置0

woc,指令读取!

W25Q64BV闪存芯片

flash写入数据先擦除,全部置1

写入后芯片进入忙状态,等缓存区搬运,可以读busy寄存器查看状态


软件SPI设计思路:

自己写一个MySPI作为底层操作引脚

然后写W25Q64的硬件驱动代码调用MySPI的相关操作


指令集

跨页函数(写着玩玩)

uint32_t W25Q64_PageProgramLeap(uint32_t Address,uint8_t *DateArray,uint16_t Count)

{

uint8_t i;

uint8_t PageNum;

uint8_t externFrontNum;

uint8_t externBackNum;

externFrontNum = 0xFF - (Address & 0xFF) + 1;

PageNum = (Count - externFrontNum) / 0x100 ;

externBackNum = (Count - externFrontNum) % 0x100;

if(PageNum)

{

W25Q64_PageProgram(Address,DateArray,externFrontNum);

for(i=1;i<=PageNum;i++)

{

W25Q64_PageProgram((Address + (i << 8)) & 0xFFFF00,DateArray + externFrontNum +(i-1)*0x100,0x100);

}

W25Q64_PageProgram((Address + ((PageNum + 1) << 8)) & 0xFFFF00,DateArray + externFrontNum +PageNum * 0x100,externBackNum);

}else

{

W25Q64_PageProgram(Address,DateArray,externFrontNum);

W25Q64_PageProgram((Address + ((PageNum + 1) << 8)) & 0xFFFF00,DateArray + externFrontNum ,externBackNum);

}

//return PageNum;

//return ((PageNum + 1) << 8);// & 0xFFFF00

}

STM32入门教程-2023持续更新中的评论 (共 条)

分享到微博请遵守国家法律