From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Dave Airlie" To: Andreas.Karlsson@combitechsystems.com Cc: ecos-discuss@sourceware.cygnus.com, aeb@arm.com Subject: Re: [ECOS] UART communication Date: Tue, 05 Sep 2000 08:52:00 -0000 Message-id: References: <2253171AF143D21185A60000F8FA748B0229A94D@pluto.combitech.se> X-SW-Source: 2000-09/msg00041.html With eCos on the ARM AEB you cannot choose 57600, I up came against something similiar a while back.. check the return from cyg_io_set_config I found it by tracing the code ... I think you can use a different clock multiplier to get 57600 but it involves changing eCos code... Dave. On Tue, 5 Sep 2000 Andreas.Karlsson@combitechsystems.com wrote: > Hi, > > While receiving several bytes on the UART0 port on my AEB-board the > eCos-serialdriver says it only received 1 byte with the value of 0. > > The incoming data looks very nice on an oscilloscope. > > Just to be sure that I hadn't messed something up in my receiver-thread I > connected the TX and the RX pin and sent 4 bytes, the packet was received > just as it should. > > > > I compiled the ser0 with a baud rate of 57600 since that's the only one I > can use. The other settings are 1 stop bit, no parity, wordsize=8 and > CTS/RTS enabled. > > I noticed that the baudrate of 57600 wasn't supported in aeb_serial.h but > what happens when I make this selection in the configuration? > > To be able to enable CTS/RTS I had to modify the select_baud-array in > aeb_serial.h. This because I should be able to set all fields in the > cyg_serial_info_t struct. I added the value of 26 on the bauddivisor for > 57600, maybe this is the problem. > > I really don't know what could be wrong so if anybody has a clue... > > /Andreas > -- David Airlie, Software Engineer, Parthus Technologies plc., Mary Rosse Centre, National Tech Park, Limerick, Ireland. t: +353-61-508116 / f: +353-61-508101 / David.Airlie@parthus.com