📄 8051 code library.htm
字号:
</td>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><span lang=EN-US style='font-size:10.0pt'>DES
encryption/decryption used in IC smart cards. Software hasn't been validated
and lacks in-line documentation.</span><span lang=EN-US style='font-size:
12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
</tr>
<tr>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><span lang=EN-US style='font-size:10.0pt'><a
href=" seldptr.asm"><b>Multiple DPTRs</b></a></span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal align=center style='text-align:center'><span lang=EN-US
style='font-size:10.0pt'><a href="mailto:regdrake@yahoo.com">Reg Drake</a></span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><span lang=EN-US style='font-size:10.0pt'>Allows a program
to operate as if it had multiple DPTRs, even on a standard 8051 that has only
a single DPTR.</span><span lang=EN-US style='font-size:12.0pt;font-family:
宋体'><o:p></o:p></span></p>
</td>
</tr>
<tr>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><span lang=EN-US style='font-size:10.0pt'><a
href=" buttons.asm"><b>BUTTONS</b></a></span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal align=center style='text-align:center'><span lang=EN-US
style='font-size:10.0pt'><a href="mailto:dave_fletcher@bigfoot.com">Dave
Fletcher</a></span><span lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><span lang=EN-US style='font-size:10.0pt'>Detects state
changes and performs debounce for push buttons.</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
</tr>
<tr>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><span lang=EN-US style='font-size:10.0pt'><a
href=" dec_dptr.zip"><b>DEC_DPTR</b></a></span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal align=center style='text-align:center'><span lang=EN-US
style='font-size:10.0pt'><a href="http://www.8052.com/aboutvis.phtml">VIS</a></span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><span lang=EN-US style='font-size:10.0pt'>Performs the
opposite of INC DPTR; it decrements DPTR by 1.</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
</tr>
<tr>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><span lang=EN-US style='font-size:10.0pt'><a
href=" bcd_byte.zip"><b>BCD_BYTE</b></a></span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal align=center style='text-align:center'><span lang=EN-US
style='font-size:10.0pt'><a href="http://www.8052.com/aboutvis.phtml">VIS</a></span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><span lang=EN-US style='font-size:10.0pt'>Short function
which converts a single 8-bit value into two BCD digits, and another function
which does the reverse.</span><span lang=EN-US style='font-size:12.0pt;
font-family:宋体'><o:p></o:p></span></p>
</td>
</tr>
<tr>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><span lang=EN-US style='font-size:10.0pt'><a
href=" charlcd.zip"><b>LCD DISPLAY</b></a></span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal align=center style='text-align:center'><span lang=EN-US
style='font-size:10.0pt'><a href="mailto:jcwren@atlanta.com">John Wren</a></span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><span lang=EN-US style='font-size:10.0pt'>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.</span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
</tr>
<tr>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><span lang=EN-US style='font-size:10.0pt'><a
href=" crc8.zip"><b>CRC-8 CALCULATIONS</b></a></span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal align=center style='text-align:center'><span lang=EN-US
style='font-size:10.0pt'><a href="mailto:jcwren@atlanta.com">John Wren</a></span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><span lang=EN-US style='font-size:10.0pt'>A CCITT-8 CRC
calculator. The source contains both the calculated (smaller but slower)
version, and the table driven (faster but larger) version.</span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
</tr>
<tr>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><span lang=EN-US style='font-size:10.0pt'><a
href=" crc16.zip"><b>CRC-16 CALCULATIONS</b></a></span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal align=center style='text-align:center'><span lang=EN-US
style='font-size:10.0pt'><a href="mailto:jcwren@atlanta.com">John Wren</a></span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><span lang=EN-US style='font-size:10.0pt'>A CCITT-16 CRC calculator.
The source contains both the calculated (smaller but slower) version, and the
table driven (faster but larger) version.</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
</tr>
<tr>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><span lang=EN-US style='font-size:10.0pt'><a
href=" autobaud.zip"><b>AUTOBAUD DETECTION</b></a></span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal align=center style='text-align:center'><span lang=EN-US
style='font-size:10.0pt'><a href="mailto:jcwren@atlanta.com">John Wren</a></span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><span lang=EN-US style='font-size:10.0pt'>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.</span><span lang=EN-US
style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
</tr>
<tr>
<td valign=top style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><span lang=EN-US style='font-size:10.0pt'><a
href=" utils01.zip"><b>VARIOUS UTILITY FUNCTIONS</b></a></span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
<td valign=top style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal align=center style='text-align:center'><span lang=EN-US
style='font-size:10.0pt'><a href="mailto:jcwren@atlanta.com">John Wren</a></span><span
lang=EN-US style='font-size:12.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
<td style='padding:.75pt .75pt .75pt .75pt'>
<p class=MsoNormal><span lang=EN-US style='font-size:10.0pt'>UTIL_ADCAD - Add
Acc to DPTR, sets CY<br>
UTIL_ADCBAD - Add B/A to DPTR, sets CY<br>
UTIL_SUBBAD - Subtracts Acc from DPTR, sets CY<br>
UTIL_SUBBBAD - Subtracts B/A from DTPR, sets CY<br>
UTIL_INC16 - Increments 16 bit location in IRAM<br>
UTIL_UCOMPARE16 - Compares DPTR to 16 bit IRAM value<br>
UTIL_UCMPDPTRBA - Compares DPTR to B/A<br>
UTIL_SHIFT4L - Shfts a 16 bit IRAM value 4 bits left<br>
UTIL_LDDPTRC - Load DPTR from (DPTR) ROM<br>
UTIL_LDDPTRD - Load DPTR from (DPTR) XRAM<br>
UTIL_STDPTRD - Store R6/7 to (DPTR) XRAM<br>
UTIL_DPTRR01 - Exchange R0/1 <-> DPTR<br>
UTIL_DPTRR67 - Exchange R6/7 <-> DPTR<br>
UTIL_DPTR2C - 2s complelment DPTR<br>
UTIL_DPTRDEC - DPTR = DPTR - 1, sets CY<br>
UTIL_DPTRASR1 - Arithmetic shift right DPTR<br>
UTIL_DPTRSHR1 - Shift DPTR right<br>
UTIL_DPTRROL4 - Rotate DPTR left 4<br>
UTIL_DPTRSHL4 - Shift DPTR left<br>
UTIL_R3R7RL4 - Shift R3/4/5/6/7 4 bits left<br>
UTIL_DPTRX10 - DPTR = DPTR * 10<br>
UTIL_DPTRX100 - DPTR = DPTR * 100<br>
UTIL_DPTRX1000 - DPTR = DPTR * 1000<br>
UTIL_CALLFUNC - Call function DPTR points to<br>
UTIL_TOLOWER - Convert Acc to lowercase<br>
UTIL_TOUPPER - Convert Acc to uppercase<br>
UTIL_HEXTOBIN - Convert ACSII hex to binary<br>
UTIL_DECTOBIN - Convert ASCII decimal to binary<br>
UTIL_BCDTOBIN - Convert BCD to binary<br>
UTIL_ASC36TOBIN - Convert base 36 value to binary<br>
UTIL_BINTOASC - Convert binary to ASCII<br>
UTIL_BINTOASC36 - Convert binary to ASCII base 36<br>
UTIL_BINTOBCD - Convert 8 bit binary to BCD<br>
UTIL_BINTOBCD12 - Convert 12 bit binary to BCD<br>
UTIL_BINTODEC - Convert DPTR to signed string<br>
UTIL_BINTOUDEC - Convert DPTR to unsigned string<br>
UTIL_VALDCDG - Validate Acc for ASCII decimal<br>
UTIL_VALHXDG - Validate Acc for ASCII hex<br>
UTIL_VALALPHA - Validate Acc for A..Z, a..z, 0..9<br>
UTIL_VALALPHAZ - Validate string for A..Z, a..z, 0..9<br>
UTIL_CNTDG - Count ASCII decimal in string<br>
UTIL_UDIV - Unsigned divide<br>
UTIL_UMOD - Unsigned mod<br>
UTIL_DIV - Signed divide<br>
UTIL_MOD - Signed mod<br>
UTIL_COPYXTOI - Copy XRAM to IRAM, length<br>
UTIL_COPYITOX - Copy IRAM to XRAM, length<br>
UTIL_COPYCTODL - Copy ROM to XRAM, length<br>
UTIL_COPYCTODZ - Copy ROM to XRAM, string<br>
UTIL_COPYDTODL - Copy XRAM to XRAM, length<br>
UTIL_COPYDTODZ - Copy XRAM to XRAM, string<br>
UTIL_PUT_ETX - Replace 0x00 with ETX in string<br>
UTIL_FIND_ETX - Locate ETX in string<br>
UTIL_TRIM - Remove trailing spaces<br>
UTIL_STRLEN - Return length of string </span><span lang=EN-US
style='font-size:10.0pt;font-family:宋体'><o:p></o:p></span></p>
</td>
</tr>
</table>
<p class=MsoNormal><span lang=EN-US><![if !supportEmptyParas]> <![endif]><o:p></o:p></span></p>
</div>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -