
51单片机学习笔记
51单片机学习笔记,笔记内容来源:江科大51单片机
小白今天也很酷
小白的成长之路,分享所学,记录成长。
展开
-
51智能小车(双轮)
前几天接了个小单子,是一个基于51单品机的作品,发现自己对小车的认识还是不太🆗。也算是完成了任了的;欢迎各位小伙伴来多多交流,大家一起进步。最后有需要单片机课程设计的小伙伴滴滴我哦(有偿)。企鹅:2397746994。原创 2021-10-03 18:15:09 · 2186 阅读 · 1 评论 -
c51单片机光电门测反应时间(实战小项目)
第一步:准备材料(光电门)也叫测距模块产品用途:广泛用于电机转速检测,脉冲计数,位置限位等。模块特色: 1、使用进口槽型光耦传感器,槽宽度 5mm。 2、有输出状态指示灯,输出高电平灯灭,输出低电平灯亮。 3、有遮挡,输出高电平;无遮挡,输出低电平。 4、比较器输出,信号干净,波形好,驱动能力强,超过 15mA。 5、工作电压 3.3V-5V 6、输出形式 :数字开关量输出(0 和 1) 7、设有固定螺栓孔,方便安装 8、小板 PCB 尺寸:3.2cm x 1..原创 2021-08-20 20:16:56 · 4991 阅读 · 5 评论 -
51单片机PWM(电机调速)这个可以用在智能小车的调试
1.直流电机介绍直流电机是一种将电能转换为机械能的装置。一般的直流电机有两个电机,当电机正接时电机正转,反之亦然2.电机驱动电路第一种只能单向转向,第二种是可以正反转(常用第二种)3.PWM介绍1.PWM既是脉冲宽度调试,在具有惯性的系统中,可以通过一系列脉冲宽度进行调式,来等效的获取需要的模拟参量,常用于电机控速,开关电源等领域2.PWM重要参数:频率=1/Ts 占空比=Ton/Tsn 精度=占空比变化步距4.定时器产生PWNM的方法...原创 2021-08-18 17:15:32 · 3369 阅读 · 2 评论 -
51单片机温度报警器(可以设置上下限)
这个章节有点小复杂然后文章的末尾我会放连接开发前准备DS18B20一个(温度传感器)51单片机板子(这里我用的是普中的板子)话不多说直接上代码吧main.c#include <REGX52.H>#include "LCD1602.h"#include "DS18B20.h"#include "Delay.h"#include "AT24C02.h"#include "Key.h"#include "Timer0.h"#include "Buzzer.H"原创 2021-08-17 14:13:59 · 9213 阅读 · 20 评论 -
利用51单片机霍尔水流量传感器开发水流统计水流量报警(LCD1602显示)
开发前的准备:LCD1602一块51单片机开发板 一块(这里我用的是普中的板子)霍尔水流量传感器一块(红色接5V黑色接GND黄色是数据传接口)霍尔传感器流量经验公式:Q=(F+3)/8.1 Q表示流量...原创 2021-08-14 21:10:29 · 4851 阅读 · 12 评论 -
DS1302时钟(进阶版)可调日期和时间等
main.c#include <REGX52.H>#include "LCD1602.h"#include "DS1302.h"#include "Key.h"#include "Timer0.h"unsigned char KeyNum,MODE,TimeSetSelect,TimeSetFlashFlag;void TimeShow(void)//时间显示功能{ DS1302_ReadTime();//读取时间 LCD_ShowNum(1,1,DS1302_Time[原创 2021-08-12 10:41:58 · 4971 阅读 · 2 评论 -
DS1302时钟(显示时间,不可调)
DS1302.H```c在这里插入代码片#define _DS1302_H__extern unsigned char DS1302_Time[];void DS1302_Init(void);//初始化void Ds1302_WriteByte(unsigned char Command,Data);unsigned char DS1302_ReadByte(unsigned char Command);void DS1302_SetTime(void);//设置时间void.原创 2021-08-12 10:04:30 · 2057 阅读 · 1 评论 -
c51单片机DS1302时钟知识点整理
DS1302芯片引脚定义和应用电路开发版原理图寄存器定义分别记录秒分时天数等原创 2021-08-11 12:45:14 · 231 阅读 · 0 评论 -
c++课程设计个人通讯录包含指针等(无文件)
#include<iostream>#include<string>#define MAX 1000using namespace std;//通讯录管理系统struct Person{ string name;//姓名 int sex;//性别 int age ;//年龄 string Phone;//号码 string arr;//地址};struct Arrerssbooks//通讯录地址{ struct Person peroArray[ M原创 2021-08-10 14:50:37 · 166 阅读 · 0 评论 -
c51单片机点阵显示动画&图形
C51的sfr和sbit74H595芯片#include <REGX52.H>#include "Delay.h"sbit RCK=P3^5; //RCLKsbit SCK=P3^6; //SRCLKsbit SER=P3^4; //SER#define MATRIX_LED_PORT P0/** * @brief 74HC595写入一个字节 * @param Byte 要写入的字节 * @retval 无 */void..原创 2021-08-09 11:31:47 · 1333 阅读 · 0 评论 -
c51单片机串口通信电脑向单片机发送数据
main.c#include <REGX52.H>#include "UART.H"void Delay(int t){while(--t);}void main(){ UART_Init(); while(1) { } }void UART_Routine() interrupt 4//中断{ if(RI==1) { P2=~SBUF; UART_SendByte(SBUF);原创 2021-08-08 17:00:55 · 2062 阅读 · 2 评论 -
c51串口通信(单片机向电脑端发送数据)
今天发了理论知识接下来为实战项目啦代码献上:main.c#include <REGX52.H>#include"UART.H"/** * @brief 串口初始化。4600bps@12.0000MHZ * @param 无 * @retval 无 */ unsigned char Sec;void Delay(int t){while(--t);}void main(){ UART_Init(); while(1原创 2021-08-08 16:35:24 · 2099 阅读 · 0 评论 -
51单片机串口通信
硬件电路电平标准常见的通信接口相关术语:单片机的UART原创 2021-08-08 13:04:24 · 135 阅读 · 0 评论 -
51单片机实现简易闹钟(包含闹钟功能)
代码段delay.cvoid Delay(unsigned int xms){ unsigned char i, j; while(xms--) { i = 2; j = 239; do { while (--j); } while (--i); }}delay.h#ifndef __DELAY_H__#define __DELAY_H__void Delay(unsigned int xms);#endifmain.c#原创 2021-08-08 11:00:16 · 6261 阅读 · 5 评论 -
C51单片机LCD1602显示密码+实现矩阵密码锁
delay.c#include <REGX52.H>void Delay(int t){ while(--t);}delay.h#ifndef __DELAY__#define __DELAY__void Delay(int t);#endifMatrixKey.c#include <REGX52.H>#include"DELAY.H"/*矩阵键盘扫描KeyNumber 按下按键读取键码1值*/unsigned原创 2021-08-08 09:40:55 · 3308 阅读 · 7 评论 -
C51(矩阵键盘电子密码锁)
代码段#include <REGX52.H>#include"LCD1602.h"#include"DELAY.H"#include"MatrixKey.h"unsigned char KeyNum;unsigned int Password,count;void main(){ LCD_Init();//初始化 LCD_ShowString(1,1,"Passwordid"); while(1) { KeyNum=MatrixK原创 2021-08-07 12:50:34 · 1078 阅读 · 2 评论 -
51单片机智能小车寻循迹代码
小车可以实现循迹(可以过直角,弯路,前进后退等情况以及PWNM调速等)如想了解接线的请私聊作者由于小车的情况比较复杂要考虑的东西很多,有时候接线不合适都跑不起来如果遇到问题请私聊作者话不多说直接上代码吧://以下为代码段#include"reg51.h"#include "intrins.h"typedef unsigned int u16;typedef unsigned char u8;sbit HIN1=P1^4;// P1.0Êä³öpwmsbit H原创 2021-08-05 13:56:22 · 14589 阅读 · 6 评论 -
51单片流水灯,位运算
#include<reg52.h>void delay(unsigned int xms);//延时函数void main(){ int i=0; while(1) { P1 = 0xfe;//1111 1110 for(i=0;i<8;i++) { delay(1000); P2 <<= 1;//P1 = P1<<1; P = P2 | 0x01;// } }}void delay(unsigned in.原创 2021-08-05 10:53:49 · 431 阅读 · 0 评论 -
51单片机红外遥控在LCD1602显示0—9
今天学习了红外遥控,现在来对今天学习的内容来进行管理整理一下Lcd1602在的工作原理以及代码已经在上一篇文章发过啦,还是不理解的小伙伴可以去看看前面的文章。好了开始进入今天的正题~什么是红外遥控:学习这个的话得先了解它得工作原理,在这里我推荐大家去看一下其他博主得博客,那里讲的挺好的,这里我引用的是其他博主的原理图红外遥控系统主要由红外发射装置和红外接收装置构成。红外发射装置主要由键盘电路、红外编码芯片、电源和红外发射电路组成(比如遥控器),如图:红外接.原创 2021-07-26 19:06:06 · 1466 阅读 · 3 评论 -
51单片机lcd1602显示(模块)
假期自己学习了51单片机,今天刚好学到了LCD602,我也开始在csdn中开始了自己的第一篇文章,因为是刚开始学所以难免不会有错误,但是呢,还是希望能和大家一起学习交流一下。简介:作为各类单片机实物设计的常用显示屏,LCD1602是一种专门用于显示字母、数字、符号等点阵式LCD,其1602是指LCD显示的内容为16X2,即可以显示两行,每行16个字符(1个汉字占用2个字符)。这里需要要注意的是lcd1602是不能显示汉字的,它只能显示字母字符。硬件参数:1602使用三条控制线:EN、RW、R原创 2021-07-23 20:56:48 · 6484 阅读 · 0 评论