OpenCores
URL https://opencores.org/ocsvn/usb_fpga_1_2/usb_fpga_1_2/trunk

Subversion Repositories usb_fpga_1_2

[/] [usb_fpga_1_2/] [trunk/] [include/] [ztex-isr.h] - Diff between revs 5 and 8

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 5 Rev 8
Line 1... Line 1...
/*!
/*!
   ZTEX Firmware Kit for EZ-USB Microcontrollers
   ZTEX Firmware Kit for EZ-USB FX2 Microcontrollers
   Copyright (C) 2009-2010 ZTEX e.K.
   Copyright (C) 2009-2011 ZTEX GmbH.
   http://www.ztex.de
   http://www.ztex.de
 
 
   This program is free software; you can redistribute it and/or modify
   This program is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License version 3 as
   it under the terms of the GNU General Public License version 3 as
   published by the Free Software Foundation.
   published by the Free Software Foundation.
Line 21... Line 21...
*/
*/
 
 
#ifndef[ZTEX_ISR_H]
#ifndef[ZTEX_ISR_H]
#define[ZTEX_ISR_H]
#define[ZTEX_ISR_H]
 
 
xdata BYTE ep0_prev_setup_request = 0xff;
__xdata BYTE ep0_prev_setup_request = 0xff;
xdata BYTE ep0_vendor_cmd_setup = 0;
__xdata BYTE ep0_vendor_cmd_setup = 0;
 
 
xdata WORD ISOFRAME_COUNTER[4] = {0, 0, 0, 0};      // counters for iso frames automatically reset by sync frame request
__xdata WORD ISOFRAME_COUNTER[4] = {0, 0, 0, 0};    // counters for iso frames automatically reset by sync frame request
 
 
/* *********************************************************************
/* *********************************************************************
   ***** toggleData ****************************************************
   ***** toggleData ****************************************************
   ********************************************************************* */
   ********************************************************************* */
static void resetToggleData () {
static void resetToggleData () {
Line 108... Line 108...
}
}
 
 
/* *********************************************************************
/* *********************************************************************
   ***** SUDAV_ISR *****************************************************
   ***** SUDAV_ISR *****************************************************
   ********************************************************************* */
   ********************************************************************* */
static void SUDAV_ISR () interrupt
static void SUDAV_ISR () __interrupt
{
{
    BYTE a;
    BYTE a;
    ep0_prev_setup_request = bRequest;
    ep0_prev_setup_request = bRequest;
    SUDPTRCTL = 1;
    SUDPTRCTL = 1;
 
 
Line 320... Line 320...
}
}
 
 
/* *********************************************************************
/* *********************************************************************
   ***** SOF_ISR *******************************************************
   ***** SOF_ISR *******************************************************
   ********************************************************************* */
   ********************************************************************* */
void SOF_ISR() interrupt
void SOF_ISR() __interrupt
{
{
        EXIF &= ~bmBIT4;
        EXIF &= ~bmBIT4;
        USBIRQ = bmBIT1;
        USBIRQ = bmBIT1;
}
}
 
 
/* *********************************************************************
/* *********************************************************************
   ***** SUTOK_ISR *****************************************************
   ***** SUTOK_ISR *****************************************************
   ********************************************************************* */
   ********************************************************************* */
void SUTOK_ISR() interrupt
void SUTOK_ISR() __interrupt
{
{
        EXIF &= ~bmBIT4;
        EXIF &= ~bmBIT4;
        USBIRQ = bmBIT2;
        USBIRQ = bmBIT2;
}
}
 
 
/* *********************************************************************
/* *********************************************************************
   ***** SUSP_ISR ******************************************************
   ***** SUSP_ISR ******************************************************
   ********************************************************************* */
   ********************************************************************* */
void SUSP_ISR() interrupt
void SUSP_ISR() __interrupt
{
{
        EXIF &= ~bmBIT4;
        EXIF &= ~bmBIT4;
        USBIRQ = bmBIT3;
        USBIRQ = bmBIT3;
}
}
 
 
/* *********************************************************************
/* *********************************************************************
   ***** URES_ISR ******************************************************
   ***** URES_ISR ******************************************************
   ********************************************************************* */
   ********************************************************************* */
void URES_ISR() interrupt
void URES_ISR() __interrupt
{
{
        EXIF &= ~bmBIT4;
        EXIF &= ~bmBIT4;
        USBIRQ = bmBIT4;
        USBIRQ = bmBIT4;
}
}
 
 
/* *********************************************************************
/* *********************************************************************
   ***** HSGRANT_ISR ***************************************************
   ***** HSGRANT_ISR ***************************************************
   ********************************************************************* */
   ********************************************************************* */
void HSGRANT_ISR() interrupt
void HSGRANT_ISR() __interrupt
{
{
        EXIF &= ~bmBIT4;
        EXIF &= ~bmBIT4;
        USBIRQ = bmBIT5;
        USBIRQ = bmBIT5;
}
}
 
 
/* *********************************************************************
/* *********************************************************************
   ***** EP0ACK_ISR ****************************************************
   ***** EP0ACK_ISR ****************************************************
   ********************************************************************* */
   ********************************************************************* */
