Mam pewien drobny kłopocik z UART-em w 89C4051. Piszę w jedynie słusznym Bascom, sprzętową stronę przedsięwzięcia sprawdzałem trzy razy.
Do rzeczy:
Rzecz w tym, że pojawia się "test działania UART", później mikroklocek momentalnie wskakuje w obsługę jego przerwania. Pomiar napięcia na nóżce P3.0/RXD ujawnia stan wysoki. Próba wysłąnai znaków z terminala - daje się zaobserwować oscylogram. Mikroklocek mimo wszystko cały czas próbuje obsłużyć przerwanie z UART-a.
Może znajdzie się ktoś, kto miał podobny przypadek? Na razie myślimy z kumplem na dwie głowy, ale nadal zima... Może to już starość?
Z góry dzięki za pomoc.
Do rzeczy:
$large
$crystal = 12000000
$baud = 300
Dim X As Byte
Config Lcd = 16 * 2
Config Lcdpin = Pin , Db4 = P1.4 , Db5 = P1.5 , Db6 = P1.6 , Db7 = P1.7 , E = P1.3 , Rs = P1.2
Config Timer0 = Timer , Gate = Internal , Mode = 2
Cursor Off
Cls
Lcd "test dzialania UART"
Wait 1
Enable Serial
Enable Interrupts
On Serial Wyswietl Nosave
Do
Lcd "komunikuje..."
Loop
Wyswietl:
Cls
Lcd "int "
Input X , Noecho
Disable Interrupts
Lcd X
Wait 1
ReturnRzecz w tym, że pojawia się "test działania UART", później mikroklocek momentalnie wskakuje w obsługę jego przerwania. Pomiar napięcia na nóżce P3.0/RXD ujawnia stan wysoki. Próba wysłąnai znaków z terminala - daje się zaobserwować oscylogram. Mikroklocek mimo wszystko cały czas próbuje obsłużyć przerwanie z UART-a.
Może znajdzie się ktoś, kto miał podobny przypadek? Na razie myślimy z kumplem na dwie głowy, ale nadal zima... Może to już starość?
Z góry dzięki za pomoc.