![](https://img-blog.csdnimg.cn/20190918140037908.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
51单片机-从零开始入门
本专栏旨在为零基础的读者介绍51单片机的入门知识。首先,我们将介绍单片机的基本原理、架构和工作方式,并为读者提供所需的工具和软件。接着,我们将逐步介绍51单片机的编程语言和基本语法,如变量、数组、循环和条件语句等。同时,我们还将讲解单片机的输入输出原理和各种传感器的应用,例如温度传感器和光敏传感器。
阿康Obliviate
️努力成为IT男的文艺男 ️喜欢的话点个关注呀
展开
-
51单片机 第十四课:LCD1002模块调试(第五章)
一、代码部分1.main.c代码如下(示例):#include <REGX52.H>#include "LCD1602.h" //包含LCD1602头文件#include "Delay.h" //包含Delay头文件int Result=0;void main(){ LCD_Init(); while(1) { Result++; //Result自增 Delay(1000); //延时1秒 LCD_ShowNum(1,1,Result,3)原创 2021-11-17 15:46:30 · 421 阅读 · 1 评论 -
51单片机 第十三课:模块化编程(第五章)
一、代码部分1.main.c代码如下(示例):#include <REGX52.H>#include "Delay.h" //包含Delay头文件#include "Nixie.h" //包含数码管头文件void main(){ while(1) { Nixie(1,1); //在数码管的第1位置显示1 Nixie(2,2); //在数码管的第2位置显示2 Nixie(3,3); //在数码管的第3位置显示3 Nixie(4,4); //在数码管的第4位置显示原创 2021-11-17 15:24:23 · 617 阅读 · 0 评论 -
51单片机 第十二课:动态数码管显示(第四章)
一、代码部分代码如下(示例):#include <REGX52.H>//数码管段码表unsigned char NixieTable[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};//延时子函数void Delay(unsigned int xms){ unsigned char i, j; while(xms--) { i = 2; j = 239; do { while (--j);原创 2021-11-17 14:32:01 · 445 阅读 · 0 评论 -
51单片机 第十一课:静态数码管显示(第四章)
一、代码部分代码如下(示例):#include <REGX52.H>//数码管段码表unsigned char NixieTable[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};//数码管显示子函数void Nixie(unsigned char Location,Number){ switch(Location) //位码输出 { case 1:P2_4=1;P2_3=1;P2_2=1;break;原创 2021-11-17 14:11:39 · 466 阅读 · 0 评论 -
51单片机 第十课:独立按键控制LED移位(第三章)
一、代码部分代码如下(示例):#include <REGX52.H>void Delay(unsigned int xms);unsigned char LEDNum;//全局变量,初始值默认0void main(){ P2=~0x01; //上电默认LED1点亮 while(1) { if(P3_1==0) //如果K1按键按下 { Delay(20); while(P3_1==0); Delay(20); LEDNum+原创 2021-11-17 13:12:46 · 1502 阅读 · 0 评论 -
51单片机 第九课:独立按键控制LED显示二进制(第三章)
一、代码部分代码如下(示例):#include <REGX52.H>void Delay(unsigned int xms){ unsigned char i, j; while(xms--) { i = 2; j = 239; do { while (--j); } while (--i); }}void main(){ unsigned char LEDNum=0; while(1) { if(P3_1==0) //如果K1按原创 2021-11-17 12:57:36 · 1107 阅读 · 0 评论 -
51单片机 第八课:独立按键控制LED状态(第三章)
一、代码部分代码如下(示例):#include <REGX52.H>void Delay(unsigned int xms){ unsigned char i, j; while(xms) { i = 2; j = 239; do { while (--j); } while (--i); xms--; }}void main(){ while(1) { if(P3_1==0) //如果K1按键按下 { Delay(2原创 2021-11-16 20:53:39 · 652 阅读 · 0 评论 -
51单片机 第七课:独立按键控制LED亮灭(第三章)
一、代码部分代码如下(示例):#include <REGX52.H>void main(){ while(1) { if(P3_1==0 || P3_0==0) //如果K1按键或K2按键按下 { P2_0=0; //LED1输出0,点亮 } else { P2_0=1; //LED1输出1,熄灭 } }}二、原理图总结单片机默认上电为高电平(1),所以控制P3口为低电平(0)即可进行按键的导通。...原创 2021-11-16 20:42:03 · 1335 阅读 · 0 评论 -
51单片机 第六课:LED流水灯Plus(第二章)
一、代码部分代码如下(示例):#include <REGX52.H>void Delay1ms(unsigned int xms); //@12.000MHzvoid main(){ while(1) { P2=0xFE;//1111 1110 Delay1ms(1000); P2=0xFD;//1111 1101 Delay1ms(1000); P2=0xFB;//1111 1011 Delay1ms(100); P2=0xF7;//1111原创 2021-11-16 20:26:58 · 507 阅读 · 0 评论 -
51单片机 第五课:LED流水灯(第二章)
一、代码部分代码如下(示例):#include <REGX52.H>#include <INTRINS.H>void Delay500ms() //@12.000MHz{ unsigned char i, j, k; _nop_(); i = 4; j = 205; k = 187; do { do { while (--k); } while (--j); } while (--i);}void main(){ whil原创 2021-11-16 19:22:02 · 648 阅读 · 0 评论 -
51单片机 第四课:LED闪烁(第二章)
一、代码部分代码如下(示例):#include <REGX52.H>#include <INTRINS.H>void Delay500ms() //@12.000MHz{ unsigned char i, j, k; _nop_(); i = 4; j = 205; k = 187; do { do { while (--k); } while (--j); } while (--i);}void main(){ whil原创 2021-11-16 19:14:20 · 1065 阅读 · 0 评论 -
51单片机 第三课:点亮一个LED(第二章)
一、代码部分代码如下(示例):#include <REGX52.H>void main(){ P2=0xFE; //1111 1110 while(1) { }}二、原理图总结通过控制P2口的高低电平来控制LED的亮灭,高电平LED灭,低电平LED亮。原创 2021-11-16 19:06:42 · 775 阅读 · 0 评论 -
51单片机 第二课:keil的代码字体大小调节(第一章)
一、双击keil uVision 5----Configuration(图标如下图)二、Colors & Fonts----C/C++ Editor files----Font----Size,默认size为10,可以根据自己需求调整,这里设置为16.原创 2021-11-11 20:01:43 · 9015 阅读 · 5 评论 -
51单片机 第一课:keil5工程的建立(第一章)
一、双击keli uVision5,选择prioject----New uVision Project.二、将所有文件命名为keil project里面,再在keil project里面建议若干个子文件夹,如2-1 点亮一个LED,2-2 LED闪烁…(目的是方便以后打开查找想找到代码),文件名随便设置,这里统一为project.三、找到Atmel下面的AT89C52(找对应的单片机型号,我的是STC89C52RC系列,具体型号自己根据情况选择)四、复制启动文件到工程文件夹下,一般选择否即可。原创 2021-11-11 19:49:41 · 6330 阅读 · 0 评论