Brauche Hilfe bei M16C/60 - wie programmiert man den UART?

Gast #394325
Lesenswert?

Hallo zusammen,

ich muss mich für meine Diplomarbeit mit einem M16C/60 anfreunden und
habe dabei so meine Probleme.
Als Software verwende ich Tasking EDE.

Ich möchte den UART programmieren, werde aber aus der Doku nicht
wirklich schlau.

Das Problem ist, dass ich das ganze in C programmieren muss, bisher
aber meine ganzen AVRs mit Assembler zum laufen gebracht habe und
deswegen jetzt auch noch C lernen muss.

Vielleicht kann mir jemand helfen, und mir verraten, wie ich ein
Zeichen senden kann. Die zwei folgenden Prozeduren habe ich schon
geschrieben, sie funktionieren aber nicht:


void se_initialize_port( void )
{

        /* initialize serial port registers */

        U0MR  = 0x5;    /* no parity, 8 data-bits, 1 stop-bit, internal
clock */
        U0C0  = 0x18;   /* no cts/rts, prescaler = F1 */
        U0IRS = 1;      /* TX complete */
        U0BRG = 0x67;     /* baudrate 9600 bei 16Mhz Systemtakt */
        U0C1  = 0x5;    /* enable receiver and transmitter */
}


void se_transmit_char (void)
{
        while (U0IRS)
        {
            ;
        }

        U0TB = 0x34;
}


Wäre super, wenn mir jemand einen heißen Tip hätte, wie das ganze zum
Laufen bekomme.

Ausserdem wäre ich froh, wenn mir jemand eine gute Doku empfehlen
könnte. Ich habe zwar die Datenblätter von dem uC, aber diese
beinhalten keinerlei Beispiele...

Bin für jede Hilfe dankbar.

Danke und Gruß
Markus

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren