单片机51
菜鸟学习
贩卖星辰点点
愿望!菜鸡变大佬
展开
-
普中科技51纯代码(按键)
1.独立按键控制灯#include <reg51.h>typedef unsigned char u8;typedef unsigned int u16;sbit led1=P0^0;sbit k1=P2^7;void delay(u16 i){ while(i--);}void keyplay(){ delay(2000); if(k1==0) { led1=~led1; } while(!k1);}void main(){原创 2021-11-10 20:59:19 · 198 阅读 · 0 评论 -
普中科技51纯代码(数码管)
数码管1.番外(蜂鸣器)1.番外(蜂鸣器)#include <reg51.h>typedef unsigned char u8;typedef unsigned int u16;sbit beep=P2^7;//蜂鸣器的名字void delay(u16 i){ while(i--);}void main(){ while(1) { beep=~beep; delay(200);//这里的数字可以改变蜂鸣器的声音尖锐程度 } }...原创 2021-11-10 20:58:50 · 1254 阅读 · 0 评论 -
普中科技51纯代码(流水灯)
流水灯1.点亮一个灯2.一个灯闪烁3.流水灯4.灯左右来回流水5.左右来回不定位平移1.点亮一个灯#include <reg51.h>sbit led=P2^0;void main(){ while(1) { led=0; } }2.一个灯闪烁#include <reg51.h>typedef unsigned char u8; //unsigned char在后边就被定义为u8typedef unsigned int u16;sbit原创 2021-11-10 20:58:12 · 1139 阅读 · 0 评论 -
小车代码合集(与前章小车的代码不同)
1.超声波#include <REGX52.H>#include <intrins.h>sbit Trig1 = P1^0 ;sbit Echo1 = P1^1 ;sbit Trig2 = P1^2 ;sbit Echo2 = P1^3 ;sbit IN1 = P2^0;sbit IN2 = P2^1;sbit IN3 = P2^2;sbit IN4 = P2^3;sbit ENA = P2^4;sbit ENB = P2^5;voi原创 2021-06-03 19:47:00 · 237 阅读 · 0 评论 -
1602液晶显示屏
1.串口连接大概:2.LCD1602-----L=LiquidArduino大致使用流程:先调用一个Arduino内置函数,定义引脚,把引脚填入函数,然后按照格式设置一下液晶的参数,然后固定格式填写你想要显示的东东!原创 2021-06-03 19:22:53 · 1148 阅读 · 0 评论 -
舵机
1.舵机是一种位置(角度)伺服的驱动器,适用于那些需要角度不断变化并可以保持的控制系统。在高档遥控玩具,如飞机、潜艇模型,遥控机器人中已经得到了普遍应用2.仿真3.代码#include<reg52.h> //此文件中定义了单片机的一些特殊功能寄存器unsigned char count;//0.5ms次数标识sbit pwm=P3^0;unsigned char jd;//角度标识void Time0_Init()//定时器初始化{ TMOD=0x01;//定时器0工作在原创 2021-05-23 12:04:09 · 475 阅读 · 2 评论 -
小车(蓝牙,红外,超声波,循迹)
开篇前言:小车这一块,以下是我个人认为要解释的部分。1–.波特率-------这是一个用来两个东西之间传输数据的,属于电子类专业名词,我们这次学习小车,添加的模块例如蓝牙和超声波,都需要数据传输,所以代码中会定义这个东西。2–.我这次整理的是每个模块单独使用,如果想做一个整合的小车,就是把我以下整理的代码合到一块,单独烧录的话,单片机会自动覆盖上一个代码,所以在模块学习完后,还是建议大家可以试试,自己做出来的真的好玩。3–.小车这一块,我会把我都个人理解写出来,希望能帮助到大家的学习,如果有什么错误,原创 2021-05-23 11:51:03 · 2241 阅读 · 3 评论 -
交通灯
1.代码#include<reg51.h> // 对单片机的口进行了定义#define uint unsigned int //定义#define uchar unsigned char //定义uchar code a[10]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10};//段码组合,共阳极uchar code b[4]={0x01,0x02,0x04,0x08}; //位码组合//相当于数码管个位和十位的原创 2021-05-23 00:24:04 · 189 阅读 · 1 评论 -
点阵
1.点阵管脚示意图:2.仿真3.代码(小爱心)#include <reg51.h>#include <intrins.h>int a[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};int b[8]={0x27,0xFD,0x33,0x2D,0xFD,0x23,0x69,0xB5};void delay(unsigned char i){ unsigned char j,k; for(j=i;j>0;j--)原创 2021-05-22 23:33:39 · 489 阅读 · 0 评论 -
烧录
1.提取码:q3zj 烧录软件链接复制这段内容后打开百度网盘手机App,操作更方便哦–来自百度网盘超级会员V5的分享2.刚开始学习的话烧录代码,一般有两个方向,一是自己焊接的,可以用下载器连接下载,连接如图:(烧录的时候,在软件上点击下载/编程后,要断开焊板上的电源,重新连接。)3.第二个是单片机开发盒子,直接烧录即可。(烧录软件的应用可上网搜索查看,都有详细讲解,这里就不多说了。)...原创 2021-05-21 09:36:57 · 206 阅读 · 0 评论 -
矩形键盘
1.数码管扫描:(输出扫描)-----从第一位到最后一位,快速循环,最终实现数码管同时显示的效果。矩形键盘扫描:(输出扫描)----按行或列进行读取,然后快速循环,最终实现所有按键同时检测的效果。共性:节约I/O口2.键盘显示0~16#include <reg52.h>#define uchar unsigned char //宏定义#define uint unsigned int //宏定义#include<intrins.h> //包含_crol_函数所在原创 2021-05-21 09:23:17 · 312 阅读 · 0 评论 -
子函数
子函数:前面写的代码中,例如delay函数,就是将其抽离出来进行定义一个单独的模块,可以让其再函数中随时调用,目的是为了达到代码的复用和优化程序结构。void 函数名(形参:unsigned char x) //其中x为自定义变量{ 函数体}//形参其实是一个列表,可以定义多个变量,中间用逗号隔开即可,例如void Function(unsigned char x,unsigned char y)//为了防止两个变量性质不一样,所以建议每次都把unsigned char加上原创 2021-05-20 11:44:14 · 1344 阅读 · 0 评论 -
按键
点亮一个led灯:#include <reg52.H>sbit led1=P0^0;void main(){ while(1) { if(P3_1==0) { led1=0; } else { led1=1; }P3-0,是按键的定义,因为他的头文件所含的自定义,便是这个。(uVision4/5,软件中,右击头文件打开,可进行查看)按键长按点灯#include <REGX52.H>sbit led1=P0原创 2021-05-18 22:03:17 · 407 阅读 · 2 评论 -
点亮数码管
一位数码管:#include <reg52.h>code unsigned code table[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};//定义数码管显示0~9void delay() //子函数{ int i,j; for(i=0;i<300;i++) for(j=0;j<300;j++);}void main() //主函数{ int m; //定义一个变量原创 2021-05-20 13:27:02 · 659 阅读 · 0 评论 -
数码管
一位数码管1.顺时针,从头顶开始A~F定义。2.实物,右下角开始,逆时针旋转从1~10。3.观看上图对比:1-.(小横线对应二极管负极,小三角的大头对应二极管正极,如图所示即上负下正。)2-.数码管共阳,二极管的正极对应引脚3与8;数码管共阴,二极管的负极对应引脚3与8,其余如下图所示。共阳 --------阳极接地,阴极1亮0灭共阴---------阴极接vcc,阳极0亮1灭四位数码管大致含义一样,需要哪个亮,连接哪一个公共引脚,例如:12,9,8,6...原创 2021-05-19 23:36:22 · 1153 阅读 · 2 评论 -
51常用语句
1.// 注释 /**/多注释2.51代码输出高低电位,要求进制转换,16进制中,0x是一个前缀,代表后边是十六进制3.#include<INTRINS.H>部分空代码的定义头文件4.常用语句:+1. if(逻辑表达式){语句体1}else{语句体2}如果逻辑表达式成立,执行语句体1,否则语句体2.+2. for(初始化;逻辑表达式;更改条件) { 循环体; }先执行初始化,在判断逻辑表达式,成立则执行循环体,执行后更原创 2021-05-18 14:35:07 · 472 阅读 · 2 评论 -
流水灯
#include <REGX51.H>#define uint unsigned intvoid delayms(amx);void main(){ while(1) { P0=0x7F; delayms(500); P0=0xBF; delayms(500); P0=0xDF; delayms(500); P0=0xEF; delayms(500); P0=0xF7; delayms(500); P0=0xFB; delayms(500); P0原创 2021-05-17 21:54:15 · 432 阅读 · 5 评论 -
51基础代码认知
小菜鸡一个,开始傻瓜式学习单片机。从网上各种寻找视频,资料进行学习。不定时分享自己的学习整理,可能会有错误,也可能有不全或者是乱,但是希望读者可以提出意见,一起进步。今日份分享:单片机代码基础认知1.PWM控制2.sfr P0=0x80;—其中srf是关键字,它的作用是定义一个单片机特殊功能寄存器3.sbit LED=P0^0;—sbit就是对刚才所说的SFR里面的一个开关其中的一个进行定义4.code—¥单片机中使用的常量unsigned cahr code a=0;¥a的数值会储存到fla原创 2021-05-17 09:39:43 · 265 阅读 · 3 评论