|
ROUTINE |
CONTRIBUTOR |
DESCRIPTION |
|
16 bit to 5 decade digits conversion |
Slobodan Mandaric |
With performance
analysis |
|
ADC 16-bit Acquisition |
Salman Ahmed |
Program for Data
Acquisition using ADC with 16 channel. This can be used with any 8-16
bit ADC. |
|
ArcFour (RC4) |
Samuel Ljungkvist |
ARC4 is a secure and
very fast 8-bit stream cipher/psuedo-random number generator, with a
2^1700 interval |
|
Autobaud Detection |
Craig Steiner |
A routine that will
autobaud on the serial port. It will handle 150 to 19200 baud, and 38400
can be added easily by modifying the table. |
|
Basic 52 Plus |
Gary Muhonen |
Basic "Plus" for the
8052. Extended version of the original Basic-52 that was placed into the
public domain by Intel. |
|
BCD 16-bit Conversion |
Salman Ahmed |
Routine for 16-bit hex
to BCD conversion. Accepts a 16-bit binary number in R1,R2 and returns 5
digit BCD in R7,R6,R5,R4,R3(upto 64K) |
|
BCD 16-bit Conversion |
Bruno Marcio |
16-bit hex to BCD
conversion. Very well documented. |
|
BCD 24-bit Conversion |
Oleg Sergeev |
Routines for convert
24-bit binary to 4-byte BCD (three algorithms - Gorner and LUTs) |
|
BCD 8-bit conversion |
Craig Steiner |
Short function which
converts a single 8-bit value into two BCD digits and another function
which does the reverse. |
|
Buttons with debounce |
Dave Fletcher |
Detects state changes
and performs debounce for push buttons. |
|
Byte to ASCII |
Jose Orlando T. Ribeiro |
Converts 1 byte in
accumulator to two ASCII characters representing the 2 hex digits. |
|
CRC 16-bit |
John Wren |
A CCITT-16 CRC
calculator. The source contains both the calculated (smaller but slower)
version, and the table driven (faster but larger) version. |
|
CRC 8-bit |
John Wren |
A CCITT-8 CRC
calculator. The source contains both the calculated (smaller but slower)
version, and the table driven (faster but larger) version. |
|
Decimal to binary |
Babar Latif |
Converts a 5-digit
decimal number to a 3-byte binary value. Includes example code showing
how to use the routine. |
|
Decrement DPTR |
Craig Steiner |
Decrements the value of
DPTR as if it were a DEC DPTR instruction. |
|
DES De/encryption |
Kiwi Chen |
DES
encryption/decryption used in IC smart cards. Software hasn't been
validated and lacks in-line documentation. |
|
Extended opcodes |
José Félix Dيaz Ivorra |
Very usefull macros that
acts like extended opcodes like: Jump if equal, jump if greater, jump if
greater or equal... |
|
Filter by convolution |
Igor Mikhaylyk |
Low-pass signal
filtering by convolution |
|
Floating Point '51 |
Jerson Fernandes |
Floating point library
for the 8052. |
|
Frequency counter |
Thomas Zepf |
A frequency counter.
Determines the frequency of the input on a given I/O line. |
|
Hex/Dec Convertor w/ LCD |
Jacek Bogusz |
rogram has a hex to
decimal conversion routine, a decimal to ASCII converter, and a 4x40 LCD
driver. |
|
Intel HEX file to Binary and IAP |
José Félix Dيaz Ivorra |
Converts from the intel
.hex format to binary. It needs external ram. And Program the flash in
T89c51RD2 and AT89c51RD-ED2. Comments are in spanish, if there are
someone interested i will translate to english. |
|
Interrupt-based key read w/ debounce |
Jim Flanagan |
A state-based interrupt
routine that can be used to read and debounce keypresses on up to 8
keys. |
|
Keyboard Routines |
Gabriel Lour |
AT-style keyboard
scancode to ascii conversion and detection of all kinds of keys. It
sends commands to the keyboard too, so you can toggle the leds, reset,
etc. |
|
LCD (44780) Routines |
John Wren |
A number of functions
which initialize a standard Hitachi HD44100/HD44780 LCD display and
allows a program to write commands and/or straight text to the display. |
|
lcd and keypad assembely routines |
Mehdi |
a program for scanning
keypad and all lcd routines. |
|
Math Routines |
W G Marshall |
A collection of math
routines including 8-bit, 16-bit, 32-bit signed and unsigned addition,
subtraction, multiplication, and division. Very nice code library with
heavy in-line documentation! Been looking for multi-byte divide? Here it
is. |
|
Misc. Functions |
John Wren |
Lots of useful functions
(Add/subtract DPTR, BCD/Ascii conversion, etc.) |
|
Simulate multiple DPTRs |
Reg Drake |
Allows a program to
operate as if it had multiple DPTRs, even on a standard 8051 that has
only a single DPTR. |
|
CODE - 'C' |
|
ROUTINE |
CONTRIBUTOR |
DESCRIPTION |
|
Absolute Encoder Positioner |
Jacek Bogusz |
How to connect and drive
absolute position encoder with SSI serial interface. The encoder has
been made by Siemens (6FX2001-5FS12). Archive contains: 1) schematic, 2)
source in C and Assembler |
|
connect lcd ( 8*1 untill 20*4 ) with 7 b |
Hossein Vismehe |
connect lcd ( 8*1 untill
20*4 ) with 7 bit |
|
Graphic LCD with AVR |
Hossein Vismehe |
128 * 64 Graphic LCD win
ATMEGA32 and other |
|
RC5 Decoder |
Thomas Zepf |
A simple RC5 decoder
written in 'C'. Written to emulate a SAA3049. |
|
Serial I/O Routines |
Mark A. Odell |
Ring buffered,
interrupt-driven UART driver, written in Keil 'C'. |
|
HARDWARE - OTHER |
|
ROUTINE |
CONTRIBUTOR |
DESCRIPTION |
|
Freeram library |
Jez Smith |
VHDL library for
ram,dualport ram,syncronous and asyncronous FIFO functions |
|
Mods for T51 8051 compatable controller |
Jez Smith |
New multiply divide +
dual port ram |
|
Quad Decoder |
Jez Smith |
Hardware quadrature
decoder with digital filtered inputs suitable for implementation in a
small CPLD. |
|
simple 64x64 8 colour vga controller |
Jez Smith |
Altera FPGA based VGA
controller. |
|
Switch debouncer |
Jez Smith |
Hardware switch
debouncer with tristateable outputs |
|
APPLICATIONS -
WINDOWS/PC |
|
ROUTINE |
CONTRIBUTOR |
DESCRIPTION |
|
perl code and test bench for fractional |
Jez Smith |
perl code and testbench
to generate fractional clock dividers |
|
APPLICATIONS - LINUX |
|
ROUTINE |
CONTRIBUTOR |
DESCRIPTION |
|
Linux terminal for NMIY-0031 series 8051 |
Ian Bell |
The NMI 8051 development
boards use a monitor program that expects the user terminal to wait for
it to echo a character before it sends the next one. Most terminals
don't do this so I wrote this tcl/tk terminal script which does. |