LOGIN   :::   RECOVER PASS   :::   GET ACCOUNT    
Browse
  • Projects
  • Code (CVS)
  • Forums
  • News
  • Articles
  • Polls
  •  
    OpenCores
  • FAQ
  • CVS HowTo
  • Mission
  • Media
  • Tools
  • Sponsors
  • Mirrors
  • Logos
  • Contact us
  •  
    Tools
  • Search
      
  • Download Cores (CVSGet)
  •  
    More
  • Wishbone
  • Perlilog
  • EDA tools
  • OpenTech CD
  •  
    Navigation: All forums > Cvs-checkins > Message List > Message Post

    Message

    Reply | Reply all
    Date Prev | Date Next | Thread Prev | Thread Next Date Index | Thread Index

    From: cvs at opencores.org<cvs@o...>
    Date: Mon Feb 25 10:13:59 CET 2008
    Subject: [cvs-checkins] MODIFIED: usb_dongle_fpga ...
    Top
    Date: 00/08/02 25:10:13

    Modified: usb_dongle_fpga/sw/Uspp SerialPort_win.py uspp.py
    SerialPort_linux.py
    Log:
    changed version code to 04 and added spy mode by puting jumpers on header and also implemented LPC Firmware Hub read to enable this booting mode (selectable by header jumper see documentation)


    Revision Changes Path
    1.4 usb_dongle_fpga/sw/Uspp/SerialPort_win.py

    http://www.opencores.org/cvsweb.shtml/usb_dongle_fpga/sw/Uspp/SerialPort_win.py.diff?r1=1.3&r2=1.4

    (In the diff below, changes in quantity of whitespace are not shown.)

    Index: SerialPort_win.py
    ===================================================================
    RCS file: /cvsroot/nuubik/usb_dongle_fpga/sw/Uspp/SerialPort_win.py,v
    retrieving revision 1.3
    retrieving revision 1.4
    diff -u -b -r1.3 -r1.4
    --- SerialPort_win.py 26 Feb 2007 16:53:51 -0000 1.3
    +++ SerialPort_win.py 25 Feb 2008 09:13:58 -0000 1.4
    @@ -1,4 +1,4 @@
    -# -*- coding: iso-8859-1 -*-
    +# -*- coding: ISO-8859-1 -*-

    ##########################################################################
    # USPP Library (Universal Serial Port Python Library)
    @@ -43,8 +43,7 @@
    See also uspp module docstring.

    """
    -import sys
    -from struct import *
    +
    from win32file import *
    from win32event import *
    import win32con
    @@ -54,7 +53,8 @@
    """Exception raise in the SerialPort methods"""
    def __init__(self, args=None):
    self.args=args
    -
    + def __str__(self):
    + return repr(self.args)

    class SerialPort:
    """Encapsulate methods for accesing to a serial port."""
    @@ -105,7 +105,7 @@
    these values in this order.

    """
    - self.wait = 1024
    +
    self.__devName, self.__timeout, self.__speed=dev, timeout, speed
    self.__mode=mode
    self.__params=params
    @@ -129,7 +129,9 @@
    self.__reopen = self.__reopen + 1
    if self.__reopen > 32:
    print "Port does not exist..."
    - sys.exit()
    + raise SerialPortException('Port does not exist...')
    + break
    + #sys.exit()
    self.__configure()

    def __del__(self):
    @@ -224,7 +226,7 @@

    s = ''
    while not '\n' in s:
    - s = s+SerialPort.read1(self,1)
    + s = s+SerialPort.read(self,1)

    return s

    @@ -237,62 +239,6 @@
    # Wait for the write to complete
    WaitForSingleObject(overlapped.hEvent, INFINITE)

    - def write_2bytes(self, msb,lsb):
    - """Write one word MSB,LSB to the serial port MSB first"""
    - overlapped=OVERLAPPED()
    - overlapped.hEvent=CreateEvent(None, 0,0, None)
    - WriteFile(self.__handle, pack('BB', msb, lsb), overlapped)
    - # Wait for the write to complete
    - #WaitForSingleObject(overlapped.hEvent, INFINITE)
    -
    - def write_word(self, word):
    - """Write one word MSB,LSB to the serial port MSB first"""
    - overlapped=OVERLAPPED()
    - overlapped.hEvent=CreateEvent(None, 0,0, None)
    - WriteFile(self.__handle, pack('h', word), overlapped)
    - # Wait for the write to complete
    - #WaitForSingleObject(overlapped.hEvent, INFINITE)
    -
    - def write_buf_cmd(self, buffer):
    - """Write one word MSB,LSB to the serial port MSB first"""
    - a=0
    - if (len(buffer) < 44): # if buffer is shorter than expected then pad with read array mode commands
    - i=0 - while i<len(buffer): - print '0x%02x'%(ord(buffer[i])) - i+=1 - while(a < len(buffer)): - overlapped=OVERLAPPED() - overlapped.hEvent=CreateEvent(None, 0,0, None) - if a < 10: - WriteFile(self.__handle, pack('2c', buffer[a], buffer[a+1]), overlapped) - elif a < len(buffer)-2: - WriteFile(self.__handle, pack('2c', buffer[a+1], buffer[a]), overlapped) - elif len(buffer)==2: - WriteFile(self.__handle, pack('2c', buffer[a], buffer[a+1]), overlapped) - else: - WriteFile(self.__handle, pack('2c', buffer[a], chr(0xFF)), overlapped) - a+=2 - else: - overlapped=OVERLAPPED() - overlapped.hEvent=CreateEvent(None, 0,0, None) - #first 10 bytes are in correct order + 32 data bytes are in wrong order and + 2 confirm bytes are in correct order - WriteFile(self.__handle, pack('44c', - buffer[0], buffer[1], buffer[2], buffer[3], buffer[4], buffer[5], buffer[6], buffer[7], - buffer[8], buffer[9], buffer[11], buffer[10], buffer[13], buffer[12], buffer[15], buffer[14], - buffer[17], buffer[16], buffer[19], buffer[18], buffer[21], buffer[20], buffer[23], buffer[22], - buffer[25], buffer[24], buffer[27], buffer[26], buffer[29], buffer[28], buffer[31], buffer[30], - buffer[33], buffer[32], buffer[35], buffer[34], buffer[37], buffer[36], buffer[39], buffer[38], - buffer[41], buffer[40], buffer[42], buffer[43] - ), overlapped) - - # Wait for the write to complete - #WaitForSingleObject(overlapped.hEvent, INFINITE) - n = 0 - while (n < self.wait): - n += 1; - - def inWaiting(self): """Returns the number of bytes waiting to be read""" flags, comstat = ClearCommError(self.__handle) 1.3 usb_dongle_fpga/sw/Uspp/uspp.py http://www.opencores.org/cvsweb.shtml/usb_dongle_fpga/sw/Uspp/uspp.py.diff?r1=1.2&r2=1.3 (In the diff below, changes in quantity of whitespace are not shown.) Index: uspp.py =================================================================== RCS file: /cvsroot/nuubik/usb_dongle_fpga/sw/Uspp/uspp.py,v retrieving revision 1.2 retrieving revision 1.3 diff -u -b -r1.2 -r1.3 --- uspp.py 26 Feb 2007 16:54:54 -0000 1.2 +++ uspp.py 25 Feb 2008 09:13:58 -0000 1.3 @@ -1,6 +1,6 @@ #! /usr/bin/env python +# -*- coding: ISO-8859-1 -*- -# -*- coding: iso-8859-1 -*- ########################################################################## # USPP Library (Universal Serial Port Python Library) @@ -201,7 +201,7 @@ from win32event import * from SerialPort_win import * print "Using VCP FTDI driver" - except ImportError,D2xxPortException: + except ImportError,SerialPortException: print "Python for winiows extensions for COM not found" print "(see https://sourceforge.net/projects/pywin32/)" print "Could not find any usable support for FTDI chip in python" @@ -213,4 +213,4 @@ print "Linux platform detected:" from SerialPort_linux import * else: - sys.exit('Sorry, no implemented for this platform yet') + sys.exit('Sorry, no implementation for this platform yet') 1.3 usb_dongle_fpga/sw/Uspp/SerialPort_linux.py http://www.opencores.org/cvsweb.shtml/usb_dongle_fpga/sw/Uspp/SerialPort_linux.py.diff?r1=1.2&r2=1.3 (In the diff below, changes in quantity of whitespace are not shown.) Index: SerialPort_linux.py =================================================================== RCS file: /cvsroot/nuubik/usb_dongle_fpga/sw/Uspp/SerialPort_linux.py,v retrieving revision 1.2 retrieving revision 1.3 diff -u -b -r1.2 -r1.3 --- SerialPort_linux.py 22 Feb 2007 19:01:13 -0000 1.2 +++ SerialPort_linux.py 25 Feb 2008 09:13:58 -0000 1.3 @@ -1,4 +1,4 @@ -# -*- coding: iso-8859-1 -*- +# -*- coding: ISO-8859-1 -*- ########################################################################## # USPP Library (Universal Serial Port Python Library) @@ -61,7 +61,8 @@ """Exception raise in the SerialPort methods""" def __init__(self, args=None): self.args=args - + def __str__(self): + return repr(self.args) class SerialPort: """Encapsulate methods for accesing to a serial port.""" @@ -115,7 +116,7 @@ initialization. """ - self.wait = 1024 + self.__devName, self.__timeout, self.__speed=dev, timeout, speed self.__mode=mode self.__params=params @@ -133,7 +134,8 @@ self.__reopen = self.__reopen + 1 if self.__reopen > 32: print "Port does not exist..." - sys.exit() + raise SerialPortException('Port does not exist...') + break self.__configure() @@ -255,43 +257,6 @@ os.write(self.__handle, s) - def write_2bytes(self, msb,lsb): - os.write(self.__handle, pack('BB', msb, lsb)) - - def write_word(self, word): - os.write(self.__handle, pack('h', word)) - - def write_buf_cmd(self, buffer): - a=0 - if (len(buffer) < 44): # if buffer is shorter than expected then pad with read array mode commands - while(a < len(buffer)): - if a < 10: - os.write(self.__handle, pack('2c', buffer[a], buffer[a+1])) - elif a < len(buffer)-2: - os.write(self.__handle, pack('2c', buffer[a+1], buffer[a])) - elif len(buffer)==2: - os.write(self.__handle, pack('2c', buffer[a], buffer[a+1])) - else: - os.write(self.__handle, pack('2c', buffer[a],chr(0xFF))) - a+=2; - else: - #first 10 bytes are in correct order + 32 data bytes are in wrong order and + 2 confirm bytes are in correct order - os.write(self.__handle, pack('44c', - buffer[0], buffer[1], buffer[2], buffer[3], buffer[4], buffer[5], buffer[6], buffer[7], - buffer[8], buffer[9], buffer[11], buffer[10], buffer[13], buffer[12], buffer[15], buffer[14], - buffer[17], buffer[16], buffer[19], buffer[18], buffer[21], buffer[20], buffer[23], buffer[22], - buffer[25], buffer[24], buffer[27], buffer[26], buffer[29], buffer[28], buffer[31], buffer[30], - buffer[33], buffer[32], buffer[35], buffer[34], buffer[37], buffer[36], buffer[39], buffer[38], - buffer[41], buffer[40], buffer[42], buffer[43] - )) - - # linux driver is way faster than windows driver total delay needed for flash buffer write is typ 210 us - n = 0 - cyc = self.wait*7 - while (n < cyc): - n += 1; - - def inWaiting(self): """Returns the number of bytes waiting to be read""" data = struct.pack("L", 0)

     
    Copyright (c) 1999 OPENCORES.ORG. All rights reserved.