diff options
author | Nao Pross <naopross@thearcway.org> | 2018-02-27 10:37:33 +0100 |
---|---|---|
committer | Nao Pross <naopross@thearcway.org> | 2018-02-27 10:37:33 +0100 |
commit | ad0f6d4291e8ca7fc60b07403a97b8661dffef72 (patch) | |
tree | 302da8c6651452b148360d009879aa3780e7fd64 /src/rs232.c | |
parent | Add LaTeX PDF output to git (diff) | |
download | Xilofono-ad0f6d4291e8ca7fc60b07403a97b8661dffef72.tar.gz Xilofono-ad0f6d4291e8ca7fc60b07403a97b8661dffef72.zip |
Finalize measurement code and implement midi output
Diffstat (limited to 'src/rs232.c')
-rw-r--r-- | src/rs232.c | 39 |
1 files changed, 31 insertions, 8 deletions
diff --git a/src/rs232.c b/src/rs232.c index e060759..3fba3b4 100644 --- a/src/rs232.c +++ b/src/rs232.c @@ -17,31 +17,54 @@ void eusart1_init(void) // set up TX / RX pins TRISCbits.TRISC7 = 1; TRISCbits.TRISC6 = 1; - RCSTA1bits.CREN = 1; // enable continuous reception + // enable continuous reception + RCSTA1bits.CREN = 1; TXSTA1bits.TXEN = 1; } void eusart2_init(void) { - // TODO + // set Async and 8 bits frame + TXSTA2bits.SYNC = 0; + TXSTA2bits.TX9 = 0; + + // baud prescaler + RCSTA2bits.SPEN = 1; + SPBRG2 = 31; + SPBRGH2 = 0; + TXSTA2bits.BRGH = 0; + BAUDCON2bits.BRG16 = 0; + + // set up TX / RX pins + TRISDbits.TRISD7 = 1; + TRISDbits.TRISD6 = 1; + // enable continuous reception + RCSTA2bits.CREN = 1; + TXSTA2bits.TXEN = 1; } -void putch(char c) +void eusart1_putch(char c) { while (!TX1IF); TX1REG = c; } -char getch(void) +void eusart2_putch(char c) +{ + while (!TX2IF); + TX2REG = c; +} + +char eusart1_getch(void) { while (!RC1IF); return RC1REG; } -char getche(void) +char eusart1_getche(void) { - char c = getch(); - putch(c); // echo + char c = eusart1_getch(); + eusart1_putch(c); // echo return c; -} +}
\ No newline at end of file |