i guess i cant contact UART on mesa 5i25 by linuxcnc, just only can get
data from FIFO. I found a way to solve this problem without touchich uart.c
source but it's not complete.

in 8 bytes serial, the first data is "P" (80 in hexa) and last bytes is
"CR" (13 in hexa).

if i read FIFO data every 1 ms ( speed to read 1 bytes at 9600 baudrate and
10 bit frames), function will stop reading when it sees 80 ( or 13) but i
get only 1 byte that is 80 (or 13). I guess RX FIFO is cleared everytime i
read but i didnt find where that function is in:

https://github.com/araisrobo/linuxcnc/blob/master/src/hal/drivers/mesa-hostmot2/uart.c#L267

So I "read" data in RX FIFO as fast as time to send/receive 8 bytes data,
function will stop when it sees  80 . For UART has 9600 baudrate, 10
bit/byte and 8 bytes. My formula to caculate thread :
            100us/bit * 10bit/byte * 8bytes * 2 ( for tx and rx).
This time i get all data but sometimes lost last bytes.

Below is my modified mesa_uart.comp file.

2018-03-23 10:47 GMT+07:00 Thắng Lê <lethang12...@gmail.com>:

> i read uart.c that is written by Andy and found some lines that maybe can
> clear FIFO:
>
> https://github.com/araisrobo/linuxcnc/blob/master/src/hal/
> drivers/mesa-hostmot2/uart.c#L164-L165
>
> the data receive RX at:
> https://github.com/araisrobo/linuxcnc/blob/master/src/hal/
> drivers/mesa-hostmot2/uart.c#L296-L332
>
> When you said "disable RX", does that mean disable RX on 5i25 or RX on
> this driver?
>
> 2018-03-22 10:18 GMT+07:00 Thắng Lê <lethang12...@gmail.com>:
>
>> i 'm looking at* hm2_uart_setup,* the rx_mode describe:
>> *       Bit 0* = FalseStart bit Status, 1 = false start bit detected
>>        *Bit 1* = OverRun Status, 1 = overrun condition detected (no
>> valid stop bit)
>>        *Bit 2* = RXMaskEnable, 1= enable RXMask for half duplex
>> operation, 0 = ingore RXMask
>>        *Bit 4* = FIFOError, indicates that a host read has attemped to
>> read more data than available. (mainly for driver debugging)
>>        *Bit 5* = LostDataError, indicates that data was received with no
>> room in FIFO,
>> *       Bit 6* = RXMask, RO RXMASK status
>> *       Bit 7* = FIFO Has Data
>>
>> I'm not very clearly understand when i read it,i dont see how to clear
>> FIFO or disable RX from these 7 bits. I guess u mention pktuart, right?
>>
>>
>>
>> 2018-03-22 0:28 GMT+07:00 Peter C. Wallace <p...@mesanet.com>:
>>
>>> On Wed, 21 Mar 2018, Th?ng L? wrote:
>>>
>>> Date: Wed, 21 Mar 2018 15:20:12 +0700
>>>> From: "[UTF-8] Th?ng L?" <lethang12...@gmail.com>
>>>> Reply-To: EMC developers <emc-developers@lists.sourceforge.net>
>>>> To: EMC developers <emc-developers@lists.sourceforge.net>
>>>> Subject: Re: [Emc-developers] writing new firmware to read yaskawa
>>>> absolute
>>>>     encoder
>>>>
>>>> i'm using mesa_uart to read serial data but i have a issue. Sometimes,
>>>>
>>> after sending 8 bytes, the  phase A isnt come back idle state-5V state
>>> (it
>>> keeps 0V state).  This mean uart is still getting data after first 8
>>> bytes,then
>>> the UART data shows me rx-bytes = 16, all  rx-data = 0.
>>>
>>>
>>>
>>>
>>>
>>> Is mesa_uart posible to limit the number bytes UART read?
>>>
>>>
>>> No, but this is expected if the input is driven low after the data
>>> you must only clear the UART/FIFO when the data line is idle
>>>
>>> You can disable RX if you know when the input data will become invalid
>>>
>>> (you would also expect to see the framing error bit set in this
>>> circumstance)
>>>
>>>
>>>
>>> 2018-03-16 23:52 GMT+07:00 Peter C. Wallace <p...@mesanet.com>:
>>>
>>> On Fri, 16 Mar 2018, Th?ng L? wrote:
>>>>
>>>> Date: Fri, 16 Mar 2018 23:43:49 +0700
>>>>
>>>>> From: "[UTF-8] Th?ng L?" <lethang12...@gmail.com>
>>>>> Reply-To: EMC developers <emc-developers@lists.sourceforge.net>
>>>>> To: EMC developers <emc-developers@lists.sourceforge.net>
>>>>> Subject: Re: [Emc-developers] writing new firmware to read yaskawa
>>>>> absolute
>>>>>     encoder
>>>>>
>>>>> ah, i understood what you mean. thank you very much
>>>>>
>>>>>
>>>> 2018-03-16 23:30 GMT+07:00 andy pugh <bodge...@gmail.com>:
>>>>
>>>> On 16 March 2018 at 16:27, Thÿÿÿÿng Lÿÿÿÿ <lethang12...@gmail.com>
>>>> wrote:
>>>>
>>>>> > this is a great idea but how can i right-shift the data? Both your
>>>>> way
>>>>> and
>>>>> > Peter's way seem have to touch UART  source
>>>>>
>>>>> No, you can shift the raw data in the HAL component that interprets the
>>>>> data.
>>>>>
>>>>> --
>>>>> atp
>>>>> "A motorcycle is a bicycle with a pandemonium attachment and is
>>>>> designed for the especial use of mechanical geniuses, daredevils and
>>>>> lunatics."
>>>>> ÿÿÿÿ George Fitch, Atlanta Constitution Newspaper, 1916
>>>>>
>>>>>
>>>> Actually theres no shifting involved, only manipulating bit 7 of the
>>>> 8 bit data
>>>>
>>>> Peter Wallace
>>>> Mesa Electronics
>>>>
>>>> ------------------------------------------------------------
>>>> ------------------
>>>> Check out the vibrant tech community on one of the world's most
>>>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
>>>> _______________________________________________
>>>> Emc-developers mailing list
>>>> Emc-developers@lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/emc-developers
>>>>
>>>>
>>>>
>>>
>>> --
>>> Lÿÿ Thÿÿÿÿng
>>> Phone: (+84) 1222443855
>>> Email: lethang12...@gmail.com
>>> ------------------------------------------------------------
>>> ------------------
>>> Check out the vibrant tech community on one of the world's most
>>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
>>> _______________________________________________
>>> Emc-developers mailing list
>>> Emc-developers@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/emc-developers
>>>
>>> Peter Wallace
>>> Mesa Electronics
>>>
>>> (\__/)
>>> (='.'=) This is Bunny. Copy and paste bunny into your
>>> (")_(") signature to help him gain world domination.
>>>
>>> ------------------------------------------------------------
>>> ------------------
>>> Check out the vibrant tech community on one of the world's most
>>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
>>> _______________________________________________
>>> Emc-developers mailing list
>>> Emc-developers@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/emc-developers
>>>
>>>
>>
>>
>> --
>> Lê Thắng
>> Phone: (+84) 1222443855
>> Email: lethang12...@gmail.com
>>
>
>
>
> --
> Lê Thắng
> Phone: (+84) 1222443855
> Email: lethang12...@gmail.com
>



-- 
Lê Thắng
Phone: (+84) 1222443855
Email: lethang12...@gmail.com

Attachment: mesa_uart.comp
Description: Binary data

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to