自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 资源 (2)
  • 收藏
  • 关注

原创 【DSP系列】TMS320F28335——ADC采集

DSP TMS320F28335系列学习,ADC模块的配置

2024-04-27 12:35:27 5502 1

原创 (八)STM32 USART —— 串口通讯

理解各种串口通信接口和电平标准;串口通信的特点;USB 转 串口的原理;STM32 的 USART 的用法,以及衍生出的各种函数;

2023-12-19 12:18:37 1598

原创 (五)STM32 按键输入实验及 GPIO做普通 IO 的注意事项

STM32 的 GPIO 做为输入时如何配置;按键消抖操作; GPIO 中哪些 IO 口不轻易当作普通的IO 来使用

2023-12-16 17:34:22 1069

原创 (四)STM32 操作 GPIO 点亮 LED灯 / GPIO工作模式

STM32 的 GPIO 模式,如何操作 IO 口的输出,输入

2023-12-16 15:21:44 1282

原创 (八)数组和函数实践:扫雷游戏

C语言数组和函数的实际应用

2023-12-14 15:39:32 112

原创 (七)STM32 NVIC 中断、优先级管理及 AFIO 时钟的开启

搞清楚 STM32 的中断是什么;NVIC 嵌套向量中断控制器、EXTI 外部中断/事件控制器是什么;中断优先级分组是什么;AFIO时钟什么时候开启

2023-12-13 14:41:36 2242

原创 (七)函数

重点:数组形式的实参形参、静态库的创建使用、动态库的调用、static 关键词的用法

2023-12-12 15:55:41 869

原创 (六)STM32时钟系统RCC——使用HSE/HSI配置时钟

STM32 时钟系统、端口复用和重映射是什么、修改STM32系统时钟

2023-12-08 23:33:18 2854

原创 (六)C语言数组

C语言数组的学习

2023-12-07 14:45:41 234

原创 (五)分支和循环

C语⾔分支和循环语句的学习

2023-12-04 21:25:05 816

原创 (四)C语言数据类型和变量

C语言中常见的数据类型的认识

2023-12-01 23:04:04 174

原创 (三)C语言常见概念

C语言初级入门该知道的一些常识

2023-12-01 14:37:42 1210

原创 【工具使用】Keil常用的调试操作整理介绍

2、当选择了非0级优化时,调试可能会变得困难,具体表现在断点调试。该按钮是在进入了函数单步调试的时候,有时候你可能不必再执行该函数的剩余部分了,通过该按钮就直接一步执行完函数余下的部分,并跳出函数,回到函数被调用的置。:如果是在C语言窗口中,则是按单条语句执行,与单步调试不同的是,遇到函数不会进入函数内部,而是直接全速运行函数,并跳到下一条语句。但我的Keil软件中无法显示这个视图,并且通过修改系统试图,调试时,点击打开系统视图发生了闪退的现象,目前能想到的原因是:重新安装Keil,安装最新版本。

2023-11-29 16:10:10 10376 4

原创 【工具使用】Keil工具的使用——常用配置介绍

keil工具下的魔术棒,常用功能配置介绍

2023-11-24 20:09:07 6170

原创 (二)Gitee使用方法

Gitee使用教程

2023-11-22 18:00:33 1663

原创 (三)Keil安装芯片包、下载固件库、建立STM32工程模板

安装STM32芯片包、下载STM32固件库、建立STM32工程模板

2023-11-22 14:21:20 18037 5

原创 (二)STM32系统架构及什么是寄存器

了解STM32的设计框架、理解Flash、SRAM、片上外设、搞清楚到底什么是寄存器

2023-11-20 13:49:26 969

原创 (一)认识STM32

初识STM32,了解它的命名规则、资源外设、查看管脚、最小系统的构成。

2023-11-17 14:45:51 755

原创 利用555定时器的双电源电路原理

555定时器的应用

2022-08-17 21:23:42 1293 1

原创 51单片机AD模数转换(SPI通信)

