Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Re: hwcom Parameter Kategorie: Programmierung (von Matthias Koch - 24.11.2001 12:10)
Als Antwort auf Re: hwcom Parameter von Matthias Koch - 22.11.2001 20:36

> > > > Hallo,
> > > > ich komme mit den Parameteränderungen der hwcom nicht zurecht.
> > > > Wo trage ich die Funktion ein ?
> > > > Im Projektmodul ?
> > > > Und wo trage ich 0x8017 => für 8E1 ein ?
> > > >
> > > > Leider ist es mir noch ein Rätsel wie ich 7E1
> > > > ermittel und einstellen kann.
> > > >
> > > > /****************************************************************************************************/
> > > > inline function set_S0CON(int s0con)
> > > > /****************************************************************************************************/
> > > Quelle:  MAFOE
> > >
 
 
> > s0con=0x8013 // 7E1
> > system.set_S0CON(s0con);
> >
> > andere Werte für s0con die ich probiert habe
> > führen bestenfalls zum Stillstand der hwcom.
> > GruÃ? Norbert
>
> Hallo Norbert,
>
> das du in der Lage bist , die serielle Schnittstelle zu stoppen ist doch schon ein gutes Zeichen.
> Ich gehe also davon aus, dass die "inline-function" richtig ist und auch der Funktionsaufruf und die
> Datenzuweisung. Kommen wir nun zum S0CON Register des C167 oder alias.
> Dieses    Register ist 16 Bit lang. Ich beginne mit Bit 15 und ende mit Bit 0. Den Bit-Namen, der in
> Assembler benutzt wird lasse ich weg. Ich gehe nur auf die Bedeutung der Bits ein und deren Zu-
> Stände.
>
> BitNr.      Bedeutung                                    mögliche Zustände  Ergebnis
>  15         Baudrate Generator Run                 =1                          Generator läuft
>                                                                  =0                           Generator stoppt
>
>  14         Loop Back Mode                           =1                           Loop Back // Connect TxD RxD
>                                                                  =0                           Normalbetrieb
>
>  13         BaudRateSelection                        =1                           Takt um 1/3 reduziert
>                                                                  =0                            Normalbetrieb
>
>  12         ParitySelection                              =1                           Parity=ODD
>                                                                  =0                              "     = EVEN
>
>  11 _____________RESERVED____NOT USED______________________________________
>
>  10
Hallo Norbrt,
musste leider abbrechen, nun geht es weiter mit dem S0CON Register.

Bit 10 Overrun Error Flag
=1 Overrun Error
=0 Kein Error

Bit 9 Frame Error Flag
=1 Frame Error
=0 kein Error

Bit 8 Parity Error Flag
=1 Parität Error
=0 kein Error

Bit 7 Over Run Check Enable
=1 Over Run Check eingeschaltet
=0 abgeschaltet

Bit 6 Frame Check En.
=1 Frame Check eingeschaltet
=0 abgeschaltet

Bit 5 Parity Check En.
=1 Parity Check angeschaltet// und kann somit das Bit 8 (siehe oben) verändern
=0 kein Parity Check

Bit 4 Reciever Enable
=1 Empfänger eingeschaltet//
=0 abgeschaltet

MODE CONROL BITS
Die Bedeutung der unteren drei Bits ist oktal kodiert und haben folgende Bedeutung

Bit 2,1,0

000 = Syncronbetrieb 8 Datenbits
001 = Asyncronbetrieb 8 Datenbits
010 = reserviert
011 = Asyncronbetrieb 7 Datenbits und Paritätsbit// das ist das was du machen möchtest
100 = Asyncronbetrieb 9 Datenbits
101 = Asyncronbetrieb 8 Datenbits und Wake Up Bit //
110 = reserviert
111 = Asyncronbetrieb 8 Datenbits und Paritätsbit // das benutze ich

an den Bits 14, 13, 10 bis 5 würde ich keine Veränderung empfehlen, da sie möglicherweise das
Betriebssystem stören könnten. Was du aber mal probieren könntest, wäre ganz gezielt die serielle
Schnittstelle abzuschalten, indem du das Bit 15 = 0 setzt mit system.set_S0CCON(0x0017);
Nun etwas über die hwcom ausgeben und z.B. mit Oszi oder anderer Nachweismöglichkeit feststellen, das nichts
gesendet wird( Baudrategenerator ist ja abgeschaltet).Dann wieder set_S0CON(0x8017), Baudrategen.
angeschaltet, somit müsste die hwcom wieder arbeiten. Teste das mal, ich würde mich über eine kurze
Rückmeldung freuen.

mfg M.Koch


    Antwort schreiben


Antworten:

Re: hwcom Parameter (von Matthias Koch - 24.11.2001 15:54)
    Re: hwcom Parameter (von Norbert - 24.11.2001 19:38)
        Re: hwcom Parameter (von Norbert - 24.11.2001 22:06)