热搜关键词: 机器人电路基础模拟电子技术matlablinux内核

rar

epp(不错的并口资料)

  • 1星
  • 2013-07-01
  • 36.9KB
  • 需要2积分
  • 0次下载
标签: epp

epp

不错的并口资料

epp

下面是我的epp代码,很简单,通过pc机程序控制led亮和灭。附件有份并口资料和我自己的一点总结及本代码的状态机

`timescale  1ns  /  1ps

////////////////////////////////////////////////////////////////////////////////

//  Company: 

//  Engineer:

//

//  Create  Date:  16:57:05  10/24/05

//  Design  Name: 

//  Module  Name:  EPP_and_LED

//  Project  Name: 

//  Target  Device: 

//  Tool  versions: 

//  Description:

//

//  Dependencies:

// 

//  Revision:

//  Revision  0.01  -  File  Created

//  Additional  Comments:

// 

////////////////////////////////////////////////////////////////////////////////

module  EPP_and_LED(Write,  Data,Interrupt,  Wait,  DataStrobe,  Reset,  AddressStrobe,rst,led,clk/*,t1,t2,t3,t4*/);

input  Write;

inout  [7:0]  Data;

output  Interrupt;

output  Wait;

input  DataStrobe;

input  Reset;

input  AddressStrobe;

wire  [7:0]  Data;

/*  output  t1,t2,t3,t4;  //测试信号,用于map到测试用的跳线

wire  t1,t2,t3,t4;  */

input  clk;//input  clock  24M

reg  Wait,Interrupt;

input  rst;//reset  switch  ,reference  PCB,active  low

output  led;//led  control,1  to  switch  led  on

reg  led;

parameter  Idle=3'b000,  Wait_End_AddrWrite=3'b001,  Wait_End_AddrRead=3'b010,

Wait_End_DataWrite=3'b011,  Wait_End_DataRead=3'b100;

//EPP  state  machine,reference  EPP  specification

//internal  reg

reg  [2:0]  state;

reg  [7:0]  addr;  //用于存储EPP地址写

reg  [7:0]  datain;//用于存储EPP数据写

reg  [7:0]  dataout;  //用于向EPP  Data  输出,可以是数据或者地址

always  @  (posedge  clk)

if((!rst)||  (!Reset))  //on  PCB  rst  or  Rest  from  EPP

begin

state<=Idle;

addr<=0;

datain<=0;

dataout<=0;

led<=1;

Wait<=0;

Interrupt<=0;

end

else  //state  machine

begin

led<=datain[0];

case(state)

Idle:  begin

Wait<=0;

state<=Idle;

if(AddressStrobe==0)

begin

if(Write==1) 

begin 

//put  address  in  Data  bus  here

dataout<=8'b1011_1111;

Wait<=1;

state<=Wait_End_AddrRead;

end

else  if(Write==0) 

begin 

addr<=Data;

Wait<=1;

state<=Wait_End_AddrWrite;

end

end

else  if(DataStrobe==0)

begin

if(Write==1) 

begin 

//put  data  in  Data  bus  here

dataout<=8'b1111_1011;

Wait<=1; 

state<=Wait_End_DataRead;

end

else  if(Write==0) 

begin 

datain<=Data;

Wait<=1; 

state<=Wait_End_DataWrite;

end

end 

end

Wait_End_AddrRead:begin

if(AddressStrobe==1)

begin

Wait<=0;

state<=Idle;

end 

end

Wait_End_AddrWrite:begin

if(AddressStrobe==1)

begin

Wait<=0;

state<=Idle;

end 

end

Wait_End_DataRead:begin

if(DataStrobe==1)

begin

Wait<=0;

state<=Idle;

end

end

Wait_End_DataWrite:begin

if(DataStrobe==1)

begin

Wait<=0;

state<=Idle;

end

end

default:  state<=Idle;

endcase

end

assign  Data[7:0]=((state==Wait_End_DataRead)||(state==Wait_End_AddrRead))?  dataout[7:0]:8'bz;

/*assign  t1=Write;

assign  t2=DataStrobe;

assign  t3=Wait;

assign  t4=dataout[0];  */

endmodule 

展开预览

评论

登录/注册

意见反馈

求资源

回顶部

推荐内容

开源项目推荐 更多

热门活动

热门器件

随便看看

  • 【我与TI的结缘】+TMS320C2000系列芯片使用心得体会
    [align=left]我接触德州仪器的第一款DSP芯片的型号是tms320f240,记得2002的下半年因工作需要协调原因去交大电工电气实验室,发现一位被保送上研究生的大四学生自己做的tms320f240板子,是按照官方的EVM板子DIY的,刚开始焊接的最小系统。当时的开发工具和电脑连接的通信接口好像ISA,TI原装的,当时应该比较贵的!需要安装在电脑的主板上的,开发软件可能是cc4.0版本,我
  • 帮忙请推荐,谢谢
    加拿大工业设备公司招聘:Software Engineer-ShanghaiJob Description:精通Labwindows/CVI V7.0以及C精通Windows操作系统精通Microsoft access精通软件系统的结构设计拥有户界面设计,图表处理和DSP编程方面的丰富知识和实践经验拥有软件开发工具(编译器,汇编程序器,调试器,in-circuit emulators等)方面的丰富
  • 提一个老问题:flashloader无法下载
    芯片:STM32F101C8T61、按照操作步骤,可以进行到程序下载,但是在下载时先出现一个1%比例的蓝色进程条,然后很快就是红色进程条,提示Operationfailed,我用示波器观察101的USART1的接收,可以看到信号,但是USART1的发送没有信号,包括连接过程,感到疑惑的是,发送端没有任何数据发送,芯片是如何连接成功的?2、在IAREWARM4.42A版本中,生成何种文件?是在Opt
  • 哪位有12V,5A直流电源的输入保护和缓启动电路?
  • 【STM32WB55 测评】BLE_p2pServer工程提取&编译
    CubeWB 当中提供了不少的例子,可以给软件开发环境直接使用。支持三种IDE——IAR EWARM, MDK-ARM 和 SW4STM32. 后者是用GCC编译器的。我没有这些开发环境,一贯是用GCC+make直接搞,所以要费一番工夫了。当然是利用 SW4STM32 例子作为参考,这里有GCC需要用到的启动文件和链接脚本。  先练练手,就自己编译 Nucleo 上面带的 BLE_p2pServe
  • 场效应管的作用
  • DA14580DEVKT -----------试用的板子到手了!
  • 70个IC封装术语
  • STC单片机内部"假"的EEPROM存long型数一定要先擦,才能写》》》
  • ST最新传感器驱动

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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