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—闪烁灯实现的更多相关文章
- 51单片机学习笔记(郭天祥版)(1)——单片机基础和点亮LED灯
关于单片机型号的介绍: STC89C52RC40C-PDIP 0721CV4336..... STC:STC公司 89:89系列 C:COMS 52(还有51,54,55,58,516,):2表示存储 ...
- 51单片机---点亮一个LED灯
1 程序源码 #include <REGX52.H> `包含51单片机的头文件` sbit led = P0^0; int main(void) { while(1) { led = 1; ...
- 基于Systick系统时钟延时的LED闪烁灯
1.回顾我们的51 单片机编程,当我们需要做系统延迟的时候,最常采用的一种方式就是使用for 循环的空语句等待来实现. 当然,在STM32 里面也可以这么实现.但是在STM32 的Cortex 内核里 ...
- 【零基础】入门51单片机图文教程(Proteus+Keil)
参考资料: https://www.jianshu.com/p/88dfc09e7403 https://blog.csdn.net/feit2417/article/details/80890218 ...
- arduino--1s间隔闪烁灯
初始使用Arduino,写了这么个小功能:1s间隔闪烁灯 void setup() { pinMode(,OUTPUT);//Set 13Pin as OUTPUT } void loop() { d ...
- 单片机成长之路(51基础篇) - 006 在Linux下搭建51单片机的开发烧写环境
在Linux下没有像keli那样好用的IDE来开发51单片机,开发环境只能自己搭建了. 第一步:安装交叉编译工具 a) 安装SDCC sudo apt-get install sdcc b)测试SDC ...
- 2017.11.18 手把手教你学51单片机-点亮LED
In Doing We Learning 在操作中学习.如果只是光看教程,没有实际的操作,对编程语言的理解很空泛,所以决定从单片机中学习C语言. #include<reg52.h> ...
- 51单片机SRF寄存器
1.21个寄存器介绍 51系列单片机内部主要有四大功能模块,分别是I/O口模块.中断模块.定时器模块和串口通信模块(串行I/O口),如其结构和功能如下图: 图1 51单片机结构和功能图 ...
- c语言编写51单片机中断程序,执行过程是怎样的?
Q:c语言编写51单片机中断程序,执行过程是怎样的? 例如程序:#include<reg52.h> void main(void) { EA=1; //开放总中断 E ...
随机推荐
- unix时间戳time_t与UTC时区的关系
一般我用C写unix时间戳是这样子的 #include<stdio.h> #include<time.h> void printfDateTimeStr(struct tm * ...
- Doxygen简单经验谈。。。
Doxygen,大名鼎鼎的文档生成工具,被Boost.OpenCasCade等诸多项目作为文档生成的不二人选.人说,才华横溢往往是高深莫测,这句话放在 Doxygen这里显然是不适用的.十八般武艺样样 ...
- Proguard使用最新,最全教程,亲自试验
最近公司有一个项目,是外包项目,由于对方也有技术人员,出于技术上的保密,需要对class文件进行二次处理,于是网上找了好久,只发现Proguard是用的最广泛而且网上资料最多的.由于不是纯JAVA项目 ...
- Twitter雪花算法 SnowFlake算法 的java实现
概述 SnowFlake算法是Twitter设计的一个可以在分布式系统中生成唯一的ID的算法,它可以满足Twitter每秒上万条消息ID分配的请求,这些消息ID是唯一的且有大致的递增顺序. 原理 Sn ...
- .Net程序员玩转Android开发--ListView单击事件
public class ListViewClickActivity extends Activity { private ListView lv; SimpleAdap ...
- jenkins+php+svn快速部署测试环境开发环境快速部署
jenkins 虽然作为java常用的打包部署工具,不过也可以使用在phpweb项目部署管理,前段时间帮公司部署了开发环境与测试环境,简单分享一下. 1.内网web环境搭建lnmp,centos下编译 ...
- 【大数据】下载Windows版本的Redis 转
https://www.cnblogs.com/tommy-huang/p/6093813.html 下载Windows版本的Redis 1.打开官网http://redis.io/点击Downl ...
- apache 错误:The system cannot find the file specified.
在启动apache时出现了以下错误信息 Window日志里也记录了此错误信息 而出现此错误的原因是IIS占用了80端口 停止IIS再重新启动apache即可解决 参考: cannot find ...
- MFC自定义控件如何向父窗口发送自定义消息
自定义了一个控件 class CHtmlEditCtrlEx : public CHtmlEditCtrl 想在这个控件接收到Ctrl+V键盘消息的时候,向该控件所在的窗口发送一个自定义消息.具体 ...
- jssor/slider图片的问题
用jssor/slider这个控件,在显示图片的时候,每张图片都被拉伸到最大的图片的宽度和高度,导致变形,怎么处理? [答案] Yes. With no u="image" ima ...