Are you just handling keystrokes Eric ?

Consider the overhead compared to the algorithm.

Algorithm, per input chunk - perhaps 100,000,000 cycles

USART handling, interrupt per character - probably 50-100 cycles .
 
so , it is really no problem.

There's really no need to use DMA unless you want to move megabytes per second
I can help you do that on the STM32 if you need a hand.

Just write an interrupt handler to get the keystroke out of the fifo and move it to a buffer.

Dont forget to check the status register on interrupt also, you need to read the DR to clear the stats if it isnt a char interrupt (ie error interrupt) .

the interrupt will occur i seamlessly.
 
At a convenient juncture, say between each frame, you can deal with the serial buffer.

if you avoid using any FPU  registers in the IRQ handler, even easier (and no need)

NB NOTE WELL the datasheet- the USARTS are VERY different between all STM32s F4,F7,F3,F2,L1 etc





On 7/09/2016 6:17 AM, [email protected] wrote:

Yes I was hoping to use a FIFO as that how I do it on the PIC, however was looking at the datasheet and didnt see any implementation of one, just DMA.

I will have to look closer.

Thanks.

Eric

 

On 2016-09-06 19:14, Bruce Perens wrote:

In sm1000? Since there is no OS you either have to hook into the busy loop or write interrupt code. If the FIFO is deep enough to queue a command, the code will not be time critical and you can do it in the loop. No DMA necessary.


On Sep 6, 2016 7:51 AM, "Shane Burrell" <[email protected]> wrote:
You shouldn't have any problems doing that via DMA UART

On Tue, Sep 6, 2016 at 9:52 AM, <[email protected]> wrote:

I'm wondering if any body has managed to implement the serial USART in a manner that does not interfere with the encode/decode process.

Will be doing away with the switch menu and assume I can send and receive data to the USART in its place as the USART functions independently via DMA and hence shouldn't interfere with any thing I hope.

I'm basically implementing the Yaesu CAT interface and want to send 5 bytes and receives 5 bytes once a second at 9600 baud.

Thoughts?

 

Cheers

Eric

 

------------------------------------------------------------------------------

_______________________________________________
Freetel-codec2 mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freetel-codec2


------------------------------------------------------------------------------

_______________________________________________
Freetel-codec2 mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freetel-codec2


------------------------------------------------------------------------------

_______________________________________________
Freetel-codec2 mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freetel-codec2

 

 


------------------------------------------------------------------------------


_______________________________________________
Freetel-codec2 mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freetel-codec2




------------------------------------------------------------------------------
_______________________________________________
Freetel-codec2 mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freetel-codec2

Reply via email to