8251 troubles

dwight elvey dkelvey at hotmail.com
Sun Apr 27 11:24:45 CDT 2008


 Hi
  The routines SETUP and COUT are ROM routines.
SETUP passes the first byte to the clock generator and the
remaining to the command port of the 8251. The command/status
port is 1 while the data is 0.
 COUT sends text to a video board.
The second COUT never seems to get executed?? I give plenty
of time between characters because I send then manually.
 The board can do interrupt driven serial but that didn't seem to
work so I went for the simpler polling method.



         DI
          CALL SETUP
;         .DB    $01F  ; 9600
;         .DB    $01D  ; 4800
          .DB    $01B  ; 2400
;         .DB    $019  ; 1200
          .DB    $0AA  ; SYNC
          .DB    $0AA  ; SYNC
          .DB    $040  ; RESET
          .DB    $0CE  ;  2STOP, NO PARITY, 8BIT , X16
          .DB    $010  ; CLEAR ERRORS
          .DB    0

          MVI    A,$027  ; RTD, DTR AND REC-EN TX-EN
          OUT    1

          CALL   TIN

          CALL   COUT  ; This works

          CALL   TIN

          CALL   COUT ; never gets here
......................................

TIN:
          IN     1
          ANI    2
          JZ     TIN
          IN     0
          RET



> From: thrashbarg at kaput.homeunix.org
> To: cctalk at classiccmp.org
> Date: Mon, 28 Apr 2008 01:15:04 +0930
> Subject: Re: 8251 troubles
>
> On Sun, 2008-04-27 at 08:23 -0700, dwight elvey wrote:
>> Hi
>> I've got a funny problem with a 8251.
>> I've been writing 8080 code and seem to have a strange
>> problem.
>> I initialize the chip in async mode. I have a light box on the
>> serial wire. It is initialized to both send and recieve.
>> I send one character to the 8251 and it passes it to the software
>> on the 8080 side. I display it on the 8080 side.
>> I then send another character to the 8251. Nothing happens.
>> It won't receive until I reset it.
>> None of the status lights change. I can see the data light flicker.
>> It could be a bad part but it just doesn't seem that it would
>> work once and then fail to work for the second character.
>> It just doesn't make sense.
>> Is there something I'm missing about the 8251.
>> Dwight
>>
>
> That could be caused by a lot of things. Could you post the relevant
> code?
>

_________________________________________________________________
Express yourself wherever you are. Mobilize!
http://www.gowindowslive.com/Mobile/Landing/Messenger/Default.aspx?Locale=en-US?ocid=TAG_APRIL


More information about the cctech mailing list