延時(shí)50毫秒mov r6,#04h;撥打四位電話號(hào)碼,予置初值。mov dptr,#7ff8h;地址指針指向r0mov a,#31h;r0按始發(fā)方式、fsk模式設(shè)置。 但禁止發(fā)送。movx @dptr,aloop:mov dptr,#7ffbh ;地址指針指向trmov a,#0fhadd a,r6;取出電話號(hào)碼movc a,@a+pcmovx @dptr,a;設(shè)置trmov dptr,#7ff8h;地址指針指向r0mov a,#33h;允許發(fā)送movx @dptr,aacall dly3;延時(shí)250毫秒mov a,#31h;停止發(fā)送movx @dptr,aacall dly3;延時(shí)250毫秒djnz r6,loop;撥號(hào)未完,再撥出一個(gè)號(hào)碼db 95h,96h,9ah,92h ;tr設(shè)置及電話號(hào)碼dta:mov dptr,#7ffah;地址指針指向drmovx a,@dptr;監(jiān)視drjnb acc.2,dta;檢測(cè)應(yīng)答音mov dptr,#7ff9h;地址指針指向r1mov a,#04hmovx @dptr,a;復(fù)位modemsetb p1.7;釋放j1ret 在
我用的是153s,只有1k的otp-rom。應(yīng)該不會(huì)有這樣的問(wèn)題吧。看程序 dly1 ==0x13 dly2 ==0x14 dly3 ==0x15 dly4 ==0x16 org 0ah;......................................... dalay: ;延時(shí)2ms*dly3=10ms mov a,@5 mov dly3,a mov a,@25 mov dly2,ain2: mov a,@133 mov dly1,a in1: djz dly1 jmp in1 djz dly2 jmp in2 djz dly3 jmp dalay djz dly4 jmp dalay ret eop 一點(diǎn)復(fù)位功能就出現(xiàn)上述提示。
程序來(lái)了dalay: ;延時(shí)2ms*dly3=10ms mov a,@5 mov dly3,a mov a,@25 mov dly2,ain2: mov a,@5 mov dly1,a in1: djz dly1 jmp in1 djz dly2 jmp in2 djz dly3 jmp dalay djz dly4 jmp dalay ret單布執(zhí)行到djnz dly2,就跳到別的地方去了。本來(lái)in1減到0,就應(yīng)該到djnz dly2, 可是它條到別的地方去了。