| |
SOFTWARE
Here is some of the software that I have written, most of it written in Python . All of the software below is freeware.
Sam_I_Am is a program for communicating with Atmel AT91SAM7S microcontrollers on Linux systems using a USB connection.
PFAVR is an ANS Forth implementation for the Atmel AVR microcontroller. It requires 13Kwords of FLASH and 32Kbytes of external RAM, thus can function in an ATmega64 or ATmega128 with external RAM.
| Current Version |
1.2 (February 28/04) |
| Platforms |
Atmel ATmega64/ATmega128 embedded systems |
| Requirements |
32Kbytes of external RAM, 13kwords FLASH |
| Download |
pfavr-1.2.tar.gz [759K] |
| Documentation |
PFAVR Documentation |
PF11 is an ANS Forth implementation for the 68HC11 microcontroller. It can reside in 32K of RAM, or be programmed into ROM/EPROM. Intended to either replace or coexist with the BUFFALO monitor, Forth allows both interactive use and off-line program development.
| Current Version |
1.0 (July 18/03) |
| Platforms |
68HC11 embedded systems |
| Requirements |
32K of RAM or 32K ROM+32K RAM |
| Download |
pf11-1.0.tar.gz [824K] |
| Documentation |
PF11 Documentation |
GerbMerge is a program for combining (panelizing) Gerber/Excellon files for printed circuit board manufacturing. It can panelize copies of the same job, different jobs, and can also rotate jobs. For installation instructions, see the documentation.
EVBU is a simulator for the 68HC11 microcontroller. Within a GUI, it implements a command line interface, very similar to the BUFFALO monitor, and a waveform interface for simulating I/O. For installation instructions, see the documentation.
Version 0.4 of EVBU was a command-line-only program. You can download evbu0.4.zip [59K] if you prefer this older version.
Pyepix is a wrapper for the ePiX plotting library for LaTeX. It allows publication-quality plots to be drawn using the underlying ePiX routines but without the need for writing C++ code.
PyNKOS is a tool for exploring the patterns discussed in Stephen Wolfram's book, "A New Kind of Science."
PyMat is an interface between NumPy and a MATLAB engine session. It can be used to support NumPy's functionality with the features of MATLAB. An example module is included that presents a very simple interface to MATLAB's plotting functions. This allows you to, for example, plot NumPy arrays in a MATLAB plot window.
There is a PyMat project at SourceForge with more up-to-date files, including a distutils-based installer.
| Current Version |
6-1.0.4 (May 31, 2005) |
| Platforms |
UNIX, Win32 |
| Requirements |
NumPy, MATLAB V5 |
| Download |
|
| Documentation |
PyMat Documentation |
Dot is a tiny module that displays a "progress bar" in a text-mode console (DOS box in Win32). It is meant to be used as a means of keeping a user informed about an algorithm's progress if it will take a long time. The module is hopefully self-documenting. Have a look at the test code at the bottom of the file for example usage.
Note that the module name dot conflicts with the dot function of NumPy. Rename the file to dots.py (or something...) if this causes problems.
| Platforms |
All OS's with text-mode consoles |
| Requirements |
None |
| Download |
dot.py [1.5K] |
Permute is a function that computes all permutations of the elements in a list of lists. This is also known as the Cartesian product.
| Platforms |
All |
| Requirements |
None |
| Download |
permute.py [3K] |
Safestruct serves as a base class for any class that wants to protect its members from misspelling. Since Python allows adding attributes to a class object at runtime, it is a simple mistake to assign to a non-existent attribute somewhere in your code, inadvertently creating a new attribute, and quietly introducing an error that may be very hard to find. The Safestruct class traps all accesses to your class and raises an exception when an assignment is made to a non-existent attribute.
|