51单片机和Arduino—闪烁灯实现

51单片机和Arduino—闪烁灯实现

 
 

技术:51单片机学习、Keil4环境安装、Arduino环境安装、闪烁灯教程
 

概述

本文提供51单片机、Arduino单片机入门软件安装和一些需要使用的软件介绍,为后续单片机、嵌入式开发做准备。本文还对LED闪烁代码进行讲解,让初学者更好的理解51单片机和Arduino单片机,后续也会发布单片机对传感器的使用文章

详细

一、C51环境安装和点灯测试

1.keil4软件安装

步骤1: 到百度云盘链接下载以下内容

1544682461432015417.png

步骤2: 安装Keil4,打开C51V900.exe

 

1544681298632044156.png

一直下一步即可,安装路径选自己想要放到的地方(英文路径)

1544681324942086567.png

这个地方随便写写就行了

 

步骤3: 使用注册机更改keil4使用期限

右击软件(Keil uVision4),点击‘以管理员身份运行’

点击选择 File->License Management

1544681332409033894.png

复制右上角的CID,我这里的CID是:CW2MR-IHY4F

然后打开下载好的注册机KEIL_Lic.exe

图片4.png

把你复制的CID黏贴到CID处,点击Generate即可

然后复制生成的密匙,我这里是:ZBDY8-3AVZR-LY4V3-AFJT8-NG090-R07NX

放回刚刚的New License ID Code(LIC)中,点击Add LIC,生成这样的效果:

1544681356002047993.png

这样就完成了对软件使用期限的更改了

2.CH340驱动安装

步骤1: 安装CH341SER.EXE

 

图片6.png

图片7.png

步骤2: 查看端口号

查看端口号的方法,右击电脑->属性->设备管理器

图片8.png

3.程序烧入软件STC-ISP的使用
步骤1: 打开stc-isp-15xx-v6.75.exe
 
4. 51单片机点灯实验
步骤1: 打开stc-isp-15xx-v6.75.exe
步骤2: 更改单片机型号:STC89C52RC/LE52RC

串口号选择:USB-SERIAL CH340 (COMx)这边COM几会不一样的

点击:打开程序文件,找到C51_LED目录下的C51_LED.hex

点击:下载/编程

1544681410877070085.png

硬件接法:

图片14.png

代码烧写完成后,将LED灯正极接VCC,负极接到P0^0就可以看到闪烁现象了!!!

5. 51单片机闪烁灯代码

#include "reg52.h"    //定义头文件
#include <intrins.h>

sbit led=P0^0;   //将单片机的P0.0端口定义为led
void delay1s(void)   //误差 0us
{
    unsigned char a,b,c;
    for(c=167;c>0;c--)
        for(b=171;b>0;b--)
            for(a=16;a>0;a--);
    _nop_();  //if Keil,require use intrins.h
}

void main()
{

		led=0;	//P0.1端口设置为低电平
		delay1s();
		led=1;	//P0.1端口设置为高电平
		delay1s();		
}

二、android环境安装和闪烁灯测试

1.Arduino软件安装

步骤1: 安装arduino-1.8.7-windows.exe

1544681468500094998.png

一直下一步即可,安装路径选自己想要放到的地方(英文路径)

需要你安装驱动时,点击安装即可

步骤2: CH340驱动的安装

与上面操作一样,已经安装了就不用再安装一次了

2.Arduino闪烁灯实验

打开我已经写好的测试代码Ino_LED.ino

点击工具->端口,选择你的端口号,这里我是COM3

图片15.png

查看端口号的方法,上面有介绍,不懂的回去看看!

点击:验证,查看你的代码是否有问题

1544681486840050167.png

点击:上传,将你的代码烧进Arduino中

1544681495599074145.png

连接LED负极到13管脚,正极到VCC,看看你的现象吧!!!

没错 ——> 你将看到闪烁的灯!!!

 

 

三、总结

恭喜入坑,后面还有更多的教程等着你,谢谢你的支持!!!

后续也加入了对传感器的学习,感兴趣的请继续支持我,谢谢!!! 

干货已经准备好了,软件安装包和一些软件过大,需要到百度云盘下载哦!!!

 

四、项目结构图

 

图片16.png

注:本文著作权归作者,由demo大师发表,拒绝转载,转载需要作者授权

转载于:https://www.cnblogs.com/demodashi/p/10503273.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/101059.html原文链接:https://javaforall.net

(0)
上一篇 2021年7月2日 下午1:00
下一篇 2021年7月2日 下午2:00


相关推荐

  • webGoat实验

    webGoat实验http netsecurity 51cto com art 201108 287651 htmhttp sebug net node t 38

    2026年3月20日
    4
  • 多线程案例:生产者和消费者

    多线程案例:生产者和消费者

    2021年5月6日
    126
  • 雷达信号处理基础 ch1 note1

    雷达信号处理基础 ch1 note11 4 雷达信号处理的共同主线影响雷达检测 跟踪和成像的因素 目标 环境和雷达自身的特性 物体反射回波的方式最基本最重要的信号质量测度 SIR 和分辨率 基本思想 相干和非相干累积 目标相位历程建模 带宽扩展和最大似然估计信干比离散信号 x n x n x n 由期望信号 s n s n s n 和噪声 w n w n w n 组成 x n s n w n x n s n w n x n s n w n 信干比 信噪比 SIR 定义为期望信号的功率与干扰信号的功率之比 有些情况会使用

    2026年3月26日
    2
  • 【js】理解普通函数和箭头函数的区别点

    【js】理解普通函数和箭头函数的区别点普通函数在 es5 中就有了 箭头函数是 es6 中出现的函数形式 当然也可以继续用普通函数 普通函数大家知道 形式基本一致来看看箭头函数 开发时根据实际情况可以省略一些东西单条处理可以省略 return 和 大括号 单个参数可以省略 小括号 箭头函数不能作为构造函数不能 new 会报错箭头函数不绑定 arguments 但是可使用 rest 参数这是普通函数 arguments 可以使用

    2025年7月14日
    2
  • OpenTracing 详解

    OpenTracing 详解OpenTracing 于 2016 年 10 月加入 CNCF 基金会 是继 Kubernetes 和 Prometheus 之后 第三个加入 CNCF 的开源项目 它是一个中立的 厂商无关 平台无关 分布式追踪的 API 规范 提供统一接口 可方便开发者在自己的服务中集成一种或多种分布式追踪的实现 本文讲一讲 OpenTracing 的来龙去脉 以及在容器化和微服务盛行的今天 为什么分布式追踪显得格外有用 DistributedT 什么是 Tracing 图片来源 Metrics t

    2026年3月16日
    2
  • Mac安装并使用telnet命令操作

    Mac安装并使用telnet命令操作热门精选文章 更多技术干货 微信搜索公众号 爱笑的架构师 回复数字 666 获取大量免费技术资料 都是经典中的经典 自从 mac 系统升级后 就无法使用 telnet 但使用 ping 有时又不够准确 因此寻找一些可以使用 telnet 的操作方式 brewinstallt 在已安装 brew 的情况下 使用上述命令即可安装 telnet 但我操作的时候有报错 报错信息如下 gt brewinstallt Error Thefo

    2026年3月18日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号