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

概述

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

详细

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

1.keil4软件安装

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

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

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

这个地方随便写写就行了

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

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

点击选择 File->License Management

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

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

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

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

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

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

2.CH340驱动安装

步骤1: 安装CH341SER.EXE

步骤2: 查看端口号

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

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

点击:下载/编程

硬件接法:

代码烧写完成后,将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

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

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

步骤2: CH340驱动的安装

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

2.Arduino闪烁灯实验

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

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

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

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

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

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

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

三、总结

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

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

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

四、项目结构图

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

51单片机和Arduino—闪烁灯实现的更多相关文章

  1. 51单片机学习笔记(郭天祥版)(1)——单片机基础和点亮LED灯

    关于单片机型号的介绍: STC89C52RC40C-PDIP 0721CV4336..... STC:STC公司 89:89系列 C:COMS 52(还有51,54,55,58,516,):2表示存储 ...

  2. 51单片机---点亮一个LED灯

    1 程序源码 #include <REGX52.H> `包含51单片机的头文件` sbit led = P0^0; int main(void) { while(1) { led = 1; ...

  3. 基于Systick系统时钟延时的LED闪烁灯

    1.回顾我们的51 单片机编程,当我们需要做系统延迟的时候,最常采用的一种方式就是使用for 循环的空语句等待来实现. 当然,在STM32 里面也可以这么实现.但是在STM32 的Cortex 内核里 ...

  4. 【零基础】入门51单片机图文教程(Proteus+Keil)

    参考资料: https://www.jianshu.com/p/88dfc09e7403 https://blog.csdn.net/feit2417/article/details/80890218 ...

  5. arduino--1s间隔闪烁灯

    初始使用Arduino,写了这么个小功能:1s间隔闪烁灯 void setup() { pinMode(,OUTPUT);//Set 13Pin as OUTPUT } void loop() { d ...

  6. 单片机成长之路(51基础篇) - 006 在Linux下搭建51单片机的开发烧写环境

    在Linux下没有像keli那样好用的IDE来开发51单片机,开发环境只能自己搭建了. 第一步:安装交叉编译工具 a) 安装SDCC sudo apt-get install sdcc b)测试SDC ...

  7. 2017.11.18 手把手教你学51单片机-点亮LED

    In Doing We Learning 在操作中学习.如果只是光看教程,没有实际的操作,对编程语言的理解很空泛,所以决定从单片机中学习C语言. #include<reg52.h>     ...

  8. 51单片机SRF寄存器

    1.21个寄存器介绍        51系列单片机内部主要有四大功能模块,分别是I/O口模块.中断模块.定时器模块和串口通信模块(串行I/O口),如其结构和功能如下图: 图1 51单片机结构和功能图 ...

  9. c语言编写51单片机中断程序,执行过程是怎样的?

    Q:c语言编写51单片机中断程序,执行过程是怎样的? 例如程序:#include<reg52.h>  void main(void)  {   EA=1;      //开放总中断   E ...

随机推荐

  1. html table奇偶行颜色设置 (CSS选择器)

    :nth-child(n) 选择器匹配属于其父元素的第 N 个子元素,不论元素的类型.n 可以是数字.关键词或公式. 下面的例子, 设置表格的奇偶行背景颜色不同:单独设置表格的第1列背景颜色不同. & ...

  2. Android Animatioin总结

    一.动画分类 1.  View Animation (Tween动画)  执行一系列简单的转换.      针对 视图对象内容进行移动,放大,缩小以及产生透明度的变化等四种动画操作.仅针对视图对象内容 ...

  3. Go语言之进阶篇http服务器获取客户端的一些信息

    1.http服务器获取客户端的一些信息 示例: package main import ( "fmt" "net/http" ) //w, 给客户端回复数据 / ...

  4. C#中的集合(HashTable与Array类)【转】

    一.Array类 1.Array类的属性 序号 属性 & 描述 1 IsFixedSize 获取一个值,该值指示数组是否带有固定大小. 2 IsReadOnly 获取一个值,该值指示数组是否只 ...

  5. MySQL集群的几种方案

    组建MySQL集群的几种方案LVS+Keepalived+MySQL(有脑裂问题?但似乎很多人推荐这个)DRBD+Heartbeat+MySQL(有一台机器空余?Heartbeat切换时间较长?有脑裂 ...

  6. C# 源码 AForge.NET

    AForge.NET是一个专门为开发者和研究者基于C#框架设计的,他包括计算机视觉与人工智能,图像处理,神经网络,遗传算法,机器学习,模糊系统,机器人控制等领域.这个框架由一系列的类库组成.主要包括有 ...

  7. CodeForces 569B Inventory 货物编号

    原题: http://codeforces.com/contest/569/problem/B 题目: Inventory time limit per test1 second memory lim ...

  8. WebRTC学习之九:摄像头的捕捉和显示

    较新的WebRTC源代码中已经没有了与VoiceEngine结构相应的VidoeEngine了,取而代之的是MeidaEngine.MediaEngine包括了MediaEngineInterface ...

  9. ASP入门(十五)- Global.asa

    Global.asa 文件是一个可选文件,它可包含被 ASP 应用程序中每个页面访问的对象.变量和方法的声明.所有合法的浏览器脚本都可以在 Global.asa 中使用. Global.asa 文件只 ...

  10. javascript获取时间差

    function GetDateDiff(startTime, endTime, diffType) { //将xxxx-xx-xx的时间格式,转换为 xxxx/xx/xx的格式 startTime ...