Toriyung

导航

2022年10月8日 #

SPI(硬件)---OLED&SSD1306的使用

摘要: 先说结论:proteus貌似不是很支持硬件I2C和硬件SPI。。两次试验都没成功 但基本的原理还是记录一下 工具 软件:Keil、CUBEMX、Proteus 硬件:单片机 STM32F103C6T6A、OLED+SSD1306 UG-2864HSWEG01 原理图 查询SSD1306芯片知4线SP 阅读全文

posted @ 2022-10-08 12:45 Toriyung 阅读(1021) 评论(0) 推荐(0) 编辑

2022年10月2日 #

USART串口学习

摘要: 硬件 单片机 STM32F103C6T6 串口 COMPIM 软件 虚拟串口 VSPD Pro 9.0 串口助手 友善串口调试助手 原理 USART有五个引脚,本次实验使用异步通信,只用到RX(接受)和TX(发送)两个引脚,通讯协议如下图,先拉低电平表示开始,而后发送8或9个数据位,再发送1个校验位 阅读全文

posted @ 2022-10-02 11:54 Toriyung 阅读(385) 评论(0) 推荐(0) 编辑

2022年10月1日 #

I2C总线(模拟)---OLED&SSD1306的使用

摘要: 本次实验I2C总线传输 I2C分为硬件I2C和模拟I2C。其中硬件I2C是单独的I2C硬件驱动,有固定的引脚,和一般芯片驱动使用一样需要操作其寄存器进行数据收发而不用知道I2C的协议内容,灵活度较低但效率高;而模拟I2C是根据I2C协议、时序图,自定义引脚按照协议进行传输,较为灵活但效率较低。 使用 阅读全文

posted @ 2022-10-01 15:58 Toriyung 阅读(1062) 评论(4) 推荐(1) 编辑

2022年9月26日 #

模糊控制

摘要: 具有固定规则的情况下 只需算好A、B的隶属度,然后求A∩B,得到每个规则所属隶属度,然后对应每个规则选择最高隶属度,进行反模糊 如上图,求A∩B后得到各规则隶属度(3/5,2/5等),然后找到每个规则最大隶属度(如M最大隶属度为3/5,L最大隶属度为2/5),然后进行反模糊 参考例子 模糊PID控制 阅读全文

posted @ 2022-09-26 23:08 Toriyung 阅读(63) 评论(0) 推荐(0) 编辑

2022年9月24日 #

RCC时钟初始化

摘要: 时钟树的简化版 解析 以锁相环为分隔 前半部分:时钟源的选择同时使能外部时钟源(HSE/HSI)、时钟源的预先值(是否除以2)、锁相环使能同时选择锁相环时钟来源、锁相环倍频 后半部分:选择要初始化的时钟类型(如系统时钟,AHB,APB)、选择系统时钟来源、AHB分频、APB分频 代码 void Sy 阅读全文

posted @ 2022-09-24 12:56 Toriyung 阅读(230) 评论(0) 推荐(0) 编辑

2022年9月23日 #

TM1637和8位数码管的学习

摘要: 元器件(proteus) 共阳极八位数码管 7SEG-MPX1-CA 其中CA为共阳极,CC为共阴极 数码管驱动芯片 TM1637 单片机 STM32F103C6T6A 原理 完整电路图: 7SEG-MPX1-CA: 八个SEG引脚分别对应八段LED灯管;第九个引脚对应位选引脚,决定是否点亮 TM1 阅读全文

posted @ 2022-09-23 23:42 Toriyung 阅读(3640) 评论(0) 推荐(0) 编辑

2022年9月22日 #

中断的学习

摘要: 用处:高优先级的中断可以强行中断低优先级的活动,结束后继续进行低优先级的活动 代码(基于HAL库): 初始化: 需要给中断优先级分组定个规则(怎么分配抢断优先级和次级优先级):参数为分组规则变量 HAL_NVIC_SetPriorityGrouping() 外部中断初始化(本次实验用的是GPIO口外 阅读全文

posted @ 2022-09-22 22:47 Toriyung 阅读(25) 评论(0) 推荐(0) 编辑

2022年9月4日 #

三极管(NPN)的性质

摘要: 几个状态 1. 截止 当发射极、集电极反偏(VB<VE,VB<VC)或者VBE<0.7V,CE不导通(即VCE=0V),电流没有从C流到E,相当于CE断路 2. 饱和 当发射极、集电极正偏(VB>VE,VB>VC),即VCE<0.7V,CE导通,此时CE呈低阻态,Vcc上升时,电压全部在电阻上,所以 阅读全文

posted @ 2022-09-04 23:43 Toriyung 阅读(729) 评论(0) 推荐(0) 编辑

2022年8月13日 #

浅拷贝与深拷贝

摘要: 浅拷贝是原对象和拷贝对象指向同一块内存空间,即共享内存空间。后果:对于一些数据类型如指针,浅拷贝的后果是当改变被拷贝的内存上的值,拷贝过去的数据也会随之改变,因为指向内存是相同的 深拷贝是拷贝对象重新开辟内存空间独立使用,互不干扰。后果:由于是重新开辟内存空间,所以当改变被拷贝的内存上的值,拷贝过去 阅读全文

posted @ 2022-08-13 18:01 Toriyung 阅读(4) 评论(0) 推荐(0) 编辑

2022年8月11日 #

C++新知识点:引用

摘要: 讲引用还是绕不开左值右值 简单来说左值就是有属于自己的内存地址(持久的值),可以用来修改操作,但右值就是一个临时的变量(其实还有其他的,如将亡量等,总之就是不是一个持久的值),没有自己的内存地址 C++11之前只有左引用 左引用相当于是指针的别名,编译器编译时会将引用替换成指针,所以不需要有自己的内 阅读全文

posted @ 2022-08-11 14:53 Toriyung 阅读(23) 评论(0) 推荐(0) 编辑