网友的类8051的MCU_EBI接口

发布者:HeavenlyWonder最新更新时间:2024-07-29 来源: cnblogs关键字:MCU  EBI接口 手机看文章 扫描二维码
随时随地手机看文章

 1 /********************************************************************************************************* 

 2  **                                  All right reserve 2008-2009(C)  

 3  **                           Created & maintained by http://www.edaok.net 

 4  **======================================================================================================= 

 5  ** 模 块 名:   ebi 

 6  ** 描    述:   连接类似于8051MCU外部总线模块, 输出从外部总线上接收的地址, 数据, 写信号线信号, 主要为工 

 7  **             程中的其它模块提供外部总线的地址和数据 

 8  ** 

 9  ** 原 作 者:   Adeko (from http://www.edaok.net) 

10  ** 参 与 者:   (...welcome you join in) 

11  ** 

12  **======================================================================================================= 

13  ********************************************************************************************************/ 

14 module ebi ( 

15     clk, 

16  

17     ebi_ad,  

18     ebi_addr_h,  

19     ebi_wr_n,  

20     ebi_rd_n,  

21     ebi_ale,  

22  

23     we, 

24     data_in, 

25     data_out, 

26     addr_out 

27 ); 

28  

29 input               clk;                                        //  全局时钟 

30 inout   [7:0]       ebi_ad;                                     //  外部总线的地址/数据线 

31 input   [7:0]       ebi_addr_h;                                 //  外部总线高位地址线 

32 input               ebi_wr_n;                                   //  外部总线写信号线 

33 input               ebi_rd_n;                                   //  外部总线读信号线 

34 input               ebi_ale;                                    //  外部总线地址锁存信号线 

35  

36 output              we;                                         //  写信号线上升沿有效信号 

37 input   [7:0]       data_in;                                    //  将要发送到外部总线上的数据 

38 output  [7:0]       data_out;                                   //  从外部总线上接收的数据 

39 output  [15:0]      addr_out;                                   //  从外部总线得到的16位地址线 

40  

41  

42 /* 

43  *  综合成8位锁存器, 当ALE高电平时锁存数据, 锁存外部总线的地址低8位 

44  */ 

45 reg     [7:0]       rAddrL; 

46 wire    [15:0]      wAddr; 

47 always @(ebi_ale or ebi_ad) 

48 begin 

49     if (ebi_ale) begin 

50         rAddrL[7:0] <= ebi_ad[7:0]; 

51     end 

52 end 

53  

54 assign  wAddr[15:0] = {ebi_addr_h[7:0], rAddrL[7:0]};           //  和地址高8位组合比16位地址 

55  

56  

57 /* 

58  *  产生和全局时钟同步的'写'信号上升沿信号,提供其它模块作为写线有效, 可以进行 

59  *  数据读写 

60  */ 

61  

62 wire                wWrNeg; 

63 assign  wWrNeg = ~ebi_wr_n; 

64  

65  

66 /* 

67  *  输出端口 

68  */ 

69 assign  ebi_ad = (~ebi_rd_n)? data_in : 8'hzz;                  //  输出三态, 当'读'信号为高时输出数据 

70  

71 assign  addr_out[15:0] = wAddr[15:0];                           //  输出外部总线的地址 

72  

73 //assign  data_out[7:0]  = rData[7:0];                            //  输出外部总线锁存的数据 

74 assign  data_out[7:0]  = ebi_ad[7:0]; 

75  

76 assign  we = wWrNeg;                                            //  输出写线有效信号, 同步于全局时钟 

77  

78  

79 endmodule 

80  

81 /********************************************************************************************************* 

82  ** End Of File 

83  ********************************************************************************************************/


关键字:MCU  EBI接口 引用地址:网友的类8051的MCU_EBI接口

上一篇:8051单片机中访问int中字节的方法
下一篇:8051汇编语言之LED流水灯

推荐阅读最新更新时间:2024-11-18 16:47

ubuntu 8051 数码管
/**   代码功能:     使数码管动态显示数字,并以十进制进位(计数)   软件环境:     ubuntu+sdcc+sublime+stcflash.py   硬件环境:     普中V2.0 51单片机开发板 */ 1 #include 8051.h 2 typedef unsigned char u8; 3 typedef unsigned int u16; 4 u8 smgduan = { 5 /*0 1 2 3 4 5 6 7 */ 6 0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 7 /*8 9 A
[单片机]
微控制器的抗干扰软件编程方法
    微控制器越来越多地用于各种电子领域,例如自动化、工业控制中。随着金属氧化物半导体的硅晶体管几何尺寸的不断缩小,系统设计中的电磁兼容性(EMC)问题,成为采胳膊小尺寸器件进行设计的必须考虑的主要问题。     在嵌入式微控制器内部,对于内部产生的电磁发射,采用软件措施的效果并不明显。因为发射主要是由CPU中的内部时钟和噪声引起,而且高速开关电流是由微控制器中的多种不同的门所形成。如果芯片版图设计时没有考虑电磁兼容性,那么外部的PCB(印制电路板)将会大大增强那些不必要的噪声信号。所以在很多设计中,采用软件很难消除这种固有的电子发射影响。     但是,在控制器应用中,却可采用软件的方式来抑制外来干扰。本文给出了一些常
