杏彩体育官方平台51单片机工程模板创建方法

 单片机     |      2024-03-31 10:08:28| 来源:杏彩体育app 作者:杏彩体育官网入口

  本教程将向大家介绍如何使用KEILC51 软件以及如何创建51单片机工程。通过本教程的学习,让大家创建属于自己的51 单片机工程模板,为后面学习51单片机编程做好铺垫。

  打开KEIL C51 软件,新建一个工程,工程名根据喜好命名,但是要注意使用英文,如果使用中文名可能会出现一些奇怪的错误,这里我们命名为template,直接保存在刚才创建的“51 单片机工程模板创建”文件夹下。具体

  这个根据开发板使用的CPU 具体的型号来选择,我们开发板使用的是STC89C52或STC89C516芯片。在KEIL C51 软件内找不到这种型号的单片机,因为51 内核单片机具有通用性,所以在这里可以任选一款89C52就行,Keil 软件的关键是程序代码的编写,而非用户选择什么硬件,在这里我们选择Ateml 的89C52来说明。具体操作如下:

  该对话框内容是提示我们是否要将8051 启动文件添加到工程中,这里我们选择“否”,原因是KEIL C51 内已经帮我们完成了启动,所以只需要编写应用程序即可。选择“否”后界面如下:

  选择File/New...或者使用工具栏的图标来新建一个文件后点击保存,系统会自动定位到我们工程目录,只需要在文件名栏输入新建的文件名即可,一个51 单片机工程必须含有且仅有一个main 函数,因此将新建的文件命名为main.c(当然也可以根据个人习惯自定义命名,但必须是英文),点击保存。具体操作步骤如下:

  这一步的配置工作非常重要,很多人自己编写程序编译后发现找不到.HEX 文件,或者使用我们51仿真器的时候出现仿真失败,这些问题都是在这个地方没有配置好导致的。

  1,选择魔术棒工具的Output 选项卡,勾选红色框3,即程序编译成功后会产生HEX 文件。具体操作如下:

  2,51仿线仿真器且你的仿真器安装好驱动并且连接了电脑和板子,那么就可以开始配置。如果使用我们公司的51仿真器的朋友,相关驱动的安装请查看“1--用户必看4--普中51仿真器使用说明”教程。

  从上面说明可以看出,一般情况下,我们不使用第三个编译按钮,第二个最常用。因为第三个每次都把所有的文件都重新编译,需要消耗大量的时间。当工程比较小的时候,感觉不到,但是工程较大的时候就不行了。

  在代码中引用头文件,其实际意义就是将这个头文件中的全部内容放到引用头文件的位置处,免去我们每次编写同类程序都要将头文件中的语句重复编写。在代码中加入头文件有两种书写方法,分别为#include 和#includereg52.h,包含头文件时都不需要在后面加分号。两种写法的区别如下:

  ①当使用包含头文件时,编译器先进入到软件安装文件夹处开始搜索这个头文件,也就是KEILC51/C51/INC 这个文件夹下,如果这个文件夹没有引用的头文件,编译器将会报错。

  ②当使用包含头文件时,编译器先进入到当前工程所在文件夹处开始搜索该头文件,如果当前工程所在文件夹下没有该头文件,编译器将继续回到软件安装文件夹处搜索这个头文件,若找不到该头文件,编译器将报错。

  打开该头文件查看其内容,将鼠标移动到reg52.h 上,单击右键,选择“Open document ”,即可打开该头文件,如下:

  以后若需打开工程中的其他头文件,也可采用这种方式,或者将工程编译后,通过右边工程组“+”下拉找到对应头文件,双击打开。如下:

  从头文件代码中可以看到,该头文件中定义了52 系列单片机内部所有的功能寄存器,用到了前面讲到的sfr 和sbit 这两个关键字,“sfr P0=0x80;”语句的意义是,把单片机内部地址0x80 处的这个寄存器重新起名叫P0,以后我们在程序中可直接操作P0,就相当于直接对单片机内部的0x80 地址处的寄存器进行操作。通俗点讲就是通过sfr 这个关键字,让Keil 编译器在单片机与人之间搭建一条可以进行沟通的桥梁,我们操作的是P0 口,而单片机本身并不知道什么是P0 口,但是它知道它内部地址0x80 是什么东西。说道这我想大家应该明白了,以后凡是编写51 内核单片机程序时,我们再源代码的第一行就可以直接包含该头文件。在上面我们还看到,“sbit CY=PSW^7;”语句的意思是,将PSW 这个寄存器的最高位重新命名为CY,以后我们要单独操作PSW 寄存器的最高位时,便可直接操作CY,其他雷同

  4 1 SysTick概述Cortex-M3内核的处理器,内部包含了一个SysTick定时器,SysTick是一个24位的倒计数定时器,当计数到0时,将从ReLoad寄存器 ...

  有人使用STM32F446做产品开发,用到TIM1的4个通道做PWM输出。具体使用是这样的,选择CHI1采样PMW模式做PMW输出。CH2、CH3、CH4采用比较切换 ...

  我们讲了内核、存储器和时钟,它们都是单片机核心功能的一部分,没有它们中的任何一个,单片机都不能正常工作。而核心功能还包括复位和电源 ...

  1 定义首先需要明确下,位段,位带和别名区这三个名词名词定义位段STM32用户参考手册使用的名字位带CortexM3参考手册使用的别名区地址总线定时器(二)定时器中断

  一、STM32定时器的分类1 1 按照内核、外核、特定、常规分为4大类:1)内核定时器:Systick2)外设定时器:特定应用定时器+常规定时器3)特 ...

  综合资讯51单片机PIC单片机AVR单片机ARM单片机嵌入式系统汽车电子消费电子数据处理视频教程电子百科其他技术STM32MSP430单片机资源下载单片机习题与教程词云:


杏彩体育官方平台 上一篇:基于C51单片机实现LED灯1s闪烁 下一篇:关于51单片机寄存器功能汇总表