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+        stopbit12    1    1*2+        startbit13    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=321    1    idle        framing error
22    1    idle        framing error23    1    idle        framing error24    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
CheersFilipe 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.
  


-- 
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.
  

-- 
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.

Reply via email to