适用于学习了TIM定时器跟GPIO输入(按键)的新手作为练习的综合项目!一、按键长短按功能:长短按四个按键分别点亮八个灯一.整体工作流程这段代码用于检测和处理四个不同按键的嵌入式系统程序,通常用于例如微控制器等硬件上。代码的主要功能是检测哪个按键被按下以及按键被按下的持续时间,并根据这些信息执行不同的动作。1.1定义部分定义按键标志:#definekey1_flag1等定义是为了方便识别哪个按键被按下。这些标志用于在代码中表示不同的按键。定义按键读取的宏:#definekey1HAL_GPIO_ReadPin(GPIOB,GPIO_PIN_0)等定义是用于读取特定硬件引脚的状态。在这里,它们用
一、概念模数转换器(ADC):它将模拟信号转换为单片机能够处理的数字信号。在很多应用中,比如温度传感器、压力传感器等,信号最初都是模拟形式的。ADC读取这些模拟信号,然后将它们转换为数字形式,以便单片机可以读取和处理。数模转换器(DAC):它执行相反的操作,将数字信号转换为模拟信号。这在需要控制模拟设备,如音频设备、某些类型的马达控制器等方面非常有用。通过DAC,单片机可以产生精确的模拟输出信号。二、ADC与DAC常用的函数1、ADC常用的函数1.HAL_StatusTypeDefHAL_ADC_Start(ADC_HandleTypeDef*hadc)举例:HAL_ADC_Start(&ha
I2C应用一、M24C02芯片一、概念M24C02是一种EEPROM(ElectricallyErasableProgrammableRead-OnlyMemory)芯片,它通过I2C(Inter-IntegratedCircuit)总线接口与其他设备进行通信。I2C是一种广泛使用的串行通信协议,特别适用于低速通信,在多个设备间传输数据时只需要两条线:数据线(SDA)和时钟线(SCL)。1.M24C02的特点:存储容量:M24C02提供256字节(2Kb)的存储空间。非易失性:作为EEPROM,M24C02即使在断电的情况下也能保持存储的数据。电子擦除和编程:允许通过电子方式进行数据的擦除和重
数据可视化方法写在前面山脊图优点缺点实现matlabpython气泡矩阵图实现matlabpython后续写在前面最近开始更新一个新的系列科研绘图,在同一个竞赛下,大家都近乎相同的解题思路下。之所以能出现一等二等三等奖的区别很大部分都在于结果的可视化,为了能更好地帮助大家进行可视化,近期将专门推出一个可视化板块,推出各种好看实用的可视化图形。山脊图也称为JoyPlot。它是一种数据可视化的方法,用于展示一个或多个组的数据分布。在山脊图中,每个组的数据分布通过平滑的密度曲线表示,这些曲线沿垂直轴堆叠排列,从而产生类似山脊的视觉效果。这种图表尤其适用于比较不同组的数据分布情况。山脊图的制作基于核密
前言:数模排版通常面临两个选择:Word、latex,但是许多人对latex并不熟悉,就算下载了别人分享的模板,还有一些小细节不会。在此,我分享latex排版时常用语法。本人还是觉得latex会用了是很方便的,节约排版的时间,尤其是图、表、公式比较多的时候,latex可以自动标号。推荐小白使用overleafhttps://www.overleaf.com/。数学建模latex速成入门1.引入包库2.基础知识3.大标题+段行标号大标题标号4.插入图片5.表格6.公式7.引用参考文献1.引入包库就像Python、C语言一样,latex使用某些语法函数时也需要导包\usepackage{geome
1.指针是什么C语言指针是一种特殊的变量,用于存储内存地址。它可以指向其他变量或者其他数据结构,通过指针可以直接访问或修改存储在指定地址的值。指针可以帮助我们在程序中动态地分配和释放内存,以及进行复杂的数据操作。在C语言中,指针操作是一项重要的基本操作,掌握指针的使用对于编写高效的C语言程序非常重要。说通俗点:1.指针是内存中一个最小单元的编号,也就是地址2.平时口语中说的指针,通常指的是指针变量,是用来存放内存地址的变量总结:指针就是地址,口语中说的指针通常指的是指针变量。(把内存单元的编号就称为地址(地址也叫指针)指针其实就是地址,地址就是编号指针就是内存单元的编号)指针和指针变量:
文章目录01《深入理解计算机系统》02《算法导论》03《计算机程序的构造和解释》04《数据库系统概念》05《计算机组成与设计:硬件/软件接口》06《离散数学及其应用》07《组合数学》08《斯坦福算法博弈论二十讲》清华、北大、MIT、CMU、斯坦福的学霸们在新学期里要学什么?今天我们来盘点一下那些世界名校计算机专业采用的教材。01《深入理解计算机系统》(原书第3版)(原书第3版)(原书第3版)作者:兰德尔E.布莱恩特大卫R.奥哈拉伦作者:兰德尔E.布莱恩特大卫R.奥哈拉伦作者:兰德尔E.布莱恩特大卫R.奥哈拉伦推荐理由:卡内基-梅隆大学、北京大学、清华大学等国内外众多知名高校选用指定教材。被誉为
Node.js零基础教程,nodejs新手到高手文章目录Node.js零基础教程,nodejs新手到高手先认识NodeJs和JavaScript区别01-Buffer(缓冲器)一、概念二、特点三、使用3.1创建Buffer3.2Buffer与字符串的转化3.3Buffer的读写02-fs模块一、文件写入1.1writeFile异步写入1.2writeFileSync同步写入1.3appendFile/appendFileSync追加写入1.4createWriteStream流式写入1.5写入文件的场景二、文件读取2.1readFile异步读取2.2readFileSync同步读取2.3cre
今天继续计算机速成课CrashCourse的系列讲解。更多技术文章,全网首发公众号“摸鱼IT”锁定-上午11点-,感谢大家关注、转发、点赞!计算机速成课CrashCourse-27.3D图形(qq.com)27.3D图形在过去五集,我们从基于电传打字机的命令行界面,讲到图形怎么显示到屏幕上,再到上集的图形用户界面(GUI),以及图形界面的美味。之前的例子都是2D,但我们生活的世界是3D的,所以今天,我们讲3D图形的基础知识,以及如何渲染3D图形到2D屏幕上。24集中说过可以写一个函数,从A到B画一条线,通过控制A和B的(X,Y)坐标,可以控制一条线。在3D图像中,点的坐标不再是两点,而是三点X
引言都是我手欠非要报什么python的计算机二级,现在好了假期不但要冲C艹,还要学个python,用了几天的时间速成了一下python的基础语法,其实在学会C的基础上,py学起来是非常的快啊。这篇博客呢,建议有一定语言基础的朋友来看。没有接触过编程的朋友可以先看看python相关书籍或视频从0到1学,这里我推荐蟒蛇的python,浅显易懂。那么就开始接下来的正文内容吧。Python环境配置想要进行Python开发,就要搭建好Python的环境需要安装的环境主要是两个部分:运行环境:Python开发环境:Pycharm安装Python(1)找到官方网站认准这个英文标了官方的网站,别的什么中文版官