Systemy wybudowane
Sprawozdanie: Transmisja szeregowa 8051
Wst臋p teoretyczny
Podczas laboratorium zapoznali艣my zasad膮 dzia艂ania transmisji szeregowej.
Naszym zadaniem by艂o napisanie programu w j臋zyku C, dzi臋ki kt贸remu po naci艣ni臋ciu przycisku warto艣ci z w dw贸ch wy艣wietlaczy b臋d膮 przepisane na dwa kolejne wy艣wietlacze.
Wchodz膮cy w sk艂ad mikrokontrolera 8051 uk艂ad transmisji szeregowej zapewnia komunikacj臋 pomi臋dzy mikrokontrolerem, a 艣wiatem zewn臋trznym, co umo偶liwia wsp贸艂dzia艂anie z innymi systemami. Ponadto komunikacja ta wykorzystuje standardowy mechanizm transmisji szeregowej, kt贸rej parametry mog膮 by膰 konfigurowane w zale偶no艣ci od potrzeb np. zgodnie ze standardem RS-232C, kt贸ry jest obs艂ugiwany przez znaczn膮 liczb臋 urz膮dze艅.
Uk艂ad transmisji szeregowej wykorzystuje na zewn膮trz dwa wyprowadzenia portu P3, a 艣ci艣lej linie P3.0 oraz P3.1. Konfiguracja uk艂adu transmisji szeregowej w mikrokontrolerze 8051 mo偶liwa jest za pomoc膮 rejestru SCON.
Uk艂ad transmisji szeregowej mo偶e pracowa膰 w czterech trybach.
Tryb nr 0 oznacza, 偶e uk艂ad transmisji szeregowej pracuje w spos贸b synchroniczny jednokierunkowo (ang. halfduplex).
W trybie tym dane w trakcie transmisji mog膮 by膰 albo tylko odbierane, albo tylko wysy艂ane. Sama transmisja odbywa si臋 po linii RxD (P3.0), natomiast lini膮 RxD (P3.1) przesy艂any jest sygna艂 zegarowy o cz臋stotliwo艣ci fXTAL/12.
Tryby nr 1, 2, 3 o tryby transmisji asynchronicznej dwukierunkowej (ang. full-duplex).
Do cel贸w realizacji zagadnienia na laboratoriach wykorzystany zostanie tryb nr 2.
Kod programu
Om贸wienie zadania
Program po naci艣ni臋ciu przycisku klawiatury zwi臋ksza warto艣膰 jednego z wy艣wietlaczy. Po wykonaniu przerwania (fizycznie 鈥 odpowiedniego z艂膮czenia styk贸w) warto艣膰 ta kopiowana jest na drugi wy艣wietlacz. Dla uproszczenia kodu zastosowali艣my zwyk艂e p臋tle op贸藕niaj膮ce pomi臋dzy zmianami wy艣wietlaczy
Wnioski
- Uk艂ad dzia艂a zgodnie z oczekiwaniami
- Po naci艣ni臋ciu przycisku dane z dw贸ch wy艣wietlaczy przesy艂ane s膮 na bli藕niacze dwa
- Po od艂膮czeniu kabla odpowiadaj膮cego za transmisj臋 przesy艂anie nie dzia艂a