dwa sprzetowe UARTy w '51 i C

Jun 13, 2008 3 Replies

Witam,



jako ¿e uda³o mi siê w koñcu pogadaæ z dallasowym ds89c4xx, dr±¿ê temat dalej. I jak zwykle - im dalej w las, tym wiêcej papierzaków.



Niestety radosny pomys³ wykorzystania BASCOMa do obs³ugi 2 portów UART spali³ na panewce. Widaæ raczej siê nie da. A nie po to napali³em siê na procka z 2 UARTami (jak ³ysy na grzebieñ), ¿eby teraz jakie¶ protezy robiæ w styli software UART. Rzuci³em siê wiêc z ochot± na C (choæ or³em nie jestem) i... wtopa. standardowego printf'a w ten sposób nie umiem wykorzystaæ. Pokombinowa³em, zmajstrowa³em w³asnego putchar'a... ale jako¶ to nie to. Na razie wykoncypowa³em tak: sprintf > mam stringa > i kierujê go putchar_0 albo putchar_1. Ba, nawet putchar_lcd zaraz dopiszê, a co! Ale czy to têdy droga? Przerabia³ to kto¶ z powodzeniem, bez wiêkszych czarów?



z góry dziêki za pomoc pozdro Dino



Witam,

Dnia 13.06.08 (piątek), 'Dino' napisał(a):

Ja przez UARTa większe ilości danych wysyłam tylko przerwaniami - tzn. funkcja zaczyna proces wysyłania, ładuje pierwszy element ciągu/tablicy, a reszta "robi się" w przerwaniach zgłaszanych przez UARTa, gdy ten skończy nadawać. Tym samym dane są wysyłane/odbierane, a program (pętla główna) leci dalej.

Z resztą, sama obsługa UARTa jest banalnie prosta - wystarczy ładować rejestr. Nie wiem po co tu jakieś printfy i podobne kolumbryny (choć istnieją wersje mniejsze/szybsze o mniejszych możliwościach...). :) No chyba, że zależy Ci na specjalnym formatowaniu.

Dykus napisawszy:

oooooo! I o to chodzi i o to chodzi :) Niestety jak pisa³em, w C jestem cienki jak polsilver. Od razu mówiê, ¿e asm te¿. Wszystko co wiem, pochodzi jeszcze z studów, a to ju¿ parê lat minê³o, a pameæ mam jak±¶...

Powiedzmy, ¿e z formatowaniem da³bym sobiê radê w inny sposób. Jaki¶ dziwnych rzeczy na razie nie mam zamiaru robiæ.

Czy móg³bym dostaæ na priv przyk³ad takich funkcji i obs³ugi przerwaæ, odbiorczej i nadawczej? Bêdê d¼wiêczny, je¶li nie dozgonnie, to przynajmniej do nastêpnego razu :)

pozdro Dino

pogooglaj, widzialem ten temat wielokrotnie np Atmel dostarca takie kody dla AVR, powinny tez byc dla 8051

Join the Discussion

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

Didn't find your answer?

Ask the community — no account required