一、AD/DA介绍 AD(AnalogtoDigital):模拟-数字转换,将模拟信号转换为计算机可操作的数字信号,DA (Digital to Analog) :数字-模拟转换,将计算机输出的数字信号转换为模拟信号 AD/DA转换打开了计算机与模拟信号的大门,极大的提高了计算机系统的应用范围,也为模拟信号数字化处理提供了可能。二、硬件电路模型 AD转换通常有多个输入通道,用多路选择开关连接至AD转换器,以实现AD多路复用的目的,提高硬...

2022-03-22 17:07:30 10527

原创 51单片机直流电机调速

一、直流电机介绍 直流电机是一种将电能转换为机械能的装置。一般的直流电机有两个电极,当电极正接时, 电机正转,当电极反接时,电机反转。直流电机主要由永磁体(定子)、线圈(转子) 和换向器组成除直流电机外,常见的电机还有步进电机、舵机、无刷电机、空心杯电机等。二、电机驱动电路①大功率器件直接驱动 ULN2003芯片做驱动或直接搭建器件电路,不能反转②H桥驱动,可以做正反转ULN2003芯片:给0输出1,给1输出0;0是有驱动能力的,1是没有驱动能力的,相当于断开,因...

2022-03-21 16:56:13 5486

原创 51单片机LCD1602液晶显示屏

一、LCD1602介绍 LCD1602 (Liquid Crystal Display)液晶显示屏是一种字符型液晶显示模块,可以显示ASCII码的标准字符和其它的一些内置特殊字符,还可以有8个自定义字符 显示容量: 16x2个字符, 每个字符为5*7点阵二、引脚及电路应用三、内部结构框图通过往DDRAM中写入数据,DDRAM在字模库里找到然后显示在屏幕上,屏幕只能显示16*2,但实际可以显示40*2,厂家其实并没有做出来。四、存储结构往...

2022-03-21 11:43:57 13194 4

原创 51单片机DS18B20温度报警器

主要是对主函数逻辑的编写,主要有两个注意点:①将按键换成定时器扫描,要注意,单总线进行传输时,要关闭定时器中断,传输结束后再打开定时器,所有的单总线都得这样。因为单总线中必须要进行延时操作。如果在延时操作时,中断触发,去执行中断函数中的内容,则单总线的时序就发生了变化,影响到单总线的运行。这就是单总线比较鸡肋的地方。IIC则不会,因为IIC是时钟控制,时钟变化,数据才进行传输。②显示精度的问题:显示小数部分,先化为整数,强制类型转化为长整型(因为整型的范围是65535,小数点乘以10000,用整型可

2022-03-20 19:17:58 2465 4

原创 51单片机DS18B20(单总线)温度读取

一、DS18B20介绍 DS18B20是一种常见的数字温度传感器,其控制命令和数据都是以数字信号的方式输入输出,相比较于模拟温度传感器,具有功能强大、硬件简单、易扩展、抗干扰性强等特点 测温范围: -55°C 到+125°C . 通信接口: 1-Wire (单 总线) 其它特征:可形成总线结构、内置温度报警功能、可寄生供电二、引脚及应用电路VCC表示电路的意思,指的是接入电路的电压;VDD表示器件的意思,指的是器件内部的工作电...

2022-03-20 15:01:22 21459 2

原创 51单片机秒表(定时器扫描按键数码管)

利用定时器对代码的优化①对按键代码的优化之前的按键代码unsigned char Key(){ unsigned char KeyNumber=0; if(P3_1==0){Delay(20);while(P3_1==0);Delay(20);KeyNumber=1;} if(P3_0==0){Delay(20);while(P3_0==0);Delay(20);KeyNumber=2;} if(P3_2==0){Delay(20);while(P3_2==0

2022-03-18 11:31:15 4799 8

原创 51单片机EEPROM(I²C总线通信)AT24C02数据存储

一、存储器介绍补充:(1)易失性存储器/RAM 存储速度特别快但掉电丢失①SRAM :运行速度最快,用于电脑CPU,高速缓存;单片机中的SRAM,定义一个变量就会存在SRAM中,使用触发器做的,存储容量小,成本高。②DRAM :运行速度仅次于SRAM,用于电脑里的内存条,手机里的运行内存,电容做的。(2)非易失性存储器/ROM 存储速度比较慢,但掉电不丢失①Mask ROM:第一代,做出来数据是写好的,只能读不能写。②PROM:第二代,做出来只能写一次,以后不能再更改。..

2022-03-16 20:57:46 10154 1

原创 51单片机可调时钟

通过按键实现设置时钟时间void main(){ LCD_Init(); DS1302_Init(); Timer0Init(); LCD_ShowString(1,1," - - ");//静态字符初始化显示 LCD_ShowString(2,1," : : "); DS1302_SetTime();//设置时间 while(1) { KeyNum=Key();//读取键码 if(KeyNum==1)//按键1用来 来回切换模式 {

2022-03-10 19:22:22 4307 4

原创 51单片机DS1302实时时钟

一、DS1302介绍 DS1302是由美国DALLAS公司推出的具有涓细电流充电能力的低功耗实时时钟芯片。它可以对年、月、日、周、时、分、秒进行计时,且具有闰年补偿等多种功能。 RTC(Real Time Clock):实时时钟,是-种集成电路,通常称为时钟芯片。二、引脚定义与应用电路该电路中没有接备用电池,因此掉电再上电之后是初始化设置的时间。三、操作寄存器的定义及时序定义根据时序图来写代码①首先对DS1302进行引脚定义及初始化设置...

2022-03-10 11:22:45 19125 20

原创 51单片机LED 8*8点阵屏显示动画

通过设置变量,让LED点阵屏一帧一帧的显示,对于显示字的数组,用文字取模软件提取main.c文件#include <REGX52.H>#include "Delay.h"#include "MatrixLED.h"//不加code是存放在RAM中,加code是存放在Flash中,Flash中空间更大,只读不写unsigned char code Animation[]={ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0

2022-03-07 19:39:29 3160 2

原创 51单片机LED 8*8点阵屏显示图形

一、LED点阵屏介绍LED点阵屏由若干个独立的LED组成,LED以矩阵的形式排列,以灯珠亮灭来显示文字、图片、视频等。LED点阵屏广泛应用于各种公共场合,如汽车报站器、广告屏以及公告牌等LED点阵屏分类 按颜色:单色、双色、全彩 按像素:8*8、16*16等(大规模的LED点阵通常由很多个小点阵拼接而成)二、显示原理LED点阵 屏的结构类似于数码管,只不过是数码管把每-列的像素以“8”字型排列而 已 LED点阵屏与数码管一样,有共阴和共阳两种接法,不同的接法对应的电路结构不同 LED点

2022-03-07 15:39:21 5590

原创 51单片机电脑通过串口控制LED灯

Hex模式:底层传输的实际数据文本模式:把数据进行编码,显示ASCII码char字符,带括号的是控制字符,无法显示出来代码UART.c#include <REGX52.H>/** * @brief 串口初始化 * @param 无 * @retval 无 */void UART_Init()//UART串口用的T1定时器,模式是8位自动重装载,//4800bps@12.000MHz{ SCON=0x50; //REN置1,允许单片..

2022-03-05 10:42:05 5028

原创 51单片机串口向电脑发送数据

一、串口的介绍 串口是一种应用十分广泛的通讯接口,串口成本低、容易使用、通信线路简单,可实现两个设备的互相通信。 单片机的串口可以使单片机与单片机、单片机与电脑、单片机与各式各样的模块互相通信,极大的扩展了单片机的应用范围,增强了单片机系统的硬件实力。 51单片机内部自带UART (Universal Asynchronous Receiver Transmitter,通用异步收发器),可实现 单片机的串口通信。二、硬件电路简单双向串口通信有两根通......

2022-03-05 10:33:50 23321 8

原创 51单片机定时器时钟

需要LCD1602.c Timer0.c Delay.cmain.c#include <REGX52.H>#include "Delay.h"#include "LCD1602.h"#include "Timer0.h"unsigned char Sec=30,Min=11,Hour=17;void main(){ LCD_Init(); Timer0Init(); LCD_ShowString(2,3,":"); LCD_ShowString(2,6,":...

2022-03-04 16:31:14 2509

原创 51单片机(中断系统)按键控制LED流水灯模式(2)

一、中断系统中断系统是为使CPU具有对外界紧急事件的实时处理能力而设置的。 当中央处理机CPU正在处理某件事的时候外界发生了紧急事件请求,要求CPU暂停当前的工作,转而去处理这个紧急事件,处理完以后,再回到原来被中断的地方,继续原来的工作,这样的过程称为中断。实现这种功能的部件称为中断系统,请示CPU中断的请求源称为中断源。微型机的中断系统一般允许多个中断源,当几个中断源同时向CPU请求中断,要求为它服务的时候,这就存在CPU优先响应哪一个中断源请求的问题。通常根据中断源的轻重缓急排队,...

2022-03-04 16:18:23 15122 6

原创 51单片机(定时器)按键控制led流水灯模式(1)

一、定时器介绍●定时器介绍:51单片机的定时器属于单片机的内部资源,其电路的连接和运转均在单片机内部完成●定时器作用:(1)用于计时系统,可实现软件计时,或者使程序每隔一固定时间完成一项操作(2)替代长时间的Delay,提高CPU的运行效率和处理速度............二、STC89C52定时器资源 定时器个数: 3个(T0、 T1、T2),T0和T1与传统的51单片机兼容,T2是此型号单片机增加的资源。 注意:定时器的资源和单片机的型号是关联在一起的,...

2022-03-04 14:32:57 5835

原创 51单片机矩阵键盘密码锁

主要是对主函数中逻辑的描述#include <REGX52.H>#include "Delay.h"#include "LCD1602.h"#include "MatrixKey.h"unsigned char KeyNum;unsigned int PassWord,Count;void main(){ LCD_Init(); LCD_ShowString(1,1,"PassWord:"); while(1) { KeyNum=MatrixKey(); i

2022-03-02 15:41:01 1745 4

原创 51单片机矩阵键盘

一、矩阵键盘介绍矩阵键盘可以按行也可以按列扫描在STC89C52芯片中所有的IO口都可以是输入也可以做输出,P1 P2 P3都是弱上拉,P0是开漏输出,但在开发板上已经做了外部上拉电阻和P1 P2 P3一样。IO口都是弱上拉,强下拉,所以按键扫描是可以IO口接IO的,不会发生短路的现象。二、扫描的概念三、代码采用模块化编程,在LCD1602上显示,当哪个按键按下就是显示哪个数字,矩阵键盘按列扫描首先让P1口全部写高,当P13口为0,检测P17 P16 P15 P14口的电

2022-03-02 15:35:53 10955

原创 51单片机LCD1602液晶屏显示

根据厂家提供的LCD1602驱动代码,会直接调用即可,要知道每个函数中的参数代表什么意思。前两位都是代表起始位,第三位代表所显示的内容,第四位代表内容长度#include <REGX52.H>#include "lcd1602.h"#include "Delay.h"int Result=0;void main(){ LCD_Init();// LCD_ShowChar(1,1,'A');// LCD_ShowString(1,3,"Hello");// L..

2022-03-02 13:10:44 2585

原创 51单片机模块化编程

一、传统方式编程:所有的函数均放在main.c里,若使用的模块比较多,则一个文件内会有很多的代码,不利于代码的组织和管理,而且很影响编程者的思路。模块化编程:把各个模块的代码放在不同的.c文件里,在.h文件里提供外部可调用函数的声明,其它.c文件想使用其中的代码时,只需要#include "XXX.h"文件即可。使用模块化编程可极大的提高代码的可阅读性、可维护性、可移植性等。二、模块化编程注意事项:.c文件:函数、变量的定义.h文件:可被外部调用的函数、变量的声明任何自.

2022-02-28 19:35:51 3170 2

原创 51单片机动态数码管显示

动态数码管的显示与静态数码管显示原理相同,但需要对数码管进行 消影为什么要消影?因为程序的运行时,位选 段选 位选 段选 位选 段选因为单片机运行速度很快当下一个位选发生时,上一刻的段选就会发生串位问题到下一个的段选。因此必须要进行消影。解决的办法:位选 段选 延时 清零 位选 段选 延时 清零 位选 段选 延时 清零#include <REGX52.H>unsigned char shumatable[]={0x3F,0x06...

2022-02-25 20:22:32 1104

STM32F103ZET6 工程模板

STM32F103ZET6 工程模板

2023-11-22

51单片机DS18B20程序

51单片机DS18B20程序

2022-05-17

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除