目前在做柔性超声成像系统相关研究,欢迎感兴趣的朋友联系我。

硬件IIC控制OLED屏幕

继上篇速成MSP432后,笔者开始调试使用IIC通信控制的OLED显示屏时,但遇到了极大的阻碍(被中断相关问题困扰),而在网络上发现几乎所有的实现代码都是采用GPIO模拟IIC的方案,所以笔者认为很有必要分享一下这篇开发经历

认识IIC通信

我们分为两个部分来学习:IIC标准和具体的在MSP432上的IIC实现

IIC标准

下图是IIC的总线拓扑,可以看出只有两根信号线:数据(SDA)和时钟(SCL)。可以有任意个设备挂在这对总线上,同时注意到有两个电阻上拉到Vcc,这是因为IIC的IO端口是开漏输出的(见下面具体实现),所以这也带来了IIC的两大优越特性:

  • 线与:同一线上所有设备都推高才为高电平,任一设备拉低就必为低
  • 热拔插:可以带电拔、插总线上的IIC设备

IIC总线拓扑

一次IIC通信的帧结构如下所示,总线上主机发出一个起始信号(’S’);然后发7位从机(Slave)地址和一位读写控制位(0写1读),接着主机释放数据线,等待从机应答;若收到应答,则继续发数据,并且每一字节数据后面都跟一个从机应答;通信最后,主机发停止信号。

阅读更多...

一天速成MSP432

为了备战2021年的全国大学生电子设计竞赛🚀笔者于昨日开始上手TI的MSP432主控并且于今日速成了基础的开发。为了让亲爱的读者们早日脱离苦海,我将在本文中分享:开发环境安装、MSP432架构分析、时钟设置、串口开发、DMA传输和中断(💎一条龙服务)

认识MSP432

在文末有官方文献链接

声明:本文中所有历程都基于MSP432P401R LaunchPad开发板

首先,下图为MSP432R401控制器的总体架构。和STM32对比来看,这个片子架构确实简单,CPU和外设交互只有一对系统总线。外设除了常见的通信口、定时器和存储外,注意到432特色的一些设备:高精度ADC等模拟外设、时钟系统(将在下面专门讨论)和功率控制器。

架构

阅读更多...

模糊PID控制器

前言:经典PID控制器的参数需要人工整定且是定参数,那么聪明的工程师们就想到了自动调整参数的PID控制器,其中使用模糊控制的方式调整参数就是本文中讨论的模糊PID

Why Fuzzy PID controller?

在自动控制领域,PID控制器就是爹一般的存在,基本现在市面上过半的控制系统都能看到它。在之前的一篇文章中已经深入剖析了PID控制器的原理,知道了PID确实可以(粗糙的)解决大部分的需求,但是难免还是存在人工调参麻烦的问题,而且最最最主要的问题就是固定参数的话系统的情况变了效果也变了。


以汽车控制来举例
🚗🚗🚗🚗🚗🚗🚗

阅读更多...
  • Copyrights © 2022-2024 RY.J
  • Visitors: | Views:

请我喝杯咖啡吧~

支付宝
微信