[单片机]
<font color='red'>微控制器</font>的抗干扰软件编程方法
基于EFM32GG230单片机的红外无线自学习系统
引言 当前民用遥控设备,主要分为两种遥控方式:红外和无线。无线设备通常采用315 MHz与433 MHz频段无线电或者红外线进行遥控操作。多数遥控器都采用了 一对一 的控制方式,不同设备之间采用的频率一般都不相同,波形长短也不一样,这样就导致人们生活中有很多遥控器,需要控制一个设备的时候,必须寻找到对应的遥控器才能进行相关控制,这给实际生活带来了麻烦与不便。无线自学习转发系统可任意学习无线和红外波形,进行数据压缩后存储到EFM32GG230的FLASH中,将多个遥控器的功能综合到一个系统上,实现 一机多发 。 1 红外无线自学习系统设计概况 1.1 EFM32GG230系列简介 遥控器是需要长期待机的设备控制器件,传统遥控器采
[单片机]
基于EFM32GG230<font color='red'>单片机</font>的红外无线自学习系统
一种基于PIC单片机的便携式磁记忆检测仪
金属构件和零部件发生损坏的主要原因,是各种微观和宏观机械应力集中导致疲劳失效,其基本特征表现为材料在低于静强度极限的交变应力持续作用下,生成多种类型的微观内部缺陷,并逐渐演化为宏观裂纹,裂纹扩展最终导致结构破坏。因此,进行疲劳分析,有效评价应力变形状况,测定未来裂缝发展的位置、大小和方向,成为评价金属零部件与构件结构强度和可靠性的一个重要依据。为了及时准确的找出最大机械应力变形区域,20世纪90年代后期,以杜波夫为代表的俄罗斯学者率先提出一种崭新的诊断技术—金属磁。   便携式磁记忆检测仪以单片机PIC16LF873A为核心,用HMC1052两轴磁阻传感器检测法向分量Hp(y)的X分量和Y分量,经过信号放大后,送单片机P
[单片机]
51单片机与计算机进行通信的实现方法
51单片机 与计算机 通信 首先我们先来了解一下51单片机与计算机进行通信的实现方法。先来看一个实现这个功能的基本电路。 图中的P1就是 仿真 用的一个串口 接口 ,这个仿真电路要实现与计算机通信功能需要用到其他两个软件,一个是虚拟串口驱动软件,另外一个是串口助手软件,这两个软件在网上都很容易找到。我使用的是Virtual Serial Port Driver和丁丁串口助手,你也可以使用自己熟悉的软件,如果找不到或使用,安装这两个软件有问题可以私信。 虚拟串口驱动软件安装后配置两个成对的虚拟串口一个对应仿真电路中的串口接口,一个对应在串口助手软件上,这样就相当于将两个软件通过虚拟串口连接在一起了,将他们配置成相同的串口
[单片机]
51<font color='red'>单片机</font>与计算机进行通信的实现方法
单片机实现DSP在线调试的一种方法
  通常情况下,进行DSP系统开发调试时,都要配备一片SRAM芯片作为片外程序RAM。调试时,使用相应的仿真板将程序下载到SRAM中,这样DSP系统通过运行SRAM中的程序代码来实现相应的操作。可以看到,DSP系统调试时,关键是要将程序下载到SRAM中,因此如果能将程序代码通过单片机写入 SRAM中,则同样可以完成对DSP系统的调试。下面具体介绍在不使用仿真板的情况下,如何运用单片机AT89S5l对DSP芯片 TMS320LF2407进行在线调试。 1 硬件设计 1.1 TMS320LF2407在线调试的实现过程   完成DSP系统的调试,首先要将程序的源代码写入片外SRAM中。此时,单片机与SRAM组成一个系统,单片机可将分离
[嵌入式]
基于单片机设计的脉搏测量仪
0 引言 脉搏测试仪是用来测量一个人脉搏跳动次数的电子仪器,也是心电图的主要组成部分,因此,在现代医学上具有重要的作用。目前检测脉搏的仪器虽然很多,但是能实现精确测量、精确显示且计时功能准确等多种功能的便携式全数字脉搏测量装置很少。随着人们生活环境 和经济条件的改善,以及文化素质的提高,其生活方式,保健需求以及疾病种类、治疗措施等发生了明显的变化。但在目前,我国的心脑血管疾病仍呈逐年上升趋势。其发病率和死亡率均居各种疾病之首,是人类死亡的主要原因之一。因此,认识、预防及早期发现这些疾病是十分必要的。 从脉搏波中提取人体的生理病理信息作为临床诊断和治疗的依据,历来都受到中外医学界的重视。几乎世界上所有的民族都用过“摸脉”作为诊
[单片机]
基于<font color='red'>单片机</font>设计的脉搏测量仪
MSP430单片机的BSL特性
BSL的意义: 1、不用仿真器、编程器,就可以实现内存修改(可以应用为参数修改),程序下载。 能加速程序成熟后的批量生产。方便在板修改程序参数。 2、JATG熔丝烧断后,访问内存的唯一方法。 MSP430启动加载程序(Bootstrap Loader,以下简称BSL)允许用户通过标准的RS-232串行口访问CPU内存,包括Flash和Ram,这项功能为嵌入式应用提供了方便的维护方式。 要使MSP430单片机进入BSL,需要给特定引脚上一个特定时序,接到这个特定时序后,CPU程序指针(PC)指向内存中的0C00H地址处,这是一段1K大小的ROM区(0C00H-1000H),BSL就在这里。 通过BSL对CPU的操作包括:读
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved