89s8252 + MAX232

Apr 22, 2004 3 Replies

Witam mam taki oto problem: zmontowalem sobie uklad ktory ma wstepnie zagadac przez RS'a do tego celu uzylem MAX232 ktorego podlaczylem do nog TxD i RxD uC. Jako taktu uzywam Timer 2



IE = 0xAA; //Przerwania TMOD = 0x15; //0 licznik,1Timer T2CON = 0x30; //timer 2 dla serial SCON = 0x50;



//inicjacja T2 RCAP2H=0xFF; //moze TH2 ? RCAP2L=0xDC; //moze TL2 ? TR2=1;



printf("Stefan");



po zladowaniu programu do uC jedyne co mi sie pokazuje na terminalu to zlowieszcza kropka na srodku lini, przynajmniej jest jakas komunikacja ale nie ma to nic wspolnego z tym czego oczekuje.Zawsze po wylaczeniu i wlaczeniu ukladu ten smieszny smiec pokazuje sie na ekranie, jak zamieniam zyly 2-3, 3-2 na 2-2, 2-3 nie pokazuje sie wcale. Kabel miedzy PC a MAX : 2->3 , 3->2 , 5->5 (wtyczka/gniazdo) Zmieszylem napiecie na nogach maxa dla czesci z przetwornikiem jest -8.1V niby powinno byc -10V kondensatory 10uF, watpie by to jednak byla przyczyna. Termianl 9600,8,N,1



Pozdrawiam.



Oczywiscie zapomnialem dodac ze rezonator to 11.0592Mhz. Z dokumentacji wynika ze T2 uaktualniany jest 2x w ciagu cyklu nie raz jak T0i1 i liczac ze wzoru baud = oscfreq/32*(65536-(RCAP2H,RCAP2L)) wychodzi jak nic ze T2 musi miec wartosc FFDC.

Pzdr, M.

A skad kompilator ma wiedziec, zeby printf'y puszczac przez interfejs RS232? W avr-gcc wlacza sie to funkcja fdevopen, a ty jakiego kompilatora dla '51 uzywasz?

Keil C51, ale printf uzywa mojego putchara z SBUF.

Pzdr, Mariusz.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required