Hi, one possibility  is to use one single inverter gate like SN74LVC1G04,
one digital transistor ( base resistor connected internally) and one
resistor in collector or any other already explained.
The FT232RL can invert the TX, however it seems so complicated ( it needs
to program the internal eeprom, see AN121 FTDI accessing the eeprom user
area) that it is much simpler to correct it in external hardware.
http://www.ftdichip.com/Support/Documents/DataSheets/ICs/DS_FT232R.pdf


On Wed, May 18, 2022 at 8:45 AM 'Oliver Seitz' via jallib <
[email protected]> wrote:

> Great, that error is fixed :-)
>
> Now here's what the PIC sends, and what I presume the PC receives:
>
> Seq. Lvl   Pic sends   PC receives (inverted)
>
> -3    1    idle        framing error
> -2    1    idle        framing error
> -1    1    idle        framing error
>  0    0    startbit    idle
>  1    0    0*1+        idle
>  2    1    1*2+        startbit
>  3    0    0*4+        1*1+
>  4    0    0*8=2       1*2+
>  5    0    0*1+        1*4+
>  6    1    1*2+        0*8=7
>  7    0    0*4+        1*1+
>  8    0    0*8=2       2*2+
>  9    1    Stopbit     0*4+
> 10    0    startbit    1*8=b
> 11    0    0*1+        stopbit
> 12    1    1*2+        startbit
> 13    0    0*4+        1*1+
> 14    0    0*8=2       1*2+
> 15    0    0*1+        1*4+
> 16    1    1*2+        0*8=7
> 17    0    0*4+        1*1+
> 18    0    0*8=2       1*2+
> 19    1    Stopbit     0*4+
> 20    1    idle        0*8=3
> 21    1    idle        framing error
> 22    1    idle        framing error
> 23    1    idle        framing error
> 24    1    idle        framing error
>
> You see, "b7 37" is exactly what to expect when the baudrate is correct,
> and the polarity is not. You just need to fix the polarity. For the
> transmission from the PIC to the PC you can either switch RX on the PC to
> non-inverted mode, or invert TX on the PIC like
>
> BAUDCON1_SCKP=1
>
> However, this PIC does not allow inverting its RX easily, so you need to
> switch the PCs TX to non-inverted mode or invert the signal by other means.
> That other means can be a transistor and two resistors, or a dedicated IC,
> even a NE555 can do it. Or, as mentioned before, if you've got an unused
> pin on the PIC, you can use an unused peripheral of your PIC to invert the
> signal.
>
> Greets,
> Kiste
>
>
>
>
> Am Dienstag, 17. Mai 2022, 23:16:31 MESZ hat flyway38 <[email protected]>
> Folgendes geschrieben:
>
>
> Hi Kiste,
>
> Thank you very much.
> That solved the baudrate issue.
>
> But serial_hardware still don't work as it should.
> Still have Frame and Break error on PC side.
>
> Now, your code;
> forever loop
>    serial_hw_data=0x22
>    serial_hw_data=0x22
>    delay_1s(1)
> end loop
>
> Results;
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
> b7 37 00                                         ·7.
>
> Cannot understand what's going on.
> Anymore ideas?
>
> Cheers,
> Filipe Santos.
> On Tuesday, May 17, 2022 at 8:34:17 PM UTC+1 Kiste wrote:
>
> So, here it is:
>
> pragma target clock 20_000_000                   -- oscillator frequency
> pragma target RSTOSC   HFINT32                   -- power-up clock select:
> OSC
>
> You're telling the compiler, the PIC would run at 20MHz, and you're
> setting the PIC to 32MHz.
>
> Make it
>
> pragma target clock 32_000_000                   -- oscillator frequency
>
> and your baudrate will be as specified.
>
> Greets,
> Kiste
>
> Am Dienstag, 17. Mai 2022, 21:12:10 MESZ hat flyway38 <[email protected]>
> Folgendes geschrieben:
>
>
> Hi again Kiste,
>
> Here my code pragmas;
>
> -- Pragmas/ configuration memory settings (fuses)
> pragma target clock 20_000_000                   -- oscillator frequency
> pragma target OSC      OFF                       -- HS crystal or resonator
> pragma target RSTOSC   HFINT32                   -- power-up clock select:
> OSC
> pragma target CLKOUTEN DISABLED                  -- no clock output
> pragma target WDT      DISABLED                  -- watchdog
> pragma target DEBUG    DISABLED                  -- no debugging
> pragma target BROWNOUT DISABLED                  -- no brownout reset
> pragma target FCMEN    DISABLED                  -- no clock monitoring
> pragma target CSWEN    ENABLED                   -- allow writing OSCCON1
> NOSC and NDIV
> pragma target LVP      DISABLED                  -- no low voltage
> programming
> pragma target MCLR     EXTERNAL                  -- external reset
> -- The configuration bit settings above are only a selection, sufficient
> -- for this program. Other programs may need more or different settings.
> --
> WDTCON_SWDTEN = OFF                              -- disable watchdog
> --
> _usec_delay (100_000)                            -- wait for power to
> stablilize
> --
> enable_digital_io()                              -- make all pins digital
> I/O
>
> Cheers
> Filipe Santos.
> On Tuesday, May 17, 2022 at 7:05:54 PM UTC+1 Kiste wrote:
>
> Hi Filipe,
>
>
> I suspect the baudrate problem in settings like
>
> pragma target clock  ?
> pragma target OSC ?
> pragma target RSTOSC ?
>
> OSCCON* = ?
>
> What are these settings?
>
> Greets,
> Kiste
>
> --
> You received this message because you are subscribed to the Google Groups
> "jallib" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/jallib/6e0906ee-c9ec-4f45-94fb-3f99356d83aen%40googlegroups.com
> <https://groups.google.com/d/msgid/jallib/6e0906ee-c9ec-4f45-94fb-3f99356d83aen%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>
> --
> You received this message because you are subscribed to the Google Groups
> "jallib" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
>
> https://groups.google.com/d/msgid/jallib/2a51961c-ca87-4ba0-b033-c7898ef83840n%40googlegroups.com
> <https://groups.google.com/d/msgid/jallib/2a51961c-ca87-4ba0-b033-c7898ef83840n%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>
> --
> You received this message because you are subscribed to the Google Groups
> "jallib" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/jallib/401018371.2597514.1652852628853%40mail.yahoo.com
> <https://groups.google.com/d/msgid/jallib/401018371.2597514.1652852628853%40mail.yahoo.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"jallib" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jallib/CAM%2Bj4qv39j7v5Ys3_xqsJ8u4G%3DujeYaZBc5iMXAZwiKVHMgAig%40mail.gmail.com.

Reply via email to