【单片机】初次实验:Keil51的使用
哔哩哔哩/CSDN/博客园:萌狼蓝天
延时器
delay(int count){
int i,j;
for(i=0;i<count;i++){
for(j=0;j<1000;j++);
}
}
瞧一瞧
题目要求:P0口接八个发光二极管,先让后面四个灯亮,再让前面四个灯亮,循坏
# include <REGX51.H>
delay(int count){
int i,j;
for(i=0;i<count;i++){
for(j=0;j<1000;j++);
}
}
void main(){
while(1){
P0 = 0x0f;
delay(1000);
P0 = 0xf0;
delay(1000);
}
}
完整演示
题目要求:P1口接八个灯,从右往左依次亮
创建项目





编写代码
# include <REGX51.H>
# include <intrins.h>
unsigned char pem;
delay(int count){
int i,j;
for(i=0;i<count;i++){
for(j=0;j<1000;j++);
}
}
void main()
{ pem = 0x01;
while(1){
P1=pem;
pem = _crol_(pem,1);
delay(1000);
}
}
ctrl + s 保存
编译调试




退出调试模式
再点一次debug

做一做
让灯从右往左依次亮
调试可知,
亮1个灯:0x01
亮2个灯:0x02
亮3个灯:0x07
亮4个灯:0x0F
亮5个灯:0x1F
……
# include <REGX51.H>
# include <intrins.h>
unsigned char pem;
unsigned char sum;
void delay(int count){
int i,j;
for(i=0;i<count;i++){
for(j=0;j<1000;j++);
}
}
void main()
{
pem = 0x01;
sum = 0x01;
while(1){
P1=sum;//P1初始值是0x01
pem = _crol_(pem,1);//左移一位。这是负责计算每个位置亮灯时的值(只亮这个位置,其他位置不亮灯的时候的值)
sum+=pem;//统计值
delay(1000);//延时
if (sum == 0xFF) {
P1 = 0xFF;//手动亮灯
delay(1000);//延时,让效果显示
//重置状态
pem = 0x01;
sum = 0x01;
}
}
}
【单片机】初次实验:Keil51的使用的更多相关文章
- C51单片机中断实验
实验要求: 要求通过中断方式检测有无按键 判断哪个按键(编号0-9),并且在数码管上显示对应的0-9 代码部分 #include<reg51.h> char led_mod[]={0x3f ...
- 单片机成长之路(avr基础篇)- 001 ISP与IAP的区别
ISP(In-System Programming)在系统可编程,指电路板上的空白器件可以编程写入最终用户代码, 而不需要从电路板上取下器件,已经编程的器件也可以用ISP方式擦除或再编程.IAP(In ...
- 51单片机和Arduino—闪烁灯实现
技术:51单片机学习.Keil4环境安装.Arduino环境安装.闪烁灯教程 概述 本文提供51单片机.Arduino单片机入门软件安装和一些需要使用的软件介绍,为后续单片机.嵌入式开发做 ...
- 20182324 实验一《Linux基础与Java开发环境》实验报告
20182324 2019-2020-1 <数据结构与面向对象程序设计>实验1报告 课程:<程序设计与数据结构> 班级: 1823 姓名: 殷宇豪 学号: 20182324 实 ...
- 单片机ISP、IAP和ICP几种烧录方式的区别
单片机ISP.IAP和ICP几种烧录方式的区别 玩单片机的都应该听说过这几个词.一直搞不太清楚他们之间的区别.今天查了资料后总结整理如下. ISP:In System Programing,在系统编程 ...
- C# 使用SqlBulkCopy类批量复制大数据
用途说明: 前些日子,公司要求做一个数据导入程序,要求将Excel数据,大批量的导入到数据库中,尽量少的访问数据库,高性能的对数据库进行存储.于是在网上进行查找,发现了一个比较好的解决方案,就是采用S ...
- ISP与IAP的区别
转: ISP(In-System Programming)在系统可编程,指电路板上的空白器件可以编程写入最终用户代码, 而不需要从电路板上取下器件,已经编程的器件也可以用ISP方式擦除或再编程.IAP ...
- 【数据处理】SQL Server高效大数据量存储方案SqlBulkCopy
要求将Excel数据,大批量的导入到数据库中,尽量少的访问数据库,高性能的对数据库进行存储. 一个比较好的解决方案,就是采用SqlBulkCopy来处理存储数据. SqlBulkCopy存储大批量的数 ...
- 关于MCU的烧录,下载与其他接口的比较(一)
今天呢,犯了一个很严重的错误,我不知道这会产生什么样的影响,但我知道,如果我以后再没有具体的了解,仔细认真地观察,认证,只会滑到无底的深渊.做技术来不得半点虚假,切记一知半解,凡事都要弄得清楚明白,认 ...
- C# SqlBulkCopy类批量导入数据
特别注意 sqlbulkcopy.ColumnMappings.Add(dt.Columns[i].ColumnName, dt.Columns[i].ColumnName); 插入的时候列的顺序可 ...
随机推荐
- .Net 理解异步的学习
// 异步 - 在方法中使用 // 异步约等于线程 async await 一起使用 // 异步只有三种返回值 // 1. Task // 2. Task<T> // 3. void 几乎 ...
- 区分::after和:before中的单冒号和双冒号的作用
单冒号:一般指的是伪类,如鼠标悬停状态设置样式:选择器:hover {设置样式} 双冒号一般指伪元素,给元素的前面/后面添加内容.内容数据按堆栈数据结构存储.
- 手撸二叉树——AVL平衡二叉树
还记得上一篇中我们遗留的问题吗?我们再简要回顾一下,现在有一颗空的二叉查找树,我们分别插入1,2,3,4,5,五个节点,那么得到的树是什么样子呢?这个不难想象,二叉树如下: 树的高度是4,并且数据结构 ...
- 快来考试拿证书!KubeSphere 个人技能专业考试认证上线啦!
以容器技术和容器编排为基础的云原生应用,被越来越多的企业用户接受和使用,并且在生产环境中使用容器技术的比例逐年增加.Kubernetes 无疑已经成为容器编排的事实基础,而依托于 Kubernetes ...
- 强化学习算法笔记之【DDPG算法】
强化学习笔记之[DDPG算法] 目录 强化学习笔记之[DDPG算法] 前言: 原论文伪代码 DDPG 中的四个网络 代码核心更新公式 前言: 本文为强化学习笔记第二篇,第一篇讲的是Q-learning ...
- 顺序表(C语言)
文章目录 1.定义顺序表结构体 2.初始化顺序表 3.插入元素 3.1顺序表头插 3.2 顺序表尾插 4.删除顺序表指定元素 5.查找元素 6.输出顺序表 7.销毁顺序表 在数据结构的世界里,顺序表是 ...
- 狂神说-Docker基础-学习笔记-05 Docker镜像原理
狂神说-Docker基础-学习笔记-05 Docker镜像原理 视频地址:https://www.bilibili.com/video/BV1og4y1q7M4?p=19 镜像是什么 镜像是一种轻量级 ...
- 2024强网杯pwn short wp
这时2024强网杯的pwn部分的short的WP 分析以下程序的基本安全措施 *] '/home/ysly/solve/tmp/short' Arch: i386-32-little RELRO: P ...
- Maven简单介绍——必要的Java管理与构建
概念 通常Java的项目中有很多的环境和规范的问题,比如一些需要依赖的包,整个项目的目录标准是怎么样的,什么样的文件放在哪个目录等,还有jdk版本,编译代码流程,项目版本号之类的问题. 虽然这些都是小 ...
- 0.4 Nomenclature and notation