C8051F410存储器体系结构
- 格式:doc
- 大小:331.50 KB
- 文档页数:7
基于C8051F410为核心实现自动气体流量检测仪的设计与应用引言工业生产过程中对流体流量进行正确测量和调节是保证生产过程安全经济运行、提高经济效益、实现科学管理的基础。
质量流量控制器就是用来对各种气体的质量流量进行精密测量与控制的一种仪器,被广泛应用于电子工艺设备、分析测量仪器、制气配气等行业。
本文采用C8051F410单片机为检测核心,充分利用该单片机丰富的内部硬件资源,设计了一款可以控制两路气体质量流量控制器的自动气体流量检测仪。
1 系统总体结构D07-19B型质量流量控制器具有精度高、重复性好、响应速度快、稳定可靠、工作压力范围快等特点,其操作使用方便,便于与单片机连接实现自动控制。
控制器输出的流量检查电压与流过通道的质量流量成正比,满量程流量检测输出电压为+5V.该控制器的流量控制范围是(2~100)%F.S.,流量分辨率是0.1%F.SC8051F410是Silicon Laboratories公司推出的一款8051系列单片机[1].C8051F410单片机是完全集成的低功耗混合信号片上系统型芯片,可以与8051兼容的微控制器内核,片内具有4个通用的16为定时器,2个12位电流输出D/A转换,真12位200kps的24通道A/D转换,高精度可编程24.5MHz内部振荡器和达到32KB的片内FLASH存储器等特点。
在许多AD/DA转换精度或时钟精度要求不是特别高的设计中,不必再使用外部AD/DA 转换芯片或谐振电路,只靠片内资源就可以完成相应的功能,极大地减少了很多外围电路设计,提高了系统的集成度和抗干扰能力。
本系统主要包括硬件和软件两个部分。
硬件部分由电源电路、键盘电路、液晶显示和流量控制器控制电路构成;软件部分由液晶显示、A/D反馈信号的采集和D/A输出组成。
系统框图如图1所示。
图1 系统总体结构图本系统以C8051F410单片机为控制核心,利用键盘设置定时时间和气体检测容量上限,利。
2013年全国大学生电子设计大赛报告基于C8051F410单片机的设计摘要:微处理器在社会发展中扮演着非同寻常的角色,渗透到了各行各业。
经过不断的发展与创新,单片机大致可分为4位、8位、16位和32位。
C8051F410单片机片内集成了高频振荡源,并具备了多级分频系统以满足各种个性化的需要。
强大的非侵入式JTAG/C2调试手段,是传统仿真器调试模式所不能比拟的,可使内核和全部资源完全透明和可操作化,可以方便地完成下载和硬件仿真,且不占用内部片内资源。
芯片上除了P0~P2,还包括温度传感器和电源,晶振及片上温度传感器等外设集合为一体。
增加了交叉开关,可以灵活的将片内资源分配到I/O端口,3.3V的供电模式,内核的低电压使系统功耗进一步降低。
关键词:微处理器 C8051F410 传感器交叉开关Abstract:the microprocessor plays beautifully role in social development, penetrated into all walks of life. Through continuous development and innovation, SCM can be roughly divided into 4, 8, 16 and 32. C8051F410 micro controller on-chip integration of the high frequency oscillation source, and with the multi-level division system to meet the various needs of personalized. A powerful non-invasive JTAG/C2 debugging tools, is a traditional emulator debug mode can not match, can make the kernel and all the resources completely transparent and operational, can finish downloading and hardware simulation conveniently, and does not occupy the internal on-chip resources. Chip P0~P2 in addition, also includes a temperature sensor and a power supply, a crystal and on-chip temperature sensor is integrated peripherals such as set. Increase the crossbar switch, can be flexible to on-chip resource allocation to the I/O port, 3.3V low voltage power supply mode, the power consumption of the system to further reduce the kernel.Keywords: microprocessor C8051F410 sensor switch目录一、前言.............................. (1)二、总体方案设计...................... .. (1)1、方案设计....................... (1)2、方案论证与比较 ....................... (1)3、方案选择...................... (1)三、单元模块设计...................... .. (2)1、各单元模块功能介绍及电路设计......... .. (2)2、电路参数的计算及元器件的选择........................... .. (5)3、特殊器件的介绍................ . (6)4、各单元模块的联接.............. (7)四、系统调试.......................... .. (8)五、系统功能、指标参数......................... . (9)六、设计总结........................... .................................... .9七、参考文献............................ .................................. ..9八、附录 (9)1、电路原理图...................... .................................. .92、PCB图.......................................... ......... . (10)3、源程序.......................... (10)一、前言C8051F410器件是完全集成的低功耗混合信号片上系统型MCU,它的特性主要有:高速、流水线结构的8051兼容的微控制器核(可达50MIPS);高精度可编程的24.5MHz内部振荡器; 4个通用的16位定时器;硬件实时时钟(smaRTClock),工作电压可低至1V,带64字节电池后备RAM和后备稳压器。
80C51单片机的内部结构广告单片机按存储结构可分为二类:一类是哈佛结构,另一类是普林斯顿结构。
①哈佛结构所谓哈佛结构是指程序存储器地址空间与数据存储器地址空间分开的单片机结构,如80C51单片机采用哈佛结构,所以80C51单片机的程序存储器地址空间与数据存储器地址空间是分开的,各有64K存储空间。
②普林斯顿结构所谓普林斯顿结构是指程序存储器地址空间与数据存储器地址空间合并的单片机结构,如MCS-96单片机采用普林斯顿结构,所以MCS-96单片机的程序存储器地址空间与数据存储器地址空间是合并的,共有64K存储空间。
1.单片机的CPU图1是80C51单片机的内部结构框图。
若除去图中的存储器电路和I/O部件,剩下的便是CPU。
它可以分为运算器和控制器两部分。
运算器功能部件包括算术逻辑运算单元ALU、累加器ACC、寄存器B、暂存寄存器TMP1、TMP2、程序状态字寄存器PSW等。
控制器功能部件包括程序计数器PC、指令寄存器IR、指令译码器ID、定时控制逻辑电路CU、数据指针寄存器DPTR、堆栈指针SP及时钟电路等。
(1)运算器①算术逻辑运算单元ALU(Arithmetic Logical Unit)ALU可以进行算术、逻辑运算。
算术运算有:加、减、乘、除,逻辑运算有:与、或、异或等。
②累加器ACC累加器ACC的主要功能是在运算前存放一个操作数,运算后存放一个操作结果。
80C51系列单片机虽然在结构上仍然以累加器A作为重要部件。
但由于内部电路采取了措施,使得累加器A在数据传送、逻辑操作等方面的核心作用有所削弱。
数据可以在片内直接/间接地址的存储器之间直接传送,而不必经过累加器A。
但,加、减、乘、除算术运算指令的运算结果都存放在累加器A或AB寄存器对中。
③暂存器TMP1、TMP2由图1可知,ALU进行算术逻辑运算前的两个操作数来自暂存器TMP1、TMP2,所以暂存器TMP1、TMP2用于存放运算前的两个操作数。
目录2011年硬件课程设计任务书 ...................................................... 错误!未定义书签。
摘要 .. (1)第1章概述 (2)1.1硬件实习的目的要求 (2)1.2热电偶简介 (2)1.3热电偶校验仪的意义 (3)第2章硬件设计 (4)2.1控制系统设计 (4)2.2供电系统设计 (5)2.3I/V转换、调整设计 (6)2.4按键接口电路 (8)2.5液晶接口电路 (9)第3章软件设计 (10)3.1C8051F410系统初始化 (10)3.2热电偶分度表查询设计 (11)3.315位DAC输出设计 (12)3.4按键接口设计 (12)3.5液晶显示程序设计 (13)第4章结论 (15)参考文献 (16)附录 (18)摘要在工业生产中,往往需要高温生产环境,此时我们可以利用热电偶直接测量工厂生产温度,并把温度信号转换成电压信号,通过仪表转换成被测介质的温度,以数字的形式直观的展现给作业工人。
基于C8051F410的热偶信号发生器是以C8051F410为控制核心的高精度热电偶温度转换仪。
可以利用它对实际生产使用的热电偶进行检查,以确保工业生产的安全、高效。
此课题设计中主要以Keil uVision开发软件和Protel软件绘制电路图作为开发平台。
设计中主要从硬件和软件两方面进行入手。
硬件设计主要包括对供电系统,I/V转换系统,按键输入和液晶显示系统的设计;软件设计包括C8051F410系统初始化,按键输入设计,热电偶分度表查询设计,DAC输出转换设计和液晶显示程序设计。
通过硬件和软件相结合的方式实现热电偶校验仪的精确工作。
关键词:C8051F410 工业生产热电偶第1章概述1.1 硬件实习的目的要求课程设计是学生理论联系实际的重要实践教学环节,是一次综合性专业设计训练。
通过课程设计可以使我们获得以下几方面能力: 1.进一步复习和巩固加深所学专业基础课及专业课理论知识,培养自身规划设计、理论计算、软件绘图、计算机应用、文献查阅、报告撰写等基本技能;2.培养实践动手能力及独立分析和解决工程实际问题的能力;3.培养团队协作精神、创新意识、严肃认真的治学态度和严谨求实的工作作风。
51单片机的存储器的RAM详解传统MCS-51单片机内部数据存储器RAM结构内部数据存储器低128单元8051单片机的内部RAM共有256个单元,通常把这256个单元按其功能划分为两部分:低128单元(单元地址00H~7FH)和高128单元(单元地址80H~FFH)。
如图所示为低128单元的配置图。
工作寄存器区8051共有4组寄存器,每组8个寄存单元(各为8),各组都以R0~R7作寄存单元编号。
寄存器常用于存放操作数中间结果等。
由于它们的功能及使用不作预先规定,因此称之为通用寄存器,有时也叫工作寄存器。
4组通用寄存器占据内部RAM的00H~1FH单元地址。
在任一时刻,CPU只能使用其中的一组寄存器,并且把正在使用的那组寄存器称之为当前寄存器组。
到底是哪一组,由程序状态字寄存器PSW中RS1、RS0位的状态组合来决定。
通用寄存器为CPU提供了就近存储数据的便利,有利于提高单片机的运算速度。
此外,使用通用寄存器还能提高程序编制的灵活性,因此,在单片机的应用编程中应充分利用这些寄存器,以简化程序设计,提高程序运行速度。
位寻址区内部RAM的20H~2FH单元,既可作为一般RAM单元使用,进行字节操作,也可以对单元中每一位进行位操作,因此把该区称之为位寻址区。
位寻址区共有16个RAM单元,计128位,地址为00H~7FH。
MCS-51具有布尔处理机功能,这个位寻址区可以构成布尔处理机的存储空间。
这种位寻址能力是MCS-51的一个重要特点。
用户RAM区在内部RAM低128单元中,通用寄存器占去32个单元,位寻址区占去16个单元,剩下80个单元,这就是供用户使用的一般RAM区,其单元地址为30H~7FH。
对用户RAM区的使用没有任何规定或限制,但在一般应用中常把堆栈开辟在此区中。
内部数据存储器高128单元内部RAM的高128单元是供给专用寄存器使用的,其单元地址为80H~FFH。
因这些寄存器的功能已作专门规定,故称之为专用寄存器(Special Function Register),也可称为特殊功能寄存器。
泉州师范学院毕业论文(设计)题目高效率恒流源控制电路的设计物理与信息工程学院电子信息科学与技术专业07 级 1 班学生姓名黄田耀学号070303028指导教师袁放成职称教授完成日期2011.4教务处制高效率恒流源控制电路的设计物理与信息工程学院电子信息科学与技术 070303028 黄田耀指导老师袁放成教授【摘要】本文设计了由单片机C8051F410为核心的高效率恒流源控制电路,该控制电路可以实现开关稳压电源输出恒定电流。
开关稳压电源的电流可在200mA到600mA间进行设置调节,设置调节电流是通过按键控制实现。
输出电流和预设的电流还可以通过LCD显示屏显示出来。
【关键词】数字电位器;C8051F410;恒流;程序模块目录引言 (4)1. 总体方案设计 (4)1.1系统设计 (4)1.2 系统设计的基本要求 (4)2. 单片机控制电路的设计 (4)2.1 单片机C8051F410介绍 (4)2.2 单片机内部的模/数转换器 (6)2.3 单片机内部的数/模转换器 (7)2.4 I2C总线的介绍 (7)2.5单片机最小系统电路设计 (8)2.6 数字电位器X9241的介绍 (8)2.7 数字电位器的电路设计 (12)2.8 显示电路的设计 (12)2.9 按键的设置 (12)3. 单片机控制程序的设计 (13)3.1 AD子程序的流程图 (13)3.2 数字电位器的子程序 (13)3.3总体设计程序 (14)4. 数据测量及数据分析 (16)4.1测试仪器 (16)4.2数据测试 (17)4.3数据分析 (18)5. 设计总结 (18)致谢 (18)附录PCB原理图和程序 (19)引言随着现代科学技术的迅速发展,电子产品的发展速度也是相当的迅速,现在电子产品已经走进各家各户。
随着电子厂家的增多,电子产品的普及,并且很多电子产品都要用到可充电池。
但是不同的厂家生产的电池型号不同,充电电流电压都不一样。
目录一、学习板概括 (1)二、准备工作 (1)三、学习板硬件介绍 (3)四、实验程序 (5)实验一、跑马灯 (5)实验二、独立按键 (6)实验三、继电器控制 (7)实验四、P2口驱动数码管 (8)实验五、定时器 (10)实验六、99S倒计时 (10)实验七、TM1668 (11)实验八、AD采样模数转换+TM1668 (17)实验九、串口通信 (18)实验十、ADC+UART (19)实验十一、1602液晶显示 (19)实验十二、8Bit PWM输出 (21)实验十三、单线温度传感器18B20 (21)一、学习板概括:本手册适用于江南晶创科技推出的C8051F410单片机学习板、开发板第二版(V2.0)。
C8051F410单片机学习板由江南科技创办人朱发旺、陈家乐及其团队设计,版权归其所有!淘宝旗舰店(直销店),QQ交流群:112481187。
该学习板主控制芯片使用了新华龙(Silicon)单片机c8051f410。
配套JTAG 仿真器编程器U-EC5,该仿真器可以对C8051F大部分系列单片机进行仿真、调试、单步、烧录、下载、加密等操作。
学习板采用模块化设计,尽量做到各功能模块完全独立,互不干扰,减小初学者编程误区。
使是初学者可快速了解主板硬件电路的结构,尽快熟悉硬件电路,快速入门。
此外由于各模块可独立工作,所有引脚均已使用标准接口外扩,所以可以将模块用于其他场合,大大增加开发板的用途!二、准备工作:1、软件安装(1)本学习板配套的所有演示程序均使用C语言编辑,编写软件为Keil 51(Uvision4),推荐大家也是用此软件编程;(2)程序下载(烧写)软件使用的是U-EC5中文下载程序;(3)JTAG U-EC5 驱动程序,部分电脑系统可自动安装;注:以上软件均支持windows Xp/win7 32/64,JTAG仿真器支持USB2.0。
2、硬件连接使用C8051F410单片机学习板,需要USB MiNi接口数据线一根、IDC10芯下载线一根、JTAG(EC-3/5)仿真器一个、C8051F410单片机学习板主板一块。
C8051F410存储器体系结构Xxx(xxx.xxx)摘要:存储器是单片机的一个重要组成部分,存储器中每个存储单元可存放一个八位二进制信息,通常用两位16进制数来表示。
其中着重介绍了各个存储器的概念、结构、寻址范围及作用。
本文分为七部分,其中主要内容是介绍了C8051F410存储器的各个体系结构,让我们能够更进一步的了解。
这样可以使我们能够更加熟练、有效的运用C8051F410。
关键词:C8051F410 存储器寻址范围程序C8051F410 Memory architecturexxx(xxx.xxx)Abstract Memory is an important part of SCM,the memory of each memory cell can be stored in a eight bit binary information,usually two 16 hexadecimal numbers.Among the highlights of the various memory concepts、structure、addressing range and effect.This paper is divided into seven parts,the main content is presented the system structure of the C8051F410 memory,so that we can further understand then.This can enable us to be more skilled, effective use of C8051F410.Key words: C8051F410 Memory Addressing range Program一存储器的存储空间(一)介绍C8051F410单片机在物理结构上有四个存储空间:1、片内程序存储器2、片外程序存储器3、片内数据存储器4、片外数据存储器。
在逻辑上,从用户的角度上,C8051F410单片机有三个存储空间:1、片内外统一编址的64K的程序存储器地址空间(MOVC)2、256B 的片内数据存储器的地址空间(MOV)3、以及64K片外数据存储器的地址空间(MOVX)。
在访问三个不同的逻辑空间时,应采用不同形式的指令,以产生不同的存储器空间的选通信号。
(二)程序内存ROM寻址范围:0000H ~ FFFFH 容量64KBEA = 1,寻址内部ROM;EA = 0,寻址外部ROM地址长度:16位作用:存放程序及程序运行时所需的常数。
七个具有特殊含义的单元是:0000H ——系统复位,PC指向此处;0003H ——外部中断0入口000BH —— T0溢出中断入口0013H ——外中断1入口001BH —— T1溢出中断入口0023H ——串口中断入口002BH ---- T2溢出中断入口(三)内部数据存储器RAM物理上分为两大区:00H ~ 7FH即128B内RAM 和 SFR区。
作用:作数据缓冲器用图为C8051F410单片机存储器的空间结构图二程序存储器一个微处理器能够聪明地执行某种任务,除了它们强大的硬件外,还需要它们运行的软件,其实微处理器并不聪明,它们只是完全按照人们预先编写的程序而执行之。
那么设计人员编写的程序就存放在微处理器的程序存储器中,俗称只读程序存储器(ROM)。
程序相当于给微处理器处理问题的一系列命令。
其实程序和数据一样,都是由机器码组成的代码串。
只是程序代码则存放于程序存储器中。
C8051F410具有64kB程序存储器寻址空间,它是用于存放用户程序、数据和表格等信息。
对于内部无ROM的C8051F410单片机,它的程序存储器必须外接,空间地址为64kB,此时单片机的端必须接地。
强制CPU从外部程序存储器读取程序。
对于内部有ROM的8051等单片机,正常运行时,则需接高电平,使CPU先从内部的程序存储中读取程序,当PC值超过内部ROM的容量时,才会转向外部的程序存储器读取程序。
当=1时,程序从片内ROM开始执行,当PC值超过片内ROM容量时会自动转向外部ROM空间。
当=0时,程序从外部存储器开始执行,例如前面提到的片内无ROM的8031单片机,在实际应用中就要把8031的引脚接为低电平。
C8051F410片内有4kB的程序存储单元,其地址为0000H—0FFFH,单片机启动复位后,程序计数器的内容为0000H,所以系统将从0000H单元开始执行程序。
但在程序存储中有些特殊的单元,这在使用中应加以注意:其中一组特殊是0000H—0002H单元,系统复位后,PC为0000H,单片机从0000H单元开始执行程序,如果程序不是从0000H单元开始,则应在这三个单元中存放一条无条件转移指令,让CPU直接去执行用户指定的程序。
另一组特殊单元是0003H—002AH,这40个单元各有用途,它们被均匀地分为五段,它们的定义如下:0003H—000AH 外部中断0中断地址区。
000BH—0012H 定时/计数器0中断地址区。
0013H—001AH 外部中断1中断地址区。
001BH—0022H 定时/计数器1中断地址区。
0023H—002AH 串行中断地址区。
可见以上的40个单元是专门用于存放中断处理程序的地址单元,中断响应后,按中断的类型,自动转到各自的中断区去执行程序。
从上面可以看出,每个中断服务程序只有8个字节单元,用8个字节来存放一个中断服务程序显然是不可能的。
因此以上地址单元不能用于存放程序的其他内容,只能存放中断服务程序。
但是通常情况下,我们是在中断响应的地址区安放一条无条件转移指令,指向程序存储器的其它真正存放中断服务程序的空间去执行,这样中断响应后,CPU读到这条转移指令,便转向其他地方去继续执行中断服务程序。
图为ROM的地址分配图从图中可得,0000H-0002H,只有三个存储单元,3个存储单元在我们的程序存放时是存放不了实际意义的程序的,通常我们在实际编写程序时是在这里安排一条ORG指令,通过ORG 指令跳转到从0033H开始的用户ROM区域,再来安排我们的程序语言。
从0033开始的用户ROM区域用户可以通过ORG指令任意安排,但在应用中应注意,不要超过了实际的存储空间,不然程序就会找不到。
三数据存储器数据存储器也称为随机存取数据存储器。
数据存储器分为内部数据存储和外部数据存储。
C8051F410内部RAM有128或256个字节的用户数据存储(不同的型号有分别),片外最多可扩展64KB的RAM,构成两个地址空间,访问片内RAM用“MOV”指令,访问片外RAM 用“MOVX”指令。
它们是用于存放执行的中间结果和过程数据的。
C8051F410的数据存储器均可读写,部分单元还可以位寻址。
C8051F410的数据存储器空间中有256字节的内部RAM,位于0x00 ~ 0xFF的地址空间。
数据存储器中的低128字节用于通用寄存器和临时存储器。
可以用直接或间接寻址方式访问数据存储器的低128字节。
0x00 ~ 0x1F为4个通用寄存器区,每个区有8个8位寄存器。
接下来的16字节,地址0x20 ~ 0x2F,既可以按字节寻址又可以作为128个位地址用直接寻址方式访问。
数据存储器中的高128字节只能用间接寻址访问。
该存储区与特殊功能寄存器(SFR)占据相同的地址空间,但物理上与SFR空间是分开的。
当寻址高于0x7F的地址时,指令所用的寻址方式决定了CPU是访问数据存储器的高128字节还是访问SFR。
使用直接寻址方式的指令将访问SFR空间,间接寻址高于0x7F地址的指令将访问数据存储器的高128字节。
C8051F410 系列器件内部还有位于外部数据存储器空间的2048字节RAM。
该RAM可以用CIP-51核MOVX指令访问。
C8051F410单片机的内部数据存储器在物理上和逻辑上都分为两个地址空间,即:数据存储器空间(低128单元);特殊功能寄存器空间(高128单元);这两个空间是相连的,从用户角度而言,低128单元才是真正的数据存储器。
低128单元:片内数据存储器为8位地址,所以最大可寻址的范围为256个单元地址,对片外数据存储器采用间接寻址方式,R0、R1和DPTR都可以做为间接寻址寄存器,R0、R1是8位的寄存器,即R0、R1的寻址范围最大为256个单元,而DPTR是16位地址指针,寻址范围就可达到64KB。
也就是说在寻址片外数据存储器时,寻址范围超过了256B,就不能用R0、R1做为间接寻址寄存器,而必须用DPTR寄存器作为间接寻址寄存器。
从图可知,C8051F410单片机片内RAM共有256个单元(00H-FFH),这256个单元共分为两部分。
其一是地址从00H—7FH单元(共128个字节)为用户数据RAM。
从80H—FFH地址单元(也是128个字节)为特殊寄存器(SFR)单元。
四通用寄存器数据存储器的低32字节(地址0x00 ~ 0x1F)可以作为4个通用寄存器区访问。
每个区有8个8位寄存器,称为R0 ~ R7。
在某一时刻只能选择一个寄存器区。
程序状态字中的RS0 (PSW.3)和RS1(PSW.4)位用于选择当前的寄存器区。
这允许在进入子程序或中断服务程序时进行快速现场切换。
间接寻址方式使用R0和R1作为间址寄存器。
在00H—1FH共32个单元中被均匀地分为四块,每块包含八个8位寄存器,均以R0—R7来命名,我们常称这些寄存器为通用寄存器。
这四块中的寄存器都称为R0—R7,那么在程序中怎么区分和使用它们呢?聪明的INTEL工程师们又安排了一个寄存器——程序状态字寄存器(PSW)来管理它们,CPU 只要定义这个寄存的PSW的D3和D4位(RS0和RS1),即可选中这四组通用寄存器。
对应的编码关系如下表所示。
实际程序中并不需要用4组,所以其余的可用做一般的数据缓冲器,CPU 在复位后,选中第0组工作寄存器。
寄存器是CPU内部重要的数据存储资源,用来暂存数据和地址,是汇编程序员能直接使用的硬件资源之一。
由于寄存器的存取速度比内存快,所以,在用汇编语言编写程序时,要尽可能充分利用寄存器的存储功能。
运算器结构寄存器一般用来保存程序的中间结果,为随后的指令快速提供操作数,从而避免把中间结果存入内存,再读取内存的操作。
在高级语言(如:C/C++语言)中,也有定义变量为寄存器类型的,这就是提高寄存器利用率的一种可行的方法。
另外,由于寄存器的个数和容量都有限,不可能把所有中间结果都存储在寄存器中,所以,要对寄存器进行适当的调度。
五位寻址空间片内RAM的20H—2FH单元为位寻址区,既可作为一般单元用字节寻址,也可对它们的位进行寻址。