Gast
#155836
Hallo,
ich mache mal einen neuen Thread auf, da sich meine Problematik etwas
geändert hat.
Ich habe hier einen RFID Lesekopf mit TTL Schnittstelle. Der
funktioniert auch, wie man mit dem oszilloskop gut sehen kann.
Aber diese Schnittstelle gibt am tx ausgang der Schnittstelle konstant
5 V aus solange kein Transponder da ist, und wenn ein Transponder in
reichweite ist, geht die Spannung irgendwie nach unten. Wird irgendwie
falschrum auf die 5V moduliert. So sieht das zumindest aus.
Dann habe ich das mal an das UART meines at90s8535 ankeklemmt und die
UART lib von Peter Fleury bedient. Die sagt aber nur "NO DATA".
Hat da jemand mal eine Idee was ich da falschmache?
Der Code....
#include <stdlib.h>
#include <avr/io.h>
#include <avr/interrupt.h>
#include <avr/signal.h>
#include <avr/pgmspace.h>
#include "lcd.h"
#include "dual.h"
#include "c:\winavr\lcd\uart.h"
#define XTAL_CPU 8000000 /* 4Mhz */
#define UART_BAUD_RATE 9600 /* 9600 baud */
int main(void)
{
unsigned int c;
uart_init( UART_BAUD_SELECT(UART_BAUD_RATE,XTAL_CPU) );
sei();
lcd_init(LCD_DISP_ON);
lcd_free();
for (;;) { /* loop forever */
c = uart_getc();
if ( c & UART_NO_DATA )
{
lcd_puts("NO DATA");
}
else
{
/*
* new data available from UART
* check for Frame or Overrun error
*/
if ( c & UART_FRAME_ERROR )
{
/* Framing Error detected, i.e no stop bit detected */
//uart_puts_P("UART Frame Error: ");
lcd_puts("UART Frame Error: ");
}
if ( c & UART_OVERRUN_ERROR )
{
/*
* Overrun, a character already present in the UART UDR
register was
* not read by the interrupt handler before the next
character arrived,
* one or more received characters have been dropped
*/
//uart_puts_P("UART Overrun Error: ");
lcd_puts("UART Overrun Error: ");
}
if ( c & UART_BUFFER_OVERFLOW )
{
/*
* We are not reading the receive buffer fast enough,
* one or more received character have been dropped
*/
//uart_puts_P("Buffer overflow error: ");
lcd_puts_P("Buffer overflow error: ");
}
/*
* send received character back
*/
lcd_putc( (unsigned char)c );
}
return 0;
}
}
ICh wäre für JEDE hilfe äusserst dankbar.
Ach ja...
Der lesekopf ist von www.conrad.de Best. Nr. 130078