• 最新文章
  • C语言
  • 51单片机开发
  • STM32单片机开发
  • Python入门
  • NumPy矩阵运算
  • SciPy数值计算

STM32单片机开发板实验02:动态数码管实验

控制动态数码管从左至右显示数字 0-7。 数码管是半导体发光器件,用于显示数字、字母、简单图形符号等内容。数码管基本单元是发光二极管,数码管内部由多个发光二级管构成,多个发光二极管在同一时间的不同状态,组合为不同的数字、字母或图形符号。 数码管型号多样,有单位数码管、双位数码管、四位数码管、八位数码管等等,单位数码管仅能显示一个数字、字母或图形符号,多位数码管可以显示多个数字、字母或图形符号。实际

STM32单片机开发板实验01:独立按键实验

通过开发板上的个独立按键控制 LED 开关。 按键是一种电子开关,使用时轻轻按开关按钮就可使开关接通,当松开手时, 开关断开。我开发板上使用的按键及内部简易图如下图所示: 按键管脚两端距离长的表示默认是导通状态,距离短的默认是断开状态,如 果按键按下,初始导通状态变为断开,初始断开状态变为导通。 通常的按键所用开关为机械弹性开关,当机械触点断开 、闭合时,电压信号 如下图所示: 由于机械点的弹性作

51单片机实验1:点亮第一个LED灯

在开始点亮第一个 LED 灯之前,需要做好充分的准备工作,准备过程主要分为硬件准备和软件准备两部分。​ 51 单片机开发板:这是本实验的核心硬件,开发板上集成了 51 单片机芯片、电源电路、复位电路、晶振电路、外设资源等。不同型号的开发板可能在资源配置和接口布局上有所差异,但基本功能是一致的。在选择开发板时,大家可以根据自己的需求和预算进行挑选。​ Keil:这是一款专业的单片机开发集成环境,它提

C++第2课:C语言变量与C++变量

‌C语言‌ 在C89/C90标准中,变量必须在作用域的开头声明,不能在代码中间声明。例如: void func() {     int a = 1;     // 其他代码     int b = 2; // C89中编译错误 } ‌C++‌ C++允许在代码的任何位置声明变量,只要在使用之前声明即可: void func() {     int a = 1;     // 其他代码     in

C++第1课:第一个C++程序

C++以C语言为基础发展而来,最初设计目标是“带类的C”(C with Classes),后续逐步扩展为支持面向对象、泛型编程等多范式语言。C++几乎完整兼容C语言的语法和特性,大部分C程序可不修改(或少量调整)在C++环境下编译运行。 C++和C语言两者共享相同的基本数据类型、运算符、控制结构(如if-else/for/while)和函数调用机制,均支持指针操作和手动内存管理。 C语言是面向过程

C语言嵌入式开发:什么情况下需要使用volatile修饰变量?

用C语言开发嵌入式程序,volatile是很重要的关键字,它的英文愿意是 “易变的”。它的主要作用是告知编译器,被其修饰的变量的值可能会在程序运行过程中,以一种编译器无法预测的方式发生改变,所以编译器在对代码进行优化时,不能对该变量进行常规的优化操作。每次访问该变量时都要直接从内存中读取其真实值,而不是使用寄存器中的缓存值,以确保程序对变量的访问是实时的。​ 假设有一个变量flag,在正常情况下,

C语言嵌入式开发编程篇:typedef与回调函数

C语言中的 ‌typedef‌ 是用于为已有的数据类型定义新名称(别名)的关键字。它并不创建新的数据类型,而是为现有类型提供更易读、更简洁的标识符,从而提高代码的可读性和可维护性。 typedef 的基本语法非常简单,其格式为: typedef 原数据类型 新类型名; 例如:可以为基本数据类型int取一个别名Integer:​ typedef int Integer;​ 为int定义别名后,在后续

C语言嵌入式开发软件架构篇:硬件驱动模块开发

在嵌入式系统里,硬件驱动模块就像一座桥梁,一端连接着硬件设备,另一端连接着上层软件 ,在整个系统中起着承上启下的作用。简单来说,硬件驱动模块是一段程序代码,专门负责与硬件设备进行交互,实现对硬件设备的控制和管理。​ 我们日常使用的各种电子设备,比如手机、智能手表、工业控制器等嵌入式设备,其内部硬件种类繁多,像处理器、传感器、显示屏、通信模块等。每种硬件都有其独特的工作方式和控制方法,如果没有硬件驱

C语言嵌入式开发系统软件架构篇:中断服务程序

中断机制是指单片机在执行主程序时,发生外部事件A,请求单片机迅速处理(中断请求),单片机暂停当前的主程序(中断响应),保存当前断点数据,然后调用事件A的处理程序进行事件响应,事件A处理完成后,主程序恢复断点处的数据,并继续执行主程序。 例如在智能温控系统中,系统中的温度传感器会实时监测环境温度。如果没有中断机制,CPU 就需要不断地查询温度传感器的数据,非常耗费 CPU 的时间和资源,这种方式被称

C语言嵌入式开发系统架构篇:单任务与多任务

所谓“单任务系统”是指系统不能支持多任务并发操作,在同一时间内,系统仅能执行一个任务。。整个系统的运行就像一条有序的生产线,所有操作都按照预先设定的顺序依次执行 。在这个过程中,一个任务从开始执行到结束,期间不会被其他任务打断,只有当前任务完成后,系统才会接着执行下一个任务。 多任务开发,是指在一个系统中,允许同时处理多个任务的开发方式。在多任务开发环境下,系统能够将 CPU 时间合理地分配给各个