void EP0ACK_ISR() interrupt
void EP0ACK_ISR() __interrupt
{
{
        EXIF &= ~bmBIT4;        // clear USB interrupt flag
        EXIF &= ~bmBIT4;        // clear USB interrupt flag
        USBIRQ = bmBIT6;        // clear EP0ACK IRQ
        USBIRQ = bmBIT6;        // clear EP0ACK IRQ
}
}
 
 
/* *********************************************************************
/* *********************************************************************
   ***** EP0IN_ISR *****************************************************
   ***** EP0IN_ISR *****************************************************
   ********************************************************************* */
   ********************************************************************* */
static void EP0IN_ISR () interrupt
static void EP0IN_ISR () __interrupt
{
{
    EUSB = 0;                    // block all USB interrupts
    EUSB = 0;                    // block all USB interrupts
    ep0_payload_update();
    ep0_payload_update();
    switch ( ep0_prev_setup_request ) {
    switch ( ep0_prev_setup_request ) {
        EP0_VENDOR_REQUESTS_DAT;
        EP0_VENDOR_REQUESTS_DAT;
Line 392... Line 392...
}
}
 
 
/* *********************************************************************
/* *********************************************************************
   ***** EP0OUT_ISR ****************************************************
   ***** EP0OUT_ISR ****************************************************
   ********************************************************************* */
   ********************************************************************* */
static void EP0OUT_ISR () interrupt
static void EP0OUT_ISR () __interrupt
{
{
    EUSB = 0;                    // block all USB interrupts
    EUSB = 0;                    // block all USB interrupts
    if ( ep0_vendor_cmd_setup ) {
    if ( ep0_vendor_cmd_setup ) {
        ep0_vendor_cmd_setup = 0;
        ep0_vendor_cmd_setup = 0;
        ep0_payload_remaining = (SETUPDAT[7] << 8) | SETUPDAT[6];
        ep0_payload_remaining = (SETUPDAT[7] << 8) | SETUPDAT[6];
Line 421... Line 421...
 
 
 
 
/* *********************************************************************
/* *********************************************************************
   ***** EP1IN_ISR *****************************************************
   ***** EP1IN_ISR *****************************************************
   ********************************************************************* */
   ********************************************************************* */
void EP1IN_ISR() interrupt
void EP1IN_ISR() __interrupt
{
{
    EXIF &= ~bmBIT4;
    EXIF &= ~bmBIT4;
    EPIRQ = bmBIT2;
    EPIRQ = bmBIT2;
 
 
}
}
 
 
/* *********************************************************************
/* *********************************************************************
   ***** EP1OUT_ISR ****************************************************
   ***** EP1OUT_ISR ****************************************************
   ********************************************************************* */
   ********************************************************************* */
void EP1OUT_ISR() interrupt
void EP1OUT_ISR() __interrupt
{
{
    EXIF &= ~bmBIT4;
    EXIF &= ~bmBIT4;
    EPIRQ = bmBIT3;
    EPIRQ = bmBIT3;
}
}
 
 
/* *********************************************************************
/* *********************************************************************
   ***** EP2_ISR *******************************************************
   ***** EP2_ISR *******************************************************
   ********************************************************************* */
   ********************************************************************* */
void EP2_ISR() interrupt
void EP2_ISR() __interrupt
{
{
    EXIF &= ~bmBIT4;
    EXIF &= ~bmBIT4;
    EPIRQ = bmBIT4;
    EPIRQ = bmBIT4;
}
}
 
 
/* *********************************************************************
/* *********************************************************************
   ***** EP4_ISR *******************************************************
   ***** EP4_ISR *******************************************************
   ********************************************************************* */
   ********************************************************************* */
void EP4_ISR() interrupt
void EP4_ISR() __interrupt
{
{
    EXIF &= ~bmBIT4;
    EXIF &= ~bmBIT4;
    EPIRQ = bmBIT5;
    EPIRQ = bmBIT5;
}
}
 
 
/* *********************************************************************
/* *********************************************************************
   ***** EP6_ISR *******************************************************
   ***** EP6_ISR *******************************************************
   ********************************************************************* */
   ********************************************************************* */
void EP6_ISR() interrupt
void EP6_ISR() __interrupt
{
{
    EXIF &= ~bmBIT4;
    EXIF &= ~bmBIT4;
    EPIRQ = bmBIT6;
    EPIRQ = bmBIT6;
}
}
 
 
/* *********************************************************************
/* *********************************************************************
   ***** EP8_ISR *******************************************************
   ***** EP8_ISR *******************************************************
   ********************************************************************* */
   ********************************************************************* */
void EP8_ISR() interrupt
void EP8_ISR() __interrupt
{
{
    EXIF &= ~bmBIT4;
    EXIF &= ~bmBIT4;
    EPIRQ = bmBIT7;
    EPIRQ = bmBIT7;
}
}
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.