当前位置: 首页 > news >正文

详解 KEIL C51 软件的使用·建立工程

         单片机要运行,就必须将程序代码下载到程序存储器内部,但是在写进单片机之前要先将你写 的程序转换成*.hex*.bin 的文件.不同系列的单片机都有不同的软件对其进行编绎,而 keil Cx51 是德国开发的一个专为 51 系列单片机提供的软件开发平台,基本上现在的所有 51 系列内核的单片 机都是使用 keil 来调试和编绎,在上面编写好程序后,将其编绎成*.hex 的十六进制烧写文件.然 后再烧写到单片机系统中去。

Keil Cx51 软件使用

下面以 keil Cx51 V7.04 版本为例,介绍如何使用 keil 的集成开发环境.

建立工程

一:双击桌面

启动 keil 如图 2-1 所示.

图 2-1

二:新建一个工程

(1)点击“Project”菜单,选择下拉菜单的“New Project”,会弹出如图 2-2 的窗口,在文件名 一栏中填入你的想要的工程文件名,文件名是任由你决定的,但是一般是取带有特定意义的为文件 名,这样比较容易管理和理解.在这里就取“text”,意为测试的意思.

图 2-2

然后点击保存.文件的扩展名为*.uv2,这是 keil 项目文件扩展名,以后我们直接双 击打开这个文件就可以了.

(2)点击保存之后会弹出如图 2-4 的窗口,要求选择芯片的型号,在这里我们选择“Atmel”内面 的 AT89S52 如图 2-5 所示.

图 2-4

图 2-5

(3)完成上一步之后点击确认.有可能会出现图 2-6 的对话框,其意思是把标准 8051 的启动代码复 制到本工程中去,你只需要“N(否)”就可以了.

图 2-6

(4)完成以上步骤之后我们就可以见到的 keil 界面如图 2-7

图 2-7

(5)我们现在来编写第一个程序.点击“File”的下拉菜单中选择“New”的选项如图 3-8 所示.

图 3-8

(6)这时光标会在新建的“Text1”这个文本框中闪烁.其实现在已经可以编写程序了,但是笔者建 义大家还是先将这个空白文件保存好之后再来编写.点击“File”的下拉菜单中的“Save As”此 时会弹出图 2-9 的对话框.在文件名中填入你想要的文件名,但是文件名最好是具有一定的代表意 义,这样比较容易管理和理解.这里特别要注意的就是,如果我们用 C 语言来写程序的话,那么文 件的扩展名一定要为.c,但是如果我们用的是汇编语言来写程序,那么文件的扩展名一定要为.asm, 由于我们现在用 C 语言来编写程序,所以这里就取“test.c”,单击“保存”.原来的那个“Text1” 的文件已经变成了我们刚才的那个“test.c”文件.见图 2-10 黑色箭头所指.

当你按上面的程序步骤完成之后,还是看见“Text1”没有变这“test.c”文件,那只是你的 keil 没有刷新,你把它最小化,然后再还原就可以了.

图 2-9

图 2-10

(7)完成上一步之后,回到了图 2-10 的编辑界面,单击“Target”前面的“+”号,然后在“Source Group 1”上右击一下,选中“Add Files to Group ,Source Group 1”就会弹出图 2-11 的对话框, 选择我们刚才建立的那个“test.c”的文件.

图 2-11

(8)选择完之后,我们已经发现那刚才在图 2-10 右边的“Source Group 1”下面多了一个“test.c”, 如图 2-12 所示.

图 2-12

(9)将文件加入“Source Group 1”之后,增加文件的对话框并没有消失.这时其对话框还在等待 添加其它的文件,如果你再单击“Add”,就会出现图 2-13 的对话框,其意思是提示用户所选的文 件已经在列表中.这时点击“确定”返回到增加对话框,然后点击“Close”返回主界面.再在 “Source Group 1”前面的“+”号中点击一下,你就会见到“test.c”这个文件已在工程当中.

图 2-13

到这里一个完整的项目工程就建立完成了,下面让我们来学习如何调试程序.

#include<reg52.h>//包含所用单片机对应的头文件 
void delay_ms (unsigned int time)//延时 1 毫秒程序,n 是形式参数 
{ unsigned int i,j; for (i=time;i>0;i--)//i 不断减 1,一直到 i>0 条件不成立为止for (j=112;j>0;j--)//j 不断减 1,一直到 j>0 条件不成立为止 {;} 
} 
void main (void){ while (1){ P1=0x00;// 点亮 P1 端口 delay_ms (500);//把实际参数 500 传给 n,延时 500 毫秒,也就是 0.5 秒 P1=0xff;// 息灭 P1 端口 delay_ms (500);//把实际参数 500 传给 n,延时 500 毫秒,也就是 0.5 秒 } 
}

上面是一个简单的 C 语言程序(程序附光盘中),只要将该程序的代码烧写到图 2-14 的电路中去, 实验板就会实现“亮,延时 500 毫秒,灭,延时 500 毫秒”这样不断循环闪烁.2-14 是实验板的流 水灯的电路.对于上面的程序,如果我们是一个初学者,可能还有好多问题是不明白的,是吗?在 这里我们暂时不用去管它,在以后节章中我们会详细去研究它,在这里只是让大家有一个初步的认 识.

图 2-14

把程序装入 keil 之后的画面如图 2-15.

图 2-15

更多:

详解 KEIL C51 软件的使用·设置工程·编绎与连接程序-CSDN博客

http://www.lryc.cn/news/230172.html

相关文章:

  • 2023年03月 Python(五级)真题解析#中国电子学会#全国青少年软件编程等级考试
  • nginx 代理服务时遇到的问题
  • 利用共享台球室小程序系统提升用户体验
  • U-Mail海外邮件中继帮您解决企业邮件退信难题
  • ImageJ灰度值量化分析 实用技巧——免疫组化分析(定量分析篇)
  • 了解STM32看门狗定时器的工作原理和原则
  • 【2014年数据结构真题】
  • PostgreSQL基本操作
  • hadoop 大数据环境配置 ssh免密登录 centos配置免密登录 hadoop(四)
  • Django 的国际化与本地化详解
  • Java19新增特性
  • [文件读取]metinfo_6.0.0 任意文件读取漏洞复现
  • [量化投资-学习笔记015]Python+TDengine从零开始搭建量化分析平台-量化知识点汇总
  • VSCode 好用的插件分享
  • C++虚基类详解
  • Mac M2/M3 芯片环境配置以及常用软件安装-前端
  • Karmada更高效地实现故障转移
  • 前端AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(四)
  • ​TechSmith Camtasia 2024破解版功能介绍及使用教程
  • 【无线网络技术】——无线传输技术基础(学习笔记)
  • 【Liunx】部署WEB服务:Apache
  • 数字媒体技术基础之:常见图片文件格式
  • 2023-2024-2 高级语言程序设计-二维数组
  • 【uniapp】确认弹出框,选择确定和取消
  • 阿里云容器镜像服务的运维总结
  • 修炼k8s+flink+hdfs+dlink(七:flinkcdc)
  • 排查问题流程
  • 【nlp】2.2 传统RNN模型
  • C/C++---------------LeetCode第49.字母异位词分组
  • spark调优案例分享