F40-43a (1041604), страница 18
Текст из файла (страница 18)
Временные диаграммы АЦП с внутренним источником запускаУстановка в ‘1’ бита AD2BUSYПереполнение Таймера 2, Таймера 3Установка в ‘1’ бита AD0BUSY(AD2CM[2:0]=000, 001, 011, 0xx)12345678910 11 12Такт. сигналАЦП2AD2TM=1Режим энергосбер-яили преобразование Слежение1234Преобразование5678Режимэнергосбережения9Такт. сигналАЦП2AD2TM=089Слежение илипреобразованиеПреобразованиеРед.
1.3СлежениеC8051F040/1/2/37.2.3. Время установленияЕсли конфигурация входов АЦП2 изменяется (т.е. изменяются настройки AMUX и PGA), то послеэтого для обеспечения точности преобразования необходимо выдержать паузу длительностью не менееминимального времени установления сигнала. Время установления определяется сопротивлением AMUX2,емкостью накопительного конденсатора УВХ, сопротивлением внешнего источника сигнала и требуемойточностью преобразования. На рис.7.3 показана эквивалентная схема входа АЦП2.
Требуемое времяустановления для заданной точности установления (settling accuracy – SA) можно приблизительно определитьиз уравнения 7.1. Абсолютное минимальное время установления после выбора любого канала AMUX2составляет 0,8мкс. Следует отметить, что в энергосберегающем режиме выборки-хранения после запускакаждого преобразования выборка длится три периода сигнала дискретизации АЦП2. Для большинстваприложений эти три периода сигнала дискретизации будут соответствовать требованиям, предъявляемым ковремени установления.Уравнение 7.1. Время установления сигнала АЦП2t = ln(2n/SA) x RTOTALCSAMPLEгде: SA – точность установления, задаваемая в долях МЗР (например, 0.25 для установления в пределах ¼ МЗР)t - требуемое время установления в секундахRTOTAL – сумма сопротивления AMUX2 и сопротивления внешнего источника сигналаn - разрешение АЦП в битах (8)Рисунок 7.3.
Эквивалентная схема входа АЦП2Выбор каналамультиплексораAIN2.xRMUX = 5kCSAMPLE = 10pFRCInput= RMUX * CSAMPLEРед. 1.390C8051F040/1/2/3Рисунок 7.4. AMX2CF: Регистр конфигурации AMUX2R-R-R-R-R/WPIN67ICR/WPIN45ICБит 7Бит 6Бит 5Бит 4Бит 3Бит 2R/WPIN23ICБит 1Биты 7-4: Не используются: читаются как 0000b.Бит 3: PIN67IC: Бит конфигурации пары входов P1.6, P1.70: P1.6 и P1.7 – независимые одиночные входы1: P1.6 и P1.7 – пара дифференциальных входов (‘+’ и ‘-’ соответственно)Бит 2: PIN45IC: Бит конфигурации пары входов P1.4, P1.50: P1.4 и P1.5 – независимые одиночные входы1: P1.4 и P1.5 – пара дифференциальных входов (‘+’ и ‘-’ соответственно)Бит 1: PIN23IC: Бит конфигурации пары входов P1.2, P1.30: P1.2 и P1.3 – независимые одиночные входы1: P1.2 и P1.3 – пара дифференциальных входов (‘+’ и ‘-’ соответственно)Бит 0: PIN01IC: Бит конфигурации пары входов P1.0, P1.10: P1.0 и P1.1 – независимые одиночные входы1: P1.0 и P1.1 – пара дифференциальных входов (‘+’ и ‘-’ соответственно)Примечание: Для каналов, настроенных как дифференциальные, слово данных АЦП2представляет собой число в дополнительном формате.91Ред.
1.3R/WPIN01ICБит 0Значениепри сбросе:00000000SFR Адрес: 0xBASFR страница: 2C8051F040/1/2/3Рисунок 7.5. AMX2SL: Регистр выбора канала AMUX2RБит 7RБит 6R-R-Бит 5Бит 4RБит 3R/WR/WR/WAMX2AD2 AMX2AD1 AMX2AD0Бит 2Бит 1Бит 0Значениепри сбросе:00000000SFR Адрес: 0xBBSFR страница: 2Биты 7-3: Не используются: читаются как 00000b.Биты 2-0: AMX2AD2-0: Биты адреса AMUX2000-111b: Каналы АЦП1 выбираются в соответствии со следующей таблицей:Биты AMX2AD2-0Биты 3-0 регистра AMX2CF0000010100111001011101110000P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.70001+(P1.0)-(P1.1)+(P1.0)-(P1.1)P1.2P1.3P1.4P1.5P1.6P1.70010P1.0P1.1P1.5P1.6P1.7+(P1.0)-(P1.1)+(P1.0)-(P1.1)+(P1.2)-(P1.3)+(P1.2)-(P1.3)P1.40011+(P1.2)-(P1.3)+(P1.2)-(P1.3)P1.4P1.5P1.6P1.70100P1.0P1.1P1.2P1.3P1.7+(P1.0)-(P1.1)+(P1.0)-(P1.1)P1.2P1.3P1.6P1.70110P1.0P1.1P1.7+(P1.0)-(P1.1)+(P1.0)-(P1.1)+(P1.2)-(P1.3)+(P1.2)-(P1.3)P1.60111+(P1.2)-(P1.3)+(P1.2)-(P1.3)+(P1.4)-(P1.5)+(P1.4)-(P1.5)+(P1.4)-(P1.5)+(P1.4)-(P1.5)P1.60101+(P1.4)-(P1.5)+(P1.4)-(P1.5)+(P1.4)-(P1.5)+(P1.4)-(P1.5)P1.6P1.71000P1.0P1.1P1.2P1.3P1.4P1.51001+(P1.0)-(P1.1)+(P1.0)-(P1.1)P1.2P1.3P1.4P1.51010P1.0P1.1P1.51011+(P1.0)-(P1.1)+(P1.2)-(P1.3)+(P1.2)-(P1.3)P1.4+(P1.0)-(P1.1)+(P1.2)-(P1.3)+(P1.2)-(P1.3)+(P1.6)-(P1.7)+(P1.6)-(P1.7)+(P1.6)-(P1.7)+(P1.6)-(P1.7)+(P1.6)-(P1.7)+(P1.6)-(P1.7)+(P1.6)-(P1.7)+(P1.6)-(P1.7)+(P1.6)-(P1.7)+(P1.6)-(P1.7)+(P1.6)-(P1.7)+(P1.6)-(P1.7)+(P1.6)-(P1.7)+(P1.6)-(P1.7)+(P1.6)-(P1.7)+(P1.6)-(P1.7)1100P1.0P1.11101+(P1.0)-(P1.1)+(P1.0)-(P1.1)1110P1.0P1.11111+(P1.0)-(P1.1)+(P1.0)-(P1.1)P1.2P1.3P1.2P1.3+(P1.2)-(P1.3)+(P1.2)-(P1.3)+(P1.2)-(P1.3)+(P1.2)-(P1.3)Ред.
1.3P1.4P1.5+(P1.4)-(P1.5)+(P1.4)-(P1.5)+(P1.4)-(P1.5)+(P1.4)-(P1.5)+(P1.4)-(P1.5)+(P1.4)-(P1.5)+(P1.4)-(P1.5)+(P1.4)-(P1.5)92C8051F040/1/2/3Рисунок 7.6. ADC2CF: Регистр конфигурации АЦП2R/WAD2SC4R/WAD2SC3R/WAD2SC2R/WAD2SC1R/WAD2SC0R-Бит 7Бит 6Бит 5Бит 4Бит 3Бит 2R/WR/WAMP2GN1 AMP2GN0Бит 1Бит 0Значениепри сбросе:11111000SFR Адрес: 0xBCSFR страница: 2Биты 7-3: AD2SC4-0: Биты установки периода сигнала дискретизации АЦП2Частота сигнала дискретизации АЦП2 определяется частотой системного тактового сигнала всоответствии со следующим уравнением:AD2SC = (SYSCLK/CLKSAR2) – 1,где AD2SC – 5-разрядное значение, задаваемое битами AD2SC4-0CLKSAR2 – необходимая частота сигнала дискретизации АЦП2Максимальное значение частоты сигнала дискретизации АЦП2 приведено в табл.7.1.Бит 2:Не используется. Читается как 0b.Биты 1-0: AMP2GN1-0: Коэффициент усиления программируемого усилителя (PGA) АЦП2.00: Кус = 0.501: Кус = 110: Кус = 211: Кус = 493Ред.
1.3C8051F040/1/2/3Рисунок 7.7. ADC2CN: Регистр управления АЦП2R/WAD2ENR/WAD2TMR/WAD2INTБит 7Бит 6Бит 5R/WR/WAD2BUSY AD2CM2Бит 4Бит 3R/WAD2CM1Бит 2Значениепри сбросе:R/WR/WAD2CM0 AD2WINTБит 1Бит 000000000SFR Адрес: 0xE8SFR страница: 2Bit7: AD2EN: Бит включения АЦП20: АЦП2 отключен. АЦП2 находится в режиме пониженного энергопотребления.1: АЦП2 включен. АЦП2 находится в активном режиме и готов к преобразованию данных.Бит 6: AD2TM: Бит установки режима слежения (выборки) АЦП20: Когда АЦП2 включен, слежение осуществляется всегда, за исключением момента преобразования.1: Режим слежения определяется битами AD2CM2-0.Бит 5: AD2INT: Флаг прерывания от АЦП2 (устанавливается при завершении преобразования)Этот флаг должен быть сброшен программно.0: АЦП2 не закончил преобразование данных (с момента последнего обнуления этого флага)1: АЦП2 закончил преобразование данныхБит 4: AD2BUSY: Бит занятости АЦП2Чтение:0: Преобразование данных завершено или в данный момент преобразование не осуществляется.При аппаратном обнулении этого бита флаг AD2INT устанавливается в 1.1: Идет процесс преобразования данныхЗапись0: Не вызывает никаких действий1: Инициирует запуск преобразования АЦП2, если биты AD2CM2-0 = 000bБиты 3-1: AD2CM2-0: Биты выбора режима запуска преобразования АЦП2Если AD2TM = 0:000: Запуск преобразования осуществляется установкой в 1 бита AD2BUSY.001: Запуск преобразования осуществляется при переполнении Таймера 3.010: Запуск преобразования осуществляется нарастающим фронтом внешнего сигнала CNVSTR2или CNVSTR0.011: Запуск преобразования осуществляется при переполнении Таймера 2.1хх: Запуск преобразования осуществляется установкой в 1 бита AD0BUSY (т.е.
синхронно спрограммно-управляемым преобразованием АЦП0).Если AD2TM = 1:000: Слежение (выборка) начинается в момент установки в 1 бита AD2BUSY и длится 3 периодасигнала дискретизации АЦП2, затем начинается преобразование данных.001: Слежение (выборка) начинается при переполнении Таймера 3 и длится 3 периода сигналадискретизации АЦП2, затем начинается преобразование данных.010: Слежение (выборка) происходит лишь при низком уровне сигнала на входе CNVSTR2 (илиCNVSTR0, см.
раздел 7.2.1); преобразование запускается нарастающим фронтом сигнала навходе CNVSTR2.011: Слежение (выборка) начинается при переполнении Таймера 2 и длится 3 периода сигналадискретизации АЦП2; затем начинается преобразование данных.1хх: Слежение (выборка) начинается в момент установки в 1 бита AD0BUSY и длится 3 периодасигнала дискретизации АЦП2, затем начинается преобразование данных.Бит 0: AD2WINT: Флаг прерывания от детектора диапазона АЦП2 (сбрасывается программно)0: Преобразованные данные не соответствуют заданному диапазону (с момента последнегообнуления этого флага).1: Преобразованные данные соответствуют заданному диапазону.Важное примечание относительно запуска преобразования внешним сигналом (CNVSTR0 илиCNVSTR2): Если CNVSTR2 разведен цифровой матрицей (см.
раздел 17.1), то CNVSTR2 будет внешнимсигналам запуска для АЦП2. Однако, если только CNVSTR0 разведен цифровой матрицей, а CNVSTR2 неразведен, то CNVSTR0 может быть сигналом запуска преобразования как для АЦП0, так и для АЦП2.Ред. 1.394C8051F040/1/2/3Рисунок 7.8. ADC2: Регистр слова данных АЦП2R/WR/WR/WR/WR/WR/WR/WR/WЗначениепри сбросе:Бит 6Бит 5Бит 4Бит 3Бит 2Бит 1Бит 0SFR Адрес: 0xBESFR страница: 200000000Бит 7Биты 7-0: Слов0 данных АЦП2.Рисунок 7.9. Пример слова данных АЦП28-разрядный результат преобразования АЦП2 получается следующим образом:Пример: Порядок записи результата преобразования, вход AIN1.0 (AMX2SL=0x00)AIN1.0 – AGND(Вольты)VREF * (255/256)VREF/2VREF * (127/256)0ADC20xFF0x800x7F0x00Code = Vin x (Gain/VREF) x 256.95Ред.
1.3C8051F040/1/2/37.3. Программируемый детектор диапазона АЦП2Программируемый детектор диапазона АЦП2 постоянно проверяет выходные данные АЦП2 насоответствие заданному пользователем диапазону значений и уведомляет систему при обнаружениинесоответствия. Это особенно эффективно в управляемых прерываниями системах, т.к. позволяет уменьшитьобъем кода и улучшить производительность при одновременном уменьшении времени реакции системы. Флагпрерывания от детектора диапазона (бит AD2WINT в регистре ADC2CN) можно использовать также в режимепрограммного опроса. Граничные значения загружаются в регистры нижней и верхней границ диапазона АЦП2(ADC2GT, ADC2LT). На рис.6.21, рис.6.22, рис.6.23 и рис.6.24 приведены примеры использования детекторадиапазона. Следует отметить, что флаг прерывания от детектора диапазона может устанавливаться как припопадании, так и при непопадании результата преобразования в заданный диапазон, в зависимости от значений,записанных в регистры ADC2GT и ADC2LT.Рисунок 7.10.