Время преобразования и система тактирования АЦП

 

Рассмотрим настройку тактирования АЦП на примере. Тактирование АЦП осуществляется от высокоскоростного прескалера периферии HSPCLK (см. рис. 5.3).

 

Рис. 5.3. Пример конфигурации модуля тактирования АЦП.

 

Максимальная частота на выходе HSPCLK составляет 150 МГц. Максимальная частота тактирования АЦП FCLK согласно документации составляет 25 МГц. ADCCLKPS служит для формирования требуемой частоты FCLK из HSPCLK. Бит CPS позволяет при необходимости понизить частоту в два раза. Полученная ADCCLK подается на ядро АЦП и на устройство выборки-хранения. Битами ACQ_PC можно задать необходимое время захвата сигнала. За это время сигнал на УВХ должен установиться с заданной точностью. Время захвата зависит от сопротивления источника сигнала, характеристик сигнала, требуемой точности и рассчитывается для каждого случая отдельно. В лабораторных работах сигнал подается с потенциометра, высокая точность не требуется, поэтому время выборки может быть задано любое. 

Минимальное время преобразования для первого канала в последовательности составляет 200 мкс, для последующих - 80 мкс.

Формат регистров модуля АЦП

 

Рис. 5.4. Регистр 1 управления АЦП (ADCTRL1)

 

Рис. 5.5 Регистр 2 управления АЦП (ADCTRL2)

Рис. 5.6 Регистр 3 управления АЦП (ADCTRL3)

Делитель частоты ядра. Периферийная частота процессора, HSPCLK, делится на 2* ADCCLKPS[3:0], за исключением, когда ADCCLKPS[3:0] = 0000, в этом случае HSPCLK не делится. Полученная частота дополнительно делится на ADCTRL1[7]+1.
ADCCLKPS [3:0] Делитель частоты ядра ADCLK (частота тактирования АЦП)
0000 0 HSPCLK/(ADCTRL1[7] + 1)
0001 1 HSPCLK/[2*(ADCTRL1[7] + 1)]
0010 2 HSPCLK/[4*(ADCTRL1[7] + 1)]
0011 3 HSPCLK/[6*(ADCTRL1[7] + 1)]
0100 4 HSPCLK/[8*(ADCTRL1[7] + 1)]
0101 5 HSPCLK/[10*(ADCTRL1[7] + 1)]
0110 6 HSPCLK/[12*(ADCTRL1[7] + 1)]
0111 7 HSPCLK/[14*(ADCTRL1[7] + 1)]
1000 8 HSPCLK/[16*(ADCTRL1[7] + 1)]
1001 9 HSPCLK/[18*(ADCTRL1[7] + 1)]
1010 10 HSPCLK/[20*(ADCTRL1[7] + 1)]
1011 11 HSPCLK/[22*(ADCTRL1[7] + 1)]
1100 12 HSPCLK/[24*(ADCTRL1[7] + 1)]
1101 13 HSPCLK/[26*(ADCTRL1[7] + 1)]
1110 14 HSPCLK/[28*(ADCTRL1[7] + 1)]
1111 15 HSPCLK/[30*(ADCTRL1[7] + 1)]

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: