0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

keil单片机编程软件需要注意什么事项

Wildesbeast 来源:网络整理 作者:佚名 2020-08-15 10:51 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

单片机编程软件的使用为单片机的使用提供了便捷,对于单片机编程软件,小编在往期文章中有诸多介绍。为增加大家对单片机编程软件的了解,本文将对keil单片机编程软件予以介绍,主要在于介绍该单片机编程软件的模式设置和一些编程事项。如果你对本文内容具有兴趣,不妨继续往下阅读哦。

深入理解并应用C51对标准ANSIC的扩展是学习C51的关键之一。因为大多数扩展功能都是直接针对8051系列CPU硬件的,大致有以下8类:

8051存储类型及存储区域、存储模式、存储器类型声明、变量类型声明、位变量与位寻址、特殊功能寄存器(SFR)、C51指针。

一、Keil C51扩展关键字

C51 V4.0版本有以下扩展关键字(共19个):

_at_ idata sfr16 alien interrupt small

bdata large _task_ Code bit pdata

using reentrant xdata compact sbit data sfr

二、内存区域(Memory Areas)

1. Pragram Area:

由Code说明可有多达64kBytes的程序存储器

2. Internal Data Memory:

内部数据存储器可用以下关键字说明:

data:直接寻址区,为内部RAM的低128字节 00H~7FH

idata:间接寻址区,包括整个内部RAM区 00H~FFH

bdata:可位寻址区, 20H~2FH

3. External Data Memory

外部RAM视使用情况可由以下关键字标识: xdata:可指定多达64KB的外部直接寻址区,地址范围0000H~0FFFFH

pdata:能访问1页(25bBytes)的外部RAM,主要用于紧凑模式(Compact Model)。

4. Speciac FuncTIon Register Memory

8051提供128Bytes的SFR寻址区,这区域可位寻址、字节寻址或字寻址,用以控制定时器、计数器、串口、I/O及其它部件,可由以下几种关键字说明:

sfr:字节寻址 比如 sfr P0=0x80;为PO口地址为80H,“=”后H~FFH之间的常数。

sfr16:字寻址,如sfr16 T2=0xcc;指定TImer2口地址T2L=0xcc T2H=0xCD

sbit:位寻址,如sbit EA=0xAF;指定第0xAF位为EA,即中断允许

还可以有如下定义方法:

sbit 0V=PSW^2;(定义0V为PSW的第2位)

sbit 0V=0XDO^2;(同上)

或bit 0V-=0xD2(同上)。

三、存储模式

存储模式决定了没有明确指定存储类型的变量,函数参数等的缺省存储区域,共三种:

1. Small模式

所有缺省变量参数均装入内部RAM,优点是访问速度快,缺点是空间有限,只适用于小程序。

small模式下,再入函数的堆栈是设在idata中的

2. Compact模式

所有缺省变量均位于外部RAM区的一页(256Bytes),具体哪一页可由P2口指定,在STARTUP.A51文件中说明,也可用pdata指定,优点是空间较Small为宽裕速度较Small慢,较large要快,是一种中间状态。

compact模式下,再入函数堆栈是设在pdata中的

3. large模式

所有缺省变量可放在多达64KB的外部RAM区,优点是空间大,可存变量多,缺点是速度较慢。

提示:存储模式在C51编译器选项中选择。

四、存储类型声明

变量或参数的存储类型可由存储模式指定缺省类型,也可由关键字直接声明指定。各类型分别用:code,data,idata,xdata,pdata说明,例:

data uar1

char code array[ ]=“hello!”;

unsigned char xdata arr[10][4][4];

五、变量或数据类型

C51提供以下几种扩展数据类型:

bit 位变量值为0或1

sbit 从字节中定义的位变量 0或1

sfr sfr字节地址 0~255

sfr16 sfr字地址 0~65535

其余数据类型如:char,enum,short,int,long,float等与ANSI C相同。

六、位变量与声明

1. bit型变量

bit型变量可用变量类型,函数声明、函数返回值等,存贮于内部RAM20H~2FH。

注意:

(1) 用#pragma dISAble说明函数和用“usign”指定的函数,不能返回bit值。

(2) 一个bit变量不能声明为指针,如bit *ptr;是错误的

(3) 不能有bit数组如:bit arr[5];错误。

2. 可位寻址区说明20H-2FH

可作如下定义:

int bdata i;

char bdata arr[3],

然后:

sbit bito=in0;sbit bit15=I^15;

sbit arr07=arr[0]^7;sbit arr15=arr[i]^7;

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6078

    文章

    45629

    浏览量

    675392
  • 存储器
    +关注

    关注

    39

    文章

    7769

    浏览量

    172436
  • keil
    +关注

    关注

    69

    文章

    1233

    浏览量

    173398
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Renesas 7544 系列单片机:技术剖析与设计要点

    的 7544 系列单片机,详细剖析其技术特点、功能模块以及在设计过程中需要注意的要点。 文件下载: M37544G2SP.pdf 一、产品概述 Renesas 的 7544 系列是基于 740 家族
    的头像 发表于 04-13 14:20 189次阅读

    微机消谐装置在使用时需要注意什么

           微机消谐装置在使用时需要注意什么?微机消谐装置应安装于PT开口三角处,消谐电阻器则置于PT一次侧中性点与地之间。通过这种方式,装置能够有效地检测并消除谐振现象,同时保护PT不受
    的头像 发表于 03-16 11:44 184次阅读

    单片机低功耗的处理

    的。能不加电阻就最好了,但是还有一点需要注意的是有些单片机没有下拉输入,如果一些引脚设成外部中断的时候引脚悬空,会使得单片机不断进入中断,这时候就需要上拉或者下拉电阻稳定IO口的电平。
    发表于 01-21 08:25

    芯源MCU开发需要注意什么?

    芯源MCU开发需要注意什么
    发表于 01-04 12:04

    单片机的入门准备

    的使用、定时器的使用、片上资源的使用。这些部分都可以用软件仿真(可以用proteus软件),注意软件仿真跟实际电路存在区别,软件仿真仅仅用来
    发表于 12-22 07:39

    单片机引脚中的VCC和VDD有什么区别

    的噪声。需要注意的是,在一些单片机中,VCC和VDD可能会被用于不同的功能。例如,某些单片机可能需要将VCC用于提供内部逻辑电压,而将VDD用于提供模拟电路电压。因此,在使用
    发表于 12-16 06:19

    怎么学好单片机

    单片机,是软硬件的综合体。并不是单单会点汇编或者C语言就说会单片机,这顶多只能说会编程而已。因为大部分单片机系统都是不带操作系统的裸机系统,那么没有所谓的操作系统和应用
    发表于 12-04 07:16

    为什么单片机还在用C语言编程

    的存储空间。前提是确保程序的规范性和完整性。 2.我们在进行单片机编程时,主要是通过对单片机的端口和内部寄存器的操作和配置,这个需要比较精确的时序控制。 3.在
    发表于 11-28 07:37

    CW32R031射频板LAYOUT注意事项有哪些?

    CW32R031射频板LAYOUT注意事项有哪些?目前433MHz发射时单片机偶尔死机,天线距离MCU只有2cm,需要做特别隔离吗?
    发表于 11-19 08:09

    51单片机RS485编程实例资料

    详细介绍51单片机RS485通信接线和编程代码
    发表于 10-20 14:57 8次下载

    开发单片机需要学习什么?软件编程的 4 个关键层次

                        开发单片机需要学习什么?软件编程的 4 个关键层次 单片机的 “智能” 全靠
    的头像 发表于 08-25 11:32 1150次阅读

    振弦式土体沉降计钻孔埋设需要注意什么?

    、确保长期监测稳定性的前提。振弦式土体沉降计钻孔埋设需要注意什么?关键注意事项规避施工风险工程实践中需重点管控四类风险:钻孔质量控制:倾斜度偏差需≤2°,防止仪器偏斜
    的头像 发表于 08-19 13:56 731次阅读
    振弦式土体沉降计钻孔埋设<b class='flag-5'>需要注意</b>什么?

    使用一体化超声波清洗需要注意哪些安全事项

    使用一体化超声波清洗需要注意哪些安全事项一体化超声波清洗是一种常用于清洗零部件和器具的高效工具。然而,它们需要在操作时谨慎使用,以确保
    的头像 发表于 07-25 16:30 1029次阅读
    使用一体化超声波清洗<b class='flag-5'>机</b>前<b class='flag-5'>需要注意</b>哪些安全<b class='flag-5'>事项</b>?

    单片机怎么驱动电机?

    在各类自动化设备和智能装置中,电机是重要的执行部件,而单片机作为控制核心,需要通过特定的方式驱动电机运转。单片机驱动电机并非直接连接即可,而是要根据电机类型和功率,搭配合适的驱动电路,才能实现稳定
    的头像 发表于 07-25 09:31 1462次阅读

    单片机怎么烧程序

    骤,才能让单片机发挥作用。 烧程序前的准备工作 单片机烧程序前,需要做好硬件和软件两方面的准备。硬件方面,核心设备包括目标单片机
    的头像 发表于 07-23 11:47 2239次阅读