8051内核结构
8051内核说明管脚
该部分的8051内核的顶层信号引脚在8051内核的顶层便可查看到各个引脚模块的定义。引脚的定义和普通的8051单片机相似,区别在于P3口的定义,普通的8051单片机的P3口有双重功能,在对普通的8051单片机编程时,特别是用C进行编程时所面向的是寄存器层面的,但在硬件层面上,在定义P3口的两种功能时是不一致的,原因是用C编程时,编译软件已经将C代码转变成机器代码,让机器能够辨别要用哪一个硬件模块,也就是8051的内核已经'解码'了机器码。普通的8051芯片的引脚框图和P3口的定义如下如下:
这里姑且不讨论哪些电源、地、时钟输入XTAL1/XTAL2、地址锁存控制信号ALE/PROG、外部程序存储器选通信号PSEN、访问外部程序存储器控制信号EA/VPP。可以看出剩下的都是单片机的外部通信操作接口(P0~P3口)。如果想进一步了解8051单片机的更多内容可以参考8051单片机的芯片手册。(这里不在多讲)
8051IP核
核心本身是由定时器/计数器,ALU,串行接口,和控制单元组成。
8015内核的原理图:
Clk:时钟输入
Reset:复位输入引脚
rom_data_i:ROM数据输入
ram_data_i :RAM数据输入
int0_i外部中断0
int1_i:外部中断1
all_t0_i:定时计数0
all_t1_i:定时计数1
all_rxd_i:串口接收
p0_i:IO-port0 input
p1_i:IO-port1 input
p2_i:IO-port2 input
p3_i:IO-port3 input
p0_o:IO-port0 output
p1_o:IO-port1 output
p2_o:IO-port2 output
p3_o:IO-port3 output
all_rxd_o:内部接收后直接输出,可以进入all_rxd_i
all_txd_o:串口发送
all_rxdwr_o:接收方向信号
rom_adr_o:输出到ROM地址信号
ram_data_o:输出到RAM数据信号
ram_adr_o:输出到RAM地址信号
ram_wr_o:数据输出到RAM的使能信号
ram_en_o:RAM的时钟使能信号
datax_i:从RAM 的数据输入到单片机的信号
datax_o:从单片机输出数据到RAM的信号
adrx_o:RAM 的地址信号
wrx_o:RAM的写使能信号
8051内核的设计层次和设计文件:
层次设计框图中的microcontroller core相当与CPU,一般的CPU的整体框图如下:
(该8051模块的设计文件都是用VHDL编写的所以要看懂器内部的构造还必须把VHDL学好)原理性的东西和层次结构已经说明了,现在就开始应用8051内核,把FPGA开发板打造成一块8051单片机开发板,先通过一个简单的实验看认识8051内核的使用。
关键字:内核结构 C编程
引用地址:
8051内核的使用
推荐阅读最新更新时间:2024-11-12 12:57
C8051F并口下载器原理图
C8051F并口下载器原理图(点击放大):
[电源管理]
基于C8051F021单片机和SD2300芯片实现海流数据采集存储接口的设计
随着科技的高速发展,现代工业测控领域的很多应用中都需要实现大量数据的定时采集存储。以为海流计设计的海流数据采集存储接口电路为例,介绍一种定时采集存储系统的工作原理及其实现方法。 1 总体结构 在很多情况下,尤其是恶劣的工作环境下,高性能的单片机和大容量的Flash存储器是数据采集存储系统的最佳选择,本文介绍的系统也是基于这样的考虑。系统硬件结构并不复杂,包括高性能单片机C8051F021、实时时钟芯片SD2300、大容量Flash存储器K9G8G08及其外围电路,如图1所示。工作原理也较为简单,通过串口将单片机C8051F021与海流计相连,通过对单片机的编程实现对海流计的控制和使用。同时,为了实现定时采集和数据存储的功能,还
[单片机]
8051单片机基础4:数据存储类型(data,idata,xdata,code)
参考来源:Keil Help uVision Help Cx51 Compiler User’s Guide Language Extensions Memory Types 存储类型 Cx51编译器可以访问8051的所有存储区域,声明变量时可以指定分配的存储区,也可以基于内存模型配置进行隐式分配。 实际项目中经常用到的是 xdata, code 使用方法 变量声明/定义时,添加关键字data,idata,bdata,pdata,xdata,code。 unsigned char data var1; unsigned char code text = ENTER PARAMETER: ; unsigne
[单片机]
单片机原理的详细介绍
8051单片机包含中央处理器、数据存储器(RAM)、定时/计数器、程序存储器(ROM)、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别对其原理加以说明: ·数据存储器(RAM): 8051内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。 ·中央处理器: 中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统
[单片机]
12232c液晶显示和8051单片机的接口c语言程序
以下为彭总编写的c语言程序,我用过了!赫赫!!在atmega128中写通讯协议的头四位数字时好像不能分开一位一位的送,而是要把它当作一个16进制的整体移位写入!程序中的comm为写0表示写12232c的指令,dat为1表示写数据。cs,sclk,std分别为片选、时钟、及数据io口,可用sbit指令定义。 /************lcd初始化程序**************/ void init_lcd (void) { wr_lcd (comm,0x30); /*30---基本指令集动作,8位控制接口*/ wr_lcd (comm,0x01); /*清
[单片机]
LED--8051驱动测试程序
/************************************************ 功能:LED--8051驱动测试程序(共阴极) 使用:调用函数 LEDn_display(*****) n表示用几个数码管显示n =4 参数传递跟据具体情况确定 时间:2011年1月7日 ************************************************/ #include reg51.h #include intrins.h #define uint unsigned int #define uchar unsigned char sbit dula=P2^
[单片机]
8051单片机的串行通信
计算机的数据交换有两种方式,分别是串行通信和并行通信。 并行通信:我们以8位(一个字节)的数据为例,在并行通信下,8位数据是同时传输的,同时发送,同时接受。所以通信的双方需要一个公共的时钟信号。并行传输速度快,效率高。但是传输需要的数据线多,传输距离近。 串行通信:仍然以8位的数据为例,每一位数据都是分时发送的,接收方也是一位一位的接受。串行通信只需要一根数据线就可以,成本低。适用于大规模和远距离的数据传输。 异步传输模式:每个传输的字符都用起始位和终止位包装起来,在字符间允许有长短不一的间隙。 同步传输模式:一个数据块包含着许多连续的字符,在字符之间没有空闲。同步传输可以方便的实现某一通信协议要求的格式。 波
[单片机]
关于PLC编程的12个建议
编程建议 1、PLC和上位机(或触摸屏)组成监控系统时,在画面上很多时候需要有“手动”、“自动”等控制模式(一般都是多个只能一个时)。在程序里面可以用“MOV”指令。如:当选择“手动”就将常数1 MOV到一个寄存器VB10里面,当选择“自动”就将2 MOV到同一寄存器VB10。只要判断寄存器的数据是多少,就知道系统是那种控制方式。这样的思路好处是容易理解,不需要互锁之类的麻烦程序。 2、程序有模拟量控制时,如果读取的模拟量基本上没误差,可以采取时间滤波的方式,延时一段时间。如果读取的数据误差很大,就需要采取其它的滤波方式,如算平均值等。可以查阅相关的资料。 3、在程序调试过程中(特别是设备改造时,你的程序是加入到原来设备的程序中时
[嵌入式]