Main Site Documentation

G400D Clock settings


#1

Hi folks,

as the name told me, the core is running at 400Mhz, but which f is selected for MCK?

Need this to check the possibillity to set TC to generate the clock for my peripherals, like ADC.

Thanks for helping.

With best regards

Gerhard


#2

Is it possible to read some registers to determine what you need?


#3

… if I get the next shipment and than have everything to start …

But for project engineers, to early proof, is the part fitting the Projects Needs or not, this info will be esential!! All the peripheral Timing depends on MCK.

With bes regards

Gerhard


#4

It is exciting to see an advanced user like your but 99% of users use the drivers we provide and never open a datasheet. Also, NETMF hooks into many places in the system so it may not be a good idea to dig too deep?

Can you explain what you are trying to do? Maybe one of the built in services can do the job.


#5

@ andre,

I just read the MPU data sheet and there is the MCK the main clock to all the baud rate gens of the different devices. As some of this devices were in use, for debugging??, I didn’t want to change it, without deep knowledge, whats happen.

@ Gus,

I have to connect an ADC, ADS1274 by Texas Instruments, and I have to sample data at equidistant intervals. Therefore any looping solutions wern’t applicable.

Case this converter chip contains four Sigma-Delta converters, sampling simultaniously with a resolution of 24 bits, I get lot of data, storing this stream byte by byte in a loop also fails.

The preferred Interface is I2S, which is a special function of the chips SSC device, but as someone from GHI told me, this isn’t supported in .netMF or extenden libs.

I also can use SPI.

Timeframe:
The controller has to provide a frequency between 20Mhz and 27Mhz to the clock of the ADC. depends on the possibillities of the controller to make a frequency of this range out of 400MHz.
The ADC needs 512 cycles of that clock to finish one conversion, so we end up around 40kHz to 48kHz.
The SPI shift clock should /2, /4, /8 of the ADC clock for good performance, so we end up around 5MHz.

I sample a burst of 100ms, so the data should go into a buffer. There must be more than one buffer available to decouple foreground (.netMF) and background (RLP). This kills out the idea to use the AT32UC3C, cause this chip has too few internal memory and extra memory uses too much IO lines.

As far as I see, I will use I2S or SPI, connected to the DMAC and pump the data to the memory without disturbing the processor.
This all is up to RLP code, what else.

The forground takes the data and write a burst into a file.

After a job is done, which consists of some thousand bursts, I have 4 hours to postprocess the data.

I rally want to made as nuch as possible in a high level language, but some parts will be done in C using RLP.

I also need a connection to mobile internet (Europeean frequencies) and a web server and an email client and an dyndns client, so the users can connect to the systems web page and do some checks/configs whenever needed.

You see, not so small project and lot of intresting things in it.

With best regards

Gerhard


#6

@ Gerhard - With OSHW it easy to check values by looking at the source code. With premium you can use Register class (as Gus mentioned earlier)

https://www.ghielectronics.com/downloads/man/Library_Documentation_v4.2/Premium/html/ef27ff42-cb65-c89d-7863-edf42f37ec35.htm

You can write a small app that will use Register class to read values from the device.

You can also use the same Register class to write back.

Edit:

Here is a good tutorial:

https://www.ghielectronics.com/docs/108/register-access