实验名称:keil工程建立,点亮一个led灯

实验目的:学会keil软件安装,熟悉keil界面并学习如何新建一个工程

实验器材:安装有keil的电脑一台

预习内容及原理:

Keil C51已集成到一个功能强大的集成开发环境μVision4中,提供对8051内核的各种型号的支持。该开发环境下集成了文件编辑处理、编译链接、项目管理、工具引用和仿真软件模拟器以及Monitor51硬件目标调试器等多种功能.

初步了解Keil安装启动过程。

实验内容:

安装好软件后双击桌面u4图标启动keil软件。

建立一个Keil工程过程:\

1.Project——close project

Project-----newuvision project-------

弹出窗口后在桌面(或者自己知道的地方)新建一个文件夹重新命名文件夹。

2后打开文件夹,给工程命名为led1(可自己根据需要命名),点击保存。

3弹出选择CPU窗口,选择硬件,选择Atmel---at89c51(或者AT89C52,AT89S52都可以),选中后OK.

4接下来File---new也就是新建一个C文件

后保存为.C格式。点保存。

5对着工程source group1点右键,Add files to group’source group 1’

将刚才新建的.C文件添加到工程里面。

6点击第三行工具栏的Target options

设置晶振大小为12M

点击OUTPUT菜单,Creat HEX file前面打√,然后OK。

此时keil工程建立完毕,可以进行编程了。

如果编程字体小,可通过第二行工具栏最后一个configuration按钮,进行设置。改变字体大小。

新建一个简单程序学习程序编译

#include

Sbit P2.0=P2^0;

Void main()

{

P2.0=0;

}

点击工具栏第三行第一个translate按钮编辑当前文件直到没有错误。点击第二个build编辑当前工程,此时生成了hex文件。

将此Hex文件下载到单片机。

实验结果:

可以看到P2.0口所接LED点亮

实验问题:

实验过程中自己出现问题。

实验一之第四部分:循环流水灯设计实现

实验目的:

三种方法都能实现P1口所接8个流水灯的来回流动。

熟练使用protues绘制电路图,熟练使用KEIL建立C51工程,学会用不同的方法实现循环流水灯程序编写,从而熟练的学会I/O口控制方法,较为熟练的编写C51程序。

实验器材:安装有protues 和keil的电脑一台

实验原理:

原理图如下:

仿真电路原理图

0.png (12.3 KB, 下载次数: 19)

2019-3-7 02:52 上传

软件原理:分别用数组的方法,移位函数,移位运算符的方法来实现P1口所接的8个LED灯,循环点亮。

移位函数

注意,左右移函数和左右移运算符的区别。

左右移函数_cror_,_crol_为循环移位,左右移运算符《,》为移位 后补零。

实验内容:

1利用protues绘制上图。

2利用keil建立一个工程。

三种方法实现:

(1)利用数组方法

(2)左右移运算符实现

(3)左右移函数

实验结果:

将三种程序加载到单片机,都可见8个LED灯依次循环点亮。

发现问题:

keil流水灯c语言程序两个一起亮,Keil单片机点亮一个灯及循环流水灯三种实现方法详解...相关推荐

  1. oracle数据库按日期查询,关于Oracle数据库日期范围查询的两种实现方法详解,oracle详解...

    关于Oracle数据库日期范围查询的两种实现方法详解,oracle详解 Oracle数据库日期范围查询有两种方式:to_char方式和to_date方式,接下来我们通过一个实例来介绍这一过程.我们假设 ...

  2. keil流水灯c语言程序两个一起亮,51单片机学习之陆 —— 1.2 第一个c51程序(点亮流水灯)...

    原标题:51单片机学习之陆 -- 1.2 第一个c51程序(点亮流水灯) 由于学校的板子跟我买的板子有些差异,为了大家的阅读,以后的所有程序编写烧录都以老师发的板子为主. 1 事先准备 a 驱动安装, ...

  3. keil流水灯c语言程序两个一起亮,我用keil c51编了一个流水灯程序,编译无误却只有第一和第二个灯亮了,最后停在第一个灯处不动...

    满意答案 zJ张俭 2014.02.09 采纳率:43%    等级:12 已帮助:10469人 你有几个错误: 1 你的定时器没有重装,导致第一次中断和后面的中断时间不一样,第一次时间短,后面的时间 ...

  4. php 公众号验证回调方法_如何进行公众号文章收集 两种收集方法详解

    大家都知道优质的公众号吸引用户最关键的就是要优质的文章,所以会有专人负责进行公众号文章收集工作,下面我们跟随拓途数据一起来了解一下如何进行公众号文章收集的相关资料吧. 如何进行公众号文章收集方案一:基 ...

  5. 按照100分制,90分以上成绩为A,80到90为B, 60到80为C,60一下为D,写一个程序, 当用户输入分数,自动转换为ABCD的形式打印,Python三种解决方法

    # method1暴力输入法: score=int(input("请输入一个分数:")) if 100>=score>=90:     print("A&qu ...

  6. Java SHA-256加密的两种实现方法详解

    利用Apache的工具类实现加密,使用commons-codec包中的DigestUtils算法工具类(入参支持字符串.字节数组.文件流等): maven: 1 2 3 4 5 <depende ...

  7. AT89C51单片机流水灯c语言程序及详解(扫盲教程)

    AT89C51单片机是我们学习单片机必学的一个单片机,也是单片机入门的教材,下面给大家展示一下流水灯的编写方法适合初学者 首先先在proteus画出仿真图,方便仿真程序 下面来编写程序,先来写入头函数 ...

  8. C语言getline函数CSDN,c++中的两种getline用法详解

    getline是C++标准库函数:但不是C标准库函数,而是POSIX(IEEE Std 1003.1-2008版本及以上)所定义的标准库函数(在POSIX IEEE Std 1003.1-2008标准 ...

  9. python语言的格式框架_django框架模板语言使用方法详解

    本文实例讲述了django框架模板语言使用方法.分享给大家供大家参考,具体如下: 模板功能 作用:生成html界面内容,模版致力于界面如何显示,而不是程序逻辑.模板不仅仅是一个html文件,还包括了页 ...

最新文章

  1. 为什么让A.I.“顶天立地”需要6个多月?
  2. MYSQL 索引相关
  3. TreeMap之floorKey
  4. 编程方法学8:信息隐藏
  5. 爱情麻辣烫防骗子—骗子谎称学生出事让家长汇款
  6. webase crud查看所有表_Laravel-Gii 可视化代码生成工具 CRUD +GUI
  7. java cpu高_Java中的CPU占用高和内存占用高的问题排查
  8. 【语义分割】论文代码资料汇总
  9. java 坦克重叠_【Java】我所知道坦克大战(单机版)之画出坦克的实心圆、让圆动起来、双缓冲解决闪烁问题...
  10. 《Linux Device Drivers》第十六章 块设备驱动程序——note
  11. CSDN博文大赛火爆开启
  12. linux进入文件夹后退,实验二Linux系统简单文件操作命令
  13. 11G新特性 -- Expression Statistics
  14. js如何实现扫描身份证识别_JS调用阿里云OCR身份证识别
  15. vue插件颜色选择器
  16. ps基础入门3-文字样式
  17. AlphaPose配置最新教程
  18. 联想电脑虚拟化开启方法
  19. 创维30周年庆典举行,中国制造业标杆向千亿目标加速冲刺
  20. 六年级计算机机器人考试试题,小学六年级下册信息技术教案:机器人行走

热门文章

  1. 如何利用URLOS和云存储打造一个不惧怕宕机的网站环境
  2. Azure PowerShell (9) 使用PowerShell导出订阅下所有的Azure VM的Public IP和Private IP
  3. 如何尽量规避XSS(跨站点脚本)攻击
  4. swift UI专项训练15 PcikerView老虎机视图
  5. 记录一下免费域名和空间
  6. 如何在Linux桌面环境下自动启动程序?
  7. Codeforces Round #219 (Div. 2) 解题报告
  8. 瑞恩面试编程题:找出一个目录下所有的文件
  9. 帮助你在移动设备上生成倾斜控制(重力控制)的旋转效果jQuery插件 - lenticular.js...
  10. 【LeetCode 69】Sqrt(x)