keil4使用 COMPACT 存储模式时,硬件电路怎样连接

Keil模式设置和编程事项
日 11:44 来源:本站整理 作者:叶子 (0)
深入理解并应用C51对标准ANSIC的扩展是学习C51的关键之一。因为大多数扩展功能都是直接针对8051系列CPU硬件的。大致有以下8类:
  8051存储类型及存储区域 , 存储模式 , 存储器类型声明 , 变量类型声明 , 位变量与位寻址 ,特殊功能寄存器(SFR) ,C51指针
  l 函数属性
  具体说明如下(8031为缺省CPU)。
第一节 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=0指定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说明,例:
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;
相关技术文章:
相关资料下载:
上周热点文章排行榜
上周资料下载排行榜
技术交流、我要发言! 发表评论可获取积分! 请遵守相关规定。
创新实用技术专题
在28nm FPGA战场上,Xilinx和Altera已经展...扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
很好的KEIL C入门教程
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口51单片机应用设计与仿真-基于KEIL C与PROTEUS-丁明亮 唐前辉 -硬件/嵌入式开发-文轩网
定  价 : ¥27.00
文 轩 价 : ¥21.30 (7.9折)
配 送 至 : 中国四川省成都市
中国 四川省 成都市 请选择
作  者 :
所属分类 :
促销活动 : 2015,元旦好书”惠”图书音像满88-10,168-20,398-50
购买数量 :
件 此商品已售出0本
服  务 : 由"文轩网"直接销售和发货,并提供售后服务 |||
¥21.30 (7.9折)
出版社: 出版时间: 开 本:16开 页 数:239 印刷时间: 字 数:353.00千字 装 帧:平装 语  种:中文 版 次:1 印 次:1 I S B N:0
重磅推荐 文艺小说 少儿童书 经管励志 居家生活 科技考试
¥42.00¥60.00
¥64.00¥80.00
¥133.20¥180.00
¥31.50¥42.00
¥22.70¥32.00
¥27.70¥38.00
¥59.50¥85.00
¥23.70¥34.80
¥18.50¥29.80
¥62.40¥78.00
¥20.80¥32.00
¥56.90¥79.00
¥29.60¥39.50
¥20.20¥32.00
¥19.40¥29.80
¥64.20¥94.40
¥21.30¥32.80
¥16.30¥25.00
¥25.50¥39.80
¥22.60¥32.80
¥29.30¥45.00
¥18.20¥25.00
¥25.20¥35.00
¥28.80¥39.50
¥193.80¥285.00
¥23.40¥32.00
¥544.00¥680.00
¥68.20¥96.00
¥9.00¥12.50
¥27.10¥39.80
¥7.30¥10.00
¥8.60¥12.00
¥11.20¥16.00
¥13.60¥22.00
¥57.20¥88.00
¥10.20¥15.00
¥66.00¥88.00
¥54.50¥79.00
¥31.10¥42.00
¥44.90¥59.80
¥20.30¥29.80
¥25.90¥36.00
¥19.00¥28.00
¥16.20¥25.00
¥20.30¥29.80
¥20.80¥32.00
¥34.30¥49.00
¥25.90¥39.80
¥34.40¥49.80
¥28.70¥39.80
¥33.40¥49.80
¥6.90¥10.00
¥11.50¥16.00
¥24.70¥38.00
¥24.70¥38.00
¥27.50¥39.80
¥35.90¥49.80
¥24.20¥35.00
¥25.50¥39.80
¥46.90¥68.00
¥18.10¥25.80
¥36.90¥49.90
¥15.20¥23.80
¥56.20¥76.00
¥4.90¥6.80
¥12.40¥18.00
¥27.10¥39.80
¥7.10¥10.00
¥14.10¥19.80
¥14.40¥24.80
¥23.70¥32.00
¥35.30¥49.00
&&&&本书结合Proteus和Keil&C,以51单片机炉温控制器这一实践项目的软硬件设计和仿真为线索,借助Proteus这一先进工具,帮助单片机初学者尽快掌握单片机知识并具备设计单片机应用系统的基本能力。读者可将本书中炉温控制器的Proteus仿真原理图作为虚拟实验板,除本书中的例题外,读者还可在上面编写其他程序来仿真调试,以检验自己对各部分内容的掌握情况。
隐藏全部&&&&&&本书重点阐述了51单片机原理、Keil&C环境下用C语言编写和调试51单片机应用程序的方法、Proteus仿真软件的使用方法、51单片机系统扩展、51单片机应用系统设计及仿真。本书示例的Proteus仿真文件及C51程序可从北航出版社网站上下载,以方便读者学习。&&&&本书的读者对象为有C语言基础的51单片机初学者,也可作为单片机工程师学习Proteus仿真软件和51单片机C语言编程的参考资料。&
隐藏全部&&第1章&51单片机的结构和原理1.1&51&单片机的结构1.1.1&基本结构1.1.2&CPU结构1.2&51单片机的引脚功能1.3&51单片机的存储器配置1.3.1&程序存储器ROM1.3.2&内部数据存储器RAM1.4&51单片机的基本时序1.4.1&51单片机的时序信号1.4.2&CPU取指/执行时序1.4.3&访问外部ROM和RAM的时序1.5&51单片机的输入/输出端口1.5.1&PO口1.5.2&P1口1.5.3&P2口1.5.4&P3口1.5.5&端口的负载能力1.6&51单片机的中断系统1.6.1&中断结构1.6.2&中断源1.6.3&中断控制1.6.4&中断响应过程1.6.5&中断服务程序的现场保护和恢复1.7&51单片机的定时/计数器1.7.1&定时/计数器的结构1.7.2&定时/计数器的工作方式1.7.3&定时/计数器及外部中断应用举例——8051控制包装生产线1.8&51单片机的串行口1.8.1&串行口的控制寄存器1.8.2&串行口的工作方式1.8.3&波特率的设计习题1第2章&从标准C转向Keil&C2.1&概述2.2&C51程序的一般结构2.3&Keil&C上机的基本方法2.3.1&μVision3中编程的基本步骤2.3.2&μVision3上机实例2.3.3&μVision3上机注意事项2.4&Keil&C软仿真器及程序调试方法2.4.1&调试相关工具介绍2.4.2&断点设置及应用实例2.4.3&程序调试实例2.5&C51中的变量和函数2.5.1&数据类型2.5.2&存储类型2.5.3&字节顺序2.5.4&存储模式选择2.5.5&绝对地址访问和I/O端口读/写2.5.6&指针2.5.7&C51函数2.6&Keil&C中的51单片机中断编程2.6.1&C51中断处理函数编写方法2.6.2&C51编写定时器中断处理函数实例2.6.3&C51编写外部中断处理函数实例2.7&编写Keil&C程序的一些建议2.7.1&合理定义变量2.7.2&正确调用不可重入库函数习题2第3章&Proteus应用指南3.1&Proteus简介3.2&启动Proteus&ISIS3.3&Proteus&ISIS工作界面3.3.1&编辑窗口3.3.2&预览窗口3.3.3&对象选择器3.4&原理图绘制的方法和步骤3.4.1&创建新的设计文件3.4.2&设置图纸类型3.4.3&将所需元器件加入对象选择器3.4.4&放置元器件3.4.5&绘制总线3.4.6&导线连接3.4.7&导线标注3.4.8&编辑对象的属性3.4.9&制作标题栏3.5&Proteus&Keil&C的联合仿真3.5.1&Proteus与Keil&C的接口3.5.2&Proteus与Keil&C联合仿真实例3.6&基本Proteus&VSM的电路分析3.6.1&激励源3.6.2&虚拟仪器3.6.3&探针3.6.4&基于图表的分析3.6.5&电源与地3.6.6&交互式电路仿真3.7&电路分析实例13.7.1&电路原理图的绘制3.7.2&放置电路分析的仪器3.7.3&电路仿真前的准备3.7.4&仿真仪器的使用3.8&电路分析实例23.8.1&子电路及其子电路图的绘制3.8.2&程序实现3.8.3&仿真结果及分析习题3第4章&单片机应用实践与Proteus仿真4.1&8051存储系统扩展和PID温控器的存储系统设计4.1.1&存储器分类.4.1.2&常用存储芯片及引脚功能4.1.3&片外存储系统扩展4.1.4&PID温控器存储系统设计4.2&人机接口和PID温控器的输入/输出设计及仿真4.2.1&八段LED显示器4.2.2&LED显示器的显示方式4.2.3&PID温控器LED显示及仿真4.2.4&键盘检测基本原理4.2.5&PID温控器的键盘设计及其Proteus仿真4.3&A/D、D/A转换及PID温控器的温度采样子系统4.3.1&A/D转换及器件4.3.2&D/A转换接口及应用实例4.4&PID温控器的炉温采样接口及仿真4.4.1&PID温控器A/D转换原理4.4.2&PID温控器A/D转换编程方法4.4.3&PID温控器A/D转换编程实例4.5&运算放大电路基础及应用4.5.1&传感器及放大电路4.5.2&运算放大电路分析基础4.5.3&常用运算放大器4.5.4&运算放大电路实例4.6&PID温控器的温度测量电路设计及仿真4.6.1&热电阻电桥电路分析4.6.2&PID温控器测温放大电路初步设计4.6.3&测温放大电路的进一步完善4.6.4&标度变换4.6.5&测温放大电路与ADC0808的接口及仿真4.7&8051串口通信及应用仿真4.7.1&串行通信的基本概念4.7.2&串行通信编程的基本方法4.7.3&8051双机直接通信4.7.4&8051主从式多机串行通信网络4.7.5&串行口工作方式0扩展I/O口4.8&PID温控器上/下位机串口通信及仿真4.8.1&PC双机串口通信原理4.8.2&Proteus串行通信仿真4.8.3&PID温控器与上位PC机的串口通信设计及仿真4.8.4&串行通信应用层协议简介4.9&PID温控器直流电源与加热功率控制子系统的设计及仿真4.9.1&直流电源设计4.9.2&加热功率控制4.9.3&炉温PID控制4.9.4&炉温闭环PID控制系统仿真模型习题4附录A&常用51单片机选型指南附录B&8255A资料附录C&关于上/下拉电阻参考文献
隐藏全部&&&&&&第1章&&51单片机的结构和原理&&&&单片微型计算机简称单片机,也称为微控制器(Micro&Controller&Unit,也简写为Microcontroller),英文缩写为MCU。单片机的结构及功能均是按照工业控制要求而设计的,它把微型计算机的各个功能部件(中央处理器CPU、随机存取存储器RAM、只读存储器ROM、输入输出UO接VI、定时器/计数器以及串行通信接口等)集成在一块芯片上,构成一个完整的微型计算机,故又称为单片微型计算机。除工业控制领域外,单片机也广泛应用于各种民用电子、电器之中。&&&&MCS-51是由美国INTEL(英特尔)公司20世纪80年代生产的一系列8位单片机的总称,此系列单片机包括很多型号,如、、等,其中8051是最早最典型的产品。该系列其他单片机都是在8051的基础上进行功能的增、减改变而来的,所以人们习惯于用8051来称呼MCS-51系列单片机,而其中的8031在20世纪80年代末90年代初是我国最流行的单片机之一。INTEL公司后来将MCS-51的核心技术授权给了其他公司,现在生产8051内核单片机的公司,主要有ATMEL(爱特梅尔)、WINBOND(华帮)、NXP(恩智浦)、NC&DRAGON(新华龙)等,各公司的8051的典型产品有:&&&&ATMEL公司融入Flash存储器技术的AT89系列;&&&&NXP公司的P80C51、P80C552系列;&&&&WINBOND公司的W78C51、W77C51高速低价系列;&&&&NC&DRAGON公司的C8051F系列。&&&&除以上系列外,针对不同应用,许多厂商推出了各具特色的51系列单片机,具体选型时,可参考附录A,其中列出了几大厂商部分常用型号8051&MCU的主要特点,更多产品信息可到各公司的网站上查询。&&&&……&&&&
隐藏全部&&
好评 中评 差评 天猫评论
文轩网作为纸质出版物网络销售平台,所售图书均为全新正版,请放心购买。
文轩网图书/音像单笔订单满38元免运费(内蒙古、青海、海南、新疆、西藏、宁夏及海外地区除外)。未满38元全国运费5元/单。
与文轩网合作的物流公司有:申通/圆通/CCES/港中能达/邮政经济快递/邮政平邮等。(发货系统自动匹配,暂时无法指定快递)
没有解决您的问题?
暂无提问,您可以咨询我们,我们会在一个工作日内响应~提示:存储模式在C51编译器选项中选择. 第四节 存储类型声明 变量或参数的存储..
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
KeilC51使用详解V10
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口您的位置: >
深入理解并应用C51对标准ANSIC的扩展是学习C51的关键之一。因为大多数扩展功能都是直接针对8051系列CPU硬件的。大致有以下8类:
  8051存储类型及存储区域 , 存储模式 , 存储器类型声明 , 变量类型声明 , 位变量与位寻址 ,特殊功能寄存器(SFR) ,C51指针
  l 函数属性
  具体说明如下(8031为缺省CPU)。
第一节 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=0指定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说明,例:
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;
非常好我支持^.^
不好我反对
相关阅读:
( 发表人:叶子 )
评价:好评中评差评
技术交流、我要发言
发表评论,获取积分! 请遵守相关规定!提 交
Powered by: 电子发烧友 (
. .All Rights Reserved 粤ICP备号}

我要回帖

更多关于 keil uvision4 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信