Microcontroller data processing

Status
Not open for further replies.
E

expertengr

Guest
Hi,

I have some elementary questions.

1 - Is there any software which can analyze timing for a Microcontroller ? like in case of FPGA, Modelsim is used for simulation.
2- How microcontroller can be used parallel processing ? for example if one block sample the data using ADC and other block send the data over UART.
3- Is it possible to achieve 1 M sample per second by a Microcontroller ? Can we do it with 8 bit PIC ?
 

Some answers - but probably not the ones you want:
1) It depends on the microcontroller you are using. There are some simulators that are created by various manufacturers and 3rd parties that have 'stop watch' functions. You will need to be more specific about the MCU/manufacturer/end use requirement if you want a real answer.
2) It depends on the micrcontroller you are using. Most have a single core and so technically the answer is 'no' for those ones. However I have used interrupt-driven software and DMA which allows me to "simultaneously" use devices. Again it all depends on your requirements if this is suitable.
3) It depends on the microcontroller you are using. There certainly are MCUs with ADCs that can exceed 1Msps but I'm not sure how the 8-bit devices would go (in general) - it is not necessarily the ADC part that is the problem but moving the data around on 8-bit devices can be a bit of an issue if the maximum clock speed is not that high.
These questions sound to me as though this is an 'XY Problem' (https://xyproblem.info/) - what are you really trying to do?
Susan
 

Hi

I agree....and add some informations:
1) it is very simple to SET and CLEAR a port pin at dedicated locations in code. With a scope you can see if, how often and how much time this code takes.

2) read through the microcontroller's periferals documentation (maybe they have something like DMA), use interrupts, use a real time OS. And if you think you are low in processing power...don't waste much time and use a microcontroller with more power.

3) 1Msampl/s...
* continously: I don't think it makes sense with a 8 bit microcontroller, because the limited processing power and the bottleneck in the data interfaces.
* for bursts, like taking 256 samples and then process the sampled data:....yes, if the ADC is fast enough...

Maybe start with a more powerful microcontroller and later - when you gained experience with the needed processing power - you may use smaller microcontrollers.

It really depends. I do a lot of measurement stuff on 8 bit AVR like: continously sampling data with 20kSmpl/s, digital filtering, DFT, squaring, averaging, square_root and sending the data via SPI or USB, all in real time.....but I can't recommend the same for a beginner in this field of data processing. Too many pitfalls.

Klaus
 

Status
Not open for further replies.

Similar threads

Cookies are required to use this site. You must accept them to continue using the site. Learn more…