#inclde
#define da0832 XBYTE[0xf7ff] main(){
unsigned char i£¬j£» while{
for(i=O£»i<=153£ºi++) {da0832=i£º
for(j=0£»j<=100£»j++)£» }
for(i=153;i>=0£ºi--) {da0832=i;
for(j=O£»j<=100£»j++)£» }}}
¢Ú·½²¨4V¶ÔÓ¦µÄÊý×ÖÁ¿ÎªCCH MOV DPTR£¬#0F7FFH MOV A£¬#0
NEXT£ºMOVX @DPTR£¬A ACALL D2MS XRL A£¬#0CCH SJMP NEXT
#include
#define da0832 XBYTE[0xf7ff] main(){
unsingde a=O£¬j£» while(1){ da0832=a;
for(j=0£»j<=255£»j++)£» a=a^Oxcc£º - }} ¢Û½×Ìݲ¨
MOV DPTR£¬#OF7FFH NEC£ºMOV A£¬#O
NEXT£ºMOVX @DPTR£¬A ACALL D1MS ADD A£¬#33H
CJNE A£¬#OFFH£¬NEXTA NEXTA£ºMOVX @DPTR£¬A ACALL D5MS SJMP NEC
main(){ unsigued char i£» unsigued int j£» while(1){
41
for(i=0£»i<=255£ºi+=51) {da0832=i£»
for(j=O£»j<=100£»j++£»)£» }}}
10.2 ÌâĿҪÇóͬÌâ10.1£¬²ÉÓÃË«»º³å·½Ê½¡£
lO.2 µç·²Î¿¼Í¼10-4£¬Ôö¼ÓÒ»¸öµØÖ·£®Ê¹ÓÃÁ½ÌõÊä³öÖ¸Áî²ÅÄÜÊä³öÒ»¸öÊý¾Ý£¬ÆäËûͬÉÏ¡£
10.3 Éè¼Æ89S51ºÍDAC0832µÄ½Ó¿Ú£¬²ÉÓõ¥»º³å·½Ê½£¬½«ÄÚ²¿RAM 20H¡«2FHµ¥ÔªµÄÊý¾Ýת»»³ÉÄ£Äâµçѹ£¬Ã¿¸ô1msÊä³öÒ»¸öÊý¾Ý¡£ 10.3 µç·²ÎÕÕͼ10-3£¬µØÖ·Îª7FFFH¡£ ORG 0000H
MOV DPTR£¬#7FFFH MOV R0£¬#20H
MOV A£¬@R0
NEXT£ºMOVX @DPTR£¬A ACALL D11MS INC R0
CJNE R0£¬#30H,NEXT SJMP$ END
#include
#define da0809 XBYTE[Ox7fff] main(){
unsigned char *p£¬i£¬j£» p=0x20£»
for(i=0£»i<=16£»i++) {da0832= *p£»
p++£»
for(i=0£¬j<=255£»j++)£» }}
10.4 ÄÚ²¿RAMµÄ30H¡«3FHÖдæ·Å×Å8¸ö12λµÄ¶þ½øÖÆÊý£¬ÆäÖиß4λ·ÅÔڸߵØÖ·µ¥Ôª£¬µÍ8λ·ÅÔڵ͵ØÖ·µ¥Ôª£¬ÀûÓÃDACl210ת»»³ÉÄ£ÄâµçѹÊä³ö£¬ÒªÇóÓÃP2.0£¬P2.1£¬P2.2½øÐÐÏßÑ¡£¬±à³ö³ÌÐò£¬»³öÓ²¼þµç·¡£
10.4 µç·²ÎÔÄͼ10-6£¬²»Í¬µÄÊǽ«P2.5¡«P2.7¸ÄΪP2.0¡«P2.2¸÷µØÖ··Ö±ðΪFEFFH¡¢FDFFH¡¢FBFFH¡£³ÌÐò²ÎÕÕ10£®1½Ú£¬×¢ÒâÐÞ¸ÄRAMµØÖ·£¬Ñ»·Ö´ÐиóÌÐò¡£
10.5 Éè¼Æ89S51ºÍADC0809µÄ½Ó¿Ú£¬²É¼¯2ͨµÀ10¸öÊý¾Ý£¬´æÈëÄÚ²¿RAMµÄ50H¡«59Hµ¥Ôª£¬»³öµç·ͼ£¬±à³ö£º(1)ÑÓʱ·½Ê½£»(2)²éѯ·½Ê½£»(3)ÖжϷ½Ê½µÄ³ÌÐò¡£
1O.5µç·²ÎÔÄͼ10-9£¬²»Í¬µÄÊÇ£º¢ÙÑÓʱ·½Ê½£ºEOCÐü¿Õ£»¢Ú²éѯ·½Ê½£ºEOC¾·ÇÃŽӵ¥Æ¬»úP1.0(¼ûϰÌâ10.6ͼ)£»¢ÛÖжϷ½Ê½Í¬Ôͼ¡£
ÏÂÃæ½ö±à²éѯ³ÌÐò¡£IN2µÄµØÖ·Îª7FFAH£¬ÓÉÓÚEOC¾·ÇÃŽӵ¥Æ¬»úP1.0¶Ë¿ÚÏߣ¬²éѯµ½P1.0ΪÁã,¼´×ª»»½áÊø¡£
ORG 0000H MOV R7£¬#OAH MOV R0£¬#50H
42
MOV DPTR£¬#7FFAH
NEXT£ºMOVX @DPTR£¬A £»Æô¶¯×ª»» JB P1.0£¬$ £»²éѯµÈ´ý MOVX A£®@DPTR £»äÂÈËÊý¾Ý MOV @R0£¬A INC R0 DJNZ NEXT SJMP $
#includc
#define uchar unslgnde char
#define IN2 xBYTE[ox7ffa] /*IN2µØÖ·*/ sbit adbusy=P1^0)£» /*EOC*/ void main(void)
{uchar idata ad[10]£» uchar i;
for(i=O;i<=10£»i++)£» /*²É¼¯10¸öÊý*/ {IN2=0£» /*Æô¶¯×ª»»*/
while(adbusy==1)£» /*D3CµÈÓÚOÑ»·*/ ad[i]=IN2 /*´æ×ª»»½á¹û*/}}
10.6 Éè¼Æ89C51ºÍADC0809µÄ½Ó¿Ú£¬Ê¹ÓÃÖжϷ½Ê½Ë³Ðò²É¼¯8·ģÄâÁ¿¡£´æÈëµØÖ·Îª20H¡«27HµÄÄÚ²¿RAMÖС£
10.6 ADC0809²É¼¯8·ģÄâÐźţ¬Ë³Ðò²É¼¯Ò»´Î£¬½«²É¼¯½á¹û´æ·ÅÓÚÊý×éadÖС£ADC0809Ä£ÄâͨµÀ0¡«7µÄµØÖ·Îª7FF8H¡«7FFFH£¬ÒÔP1.0²éѯADC0809µÄת»»½áÊø¶ËEOC£¬µç·ÈçϰÌâ10-6ͼËùʾµÄ²éѯ·½Ê½¡£ ³ÌÐòÈçÏ£º
#lnclude
#define uchar unsigned char
#define IN0 XBYTE[0x7ff8] /*IN0µØÖ·*/ sbit adbusy=P1^0£» /*EOC*/
void ad0809(uchar idata*x) /*A£¯D*/ {uchar ii;
uchar xdata*ad_adr£» ad_adr=&IN0£»
for(i=0£»i<8£»i++) /*´¦Àí8¸öͨµÀ*/
{ *ad_adr=0£» /*Æô¶¯×ª»»*/
while(adbusy==1)£» £¯*²éEOC*£¯ x[i]=*ad_adr£» £¯*´æ×ª»»½á¹û*£¯ ad_adr++£» £¯*Ö¸ÏòÏÂһͨµÀ*£¯ }}
void main(void)
{uchar idata ad[10]£»
ad0809(ad); £¯*²ÉÑùAD0809ͨµÀµÄÖµ*£¯}
43
10.7 Éè¼Æ8XX51ºÍ8279µÄ½Ó¿Ú£¬Ê¹Íâ½Ó8¸öÊýÂë¹ÜºÍ2¡Á8¾ØÕó¼üÅÌ¡£ (1) »³öÓ²¼þµç·£»
(2) ×î×ó±ßÊýÂë¹ÜÏÔʾ¡°¡ª¡±£»
(3) ÿһ´Î°´¼ü£¬¼üÖµ¡°O¡±¡«¡°F¡±´Ó×óµ½ÓÒ˳´ÎÏÔʾÔÚÊýÂë¹ÜÉÏ¡£ 10.7 ²Î¼û4£®6½ÚÀý¡£
µÚ11Õ ´®Ðнӿڼ¼Êõ
11.1 ÔÚAT89S52ÉÏÀ©Õ¹Á½Æ¬AT24C04¡£ 11.1 ¼ûϰÌâ11£®1ͼ
ϰÌâ11£®1ͼ
11.2 Íê³É½«O¡«9дÈëAT24C04µÄO¡«9µ¥Ôª¡£ 11.2 ²ÎÔÄ11£®L 5½Ú
11.3 Íê³É½«AT24C04µÄO¡«9µ¥ÔªÄÚÈݶÁ³ö²¢·Ö±ð´æÈëÄÚ²¿RAMµÄ20H¡«29Hµ¥Ôª¡£ 11.3 ²ÎÔÄ11£®1£®5½Ú
11.4 ÊÔÓÃһƬTLC5615Éè¼ÆÒ»¸ö51²¨Ðη¢ÉúÆ÷£¬Ê¹ÄܲúÉú·½²¨¡¢¾â³Ý²¨¡£ 11.4 ²ÎÔĵÚ13ÕÂʵÑéÖ¸µ¼µÄʵÑé7
11.5 ʹÓÃһƬTLC549Éè¼ÆÒ»¸ö»ùÓÚ51µ¥Æ¬»ú²âÁ¿µÄµÍƵÓÐЧֵµÄµçѹ±í¡£ 11.5 ²ÎÔĵÚ13ÕÂʵÑéÖ¸µ¼µÄʵÑé8
µÚ12Õ ǶÈëʽϵͳµÄÉè¼ÆÓëµ÷ÊÔ
12.1 µ¥Æ¬»úµÄ¿¹¸ÉÈÅ´ëÊ©ÓÐÄÄЩ?
44
12.1 ²ÎÔÄ12£®3½Ú
12.2 Éè¼ÆÒ»¸öµç×ÓÊý×ÖÖÓ£¬²¢½ÓÒ»¸öСÀ®°È£¬Ê¹ (1) ¾ßÓн»ÌæÏÔʾÄê¡¢Ô¡¢ÈÕ¡¢Ê±¡¢·Ö¡¢ÃëµÄ¹¦ÄÜ£» (2) ¾ß±¸Ð£Õý¹¦ÄÜ£»
*(3) ¾ß±¸É趨ÄÖÖӺͶ¨Ê±ÄÖÖÓÏ칦ÄÜ£» *(4) ¾ß±¸Õûµã±¨Ê±¹¦ÄÜ£» *(5) ¾ß±¸ÉúÈÕÌáÐѹ¦ÄÜ¡£ ÆäÖУ¬*Ϊѡ×öµÄÀ©Õ¹¹¦ÄÜ¡£
12.2 Ìáʾ£ºÀûÓö¨Ê±£¯¼ÆÊýÆ÷¶¨Ê±l00ms£¬ÖжÏ10´Î´ï1s£¬Âú60s£¬·Ö¼Ó1sÇåO£»Âú60·Ö£¬Ð¡Ê±¼Ó1·ÖÇå0£¬Í¬Ê±·Ö¡¢Ãë¾ùÓÐʮλÊýºÍ¸öλÊý£¬°´Ê®½øÖƽøÎ»£¬²¢ËÍÏÔʾ£¬ÏÔʾ¿É²ÉÓÃ6¸öÊýÂë¹Ü(»ò8¸öÊýÂë¹Ü)£¬Ð£¶Ô¿ÉÓð´¼üÖжϷ½Ê½»ò°´¼üµÄ²éѯ½øÐмÓ1У¶Ô£¬Óò¢ÐпڽÓÇý¶¯Æ÷(·ÇÃÅ»òÈý¼«¹Ü)Çý¶¯ÑïÉùÆ÷½øÐÐÄÖÖÓ£¬Èç¹û²ÉÓÃ89C51£¯S51×ö£¬ÓÉÓÚÆ¬ÄÚÒÑÓгÌÐò´æ´¢Æ÷£¬4¸ö¿ÚÓû§¾ù¿ÉʹÓá£
12.3 Óõ¥Æ¬»úµÄ¶¨Ê±Æ÷Éè¼ÆÒ»¸öÒôÀֺУ¬Ê¹ÄÜÓð´¼üÑ¡ÔñÑÝ×àÁ½Ö§Ð¡ÀÖÇú£¬ÒÑÖªÀÖÆ×ºÍÆµÂʵĹØÏµÈçÏ£º Cµ÷Òô·û ƵÂÊ(Hz) 5 392 6 440 7 494 1 524 2 588 3 660 4 698 5 784 6 880 7 988 12.3 Ìáʾ£ºÊ¹Óö¨Ê±Æ÷²úÉú²»Í¬ÆµÂʵÄÐźŹ¹³É½ÚÅÄ£¬¿ÉÒÔÁ½¸ö¶¨Ê±Æ÷ÁªºÏʹÓá£
12.4 Éè¼ÆÒ»¸öÄ£ÄâÁ¿²É¼¯ÏµÍ³£¬½«Ëù²É¼¯µÄÄ£ÄâÁ¿ÏÔʾÔÚ4¸öLEDÏÔʾÆ÷»ò4¸öLCDÏÔʾÆ÷ÉÏ¡£
12.4 Ìáʾ£ºÓ²¼þÓɵ¥Æ¬»ú¡¢A£¯Dת»»¡¢LEDÏÔʾÆ÷»òLCDÏÔʾÆ÷¼°±ØÒªµÄÇý¶¯¡¢ÒëÂëµÈµç·¹¹³É¡£
12.5 ÌâÄ¿Ìâ12.4£¬ÒªÇóÀûÓô®ÐÐͨÐÅ£¬Ê¹²É¼¯µÄÊý¾Ý»ò²¨ÐÎÏÔʾÔÚPCµÄµçÄÔÆÁÄ»ÉÏ¡£ 12.5 ÂÔ
µÚ13Õ µ¥Æ¬»úʵÑé(ÂÔ)
45