Перейти к содержанию
    

Xim73

Участник
  • Постов

    7
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный
  1. Доброго времени суток! Может кто сталкивался с подобным устройством? Правильно ли я понимаю формат выходных данных АЦП? В руководстве сказано, что результат преобразования - это 32-разрядное число в дополнительном коде. Т.е для положительных чисел MSB будет равен 0, а для отрицательных MSB будет равен 1. В то же время сказано, что LSB это избыточный знаковый бит, который равен 0 для положительных чисел и 1 для отрицательных. Получается что эти биты должны быть равны друг другу. Кроме ситуаций когда число выходит за диапазон. Если выходим за диапазон сверху, то MSB = 0, LSB = 1, если выходим за диапазон снизу, то MSB = 1, а LSB = 0. В остальных случаях биты должны быть равны. Я правильно понимаю? Этот формат справедлив, если используется FIR фильтр. Проблема в том, что я получаю от АЦП данные в которых MSB может быть равным 0, LSB может быть равным 1, а прочитанное значение далеко от выхода за диапазон. Это в описании АЦП наточность/ я что-то не так понял или возможно неправильно настроен АЦП?
  2. LPC memory remapping

    Добрый вечер! Хотелось бы поподробнее узнать про механизм переотображения памяти в микроконтроллерах LPC. В руководстве говорится, что на первые 64 байта flash можно отобразить различные участки памяти. Что подразумевается под словом "отобразить"? Просто копируются первые 64 байта, например, ОЗУ в первые 64 байта flash? А куда помещается тогда "старая" таблица векторов? Или она так и остаётся на месте и отображение происходит как-то по-другому? Заранее благодарю за помощь!
  3. Я правильно понимаю, что каждый раз при смене канала или OSR первый результат будет битым? Т.е. реально имеет смысл использовать удвоение выходной частоты при использовании одного канала а если опрашивать несколько каналов, то это не имеет смысла?
  4. Доброго времени суток! При работе с АЦП LTC2449 у меня возник следующий вопрос: В даташите написано, что можно увеличить скорость преобразования в 2 раза, если задать биту TWOX в управляющем слове значение единицы. Также написано про 1 цикл задержки. Что это за задержка и когда происходит? Как работает АЦП в данном случае? Можете объяснить новичку доступным языком? Заранее благодарю за помощь!
  5. __aeabi_idiv

    Да, вы правы. Функция библиотечная. Находится в файле rt4t_al.a. А я наивно предполагал, что есть исходники к этой библиотеке (IAR вроде как лицензионный). Но исходники есть только к стандартной библиотеке. Ну да ладно, посмотрю код в отладчике. Всем большое спасибо за ответ.
  6. __aeabi_idiv

    Доброго времени суток! Решил посмотреть во что компилируется мой код и увидел следующее: SECTION `.text`:CODE:NOROOT(2) ARM // 13 int main (void) // 14 { main: PUSH {R4,LR} // 15 int a=10; MOV R0,#+10 // 16 int b =3; MOV R1,#+3 // 17 int c = a/b; BL __aeabi_idiv MOVS R4,R0 Как я понимаю, это вспомогательная функция, реализующая операцию деления двух целых чисел, ведь процессор делить не умеет. Хотел посмотреть код данной функции, но не нашёл никакого упоминания о ней ни в исходниках библиотеки IAR, ни в документации к IARу. Может кто-нибудь знает где она находится? Заранее благодарю за ответ
  7. Watchdog

    Добрый вечер! Возник небольшой вопрос по сторожевому таймеру в микроконтроллере LPC106. Как считается время таймаута сторожевого таймера? В документации сказано, что период таймаута может варьироваться в диапазоне от tpclk * 256 * 4 до tpclk * 232 * 4 Что такое tpclk? Это частота работы периферии? Если так, то получаем для частоты 60 МГц wd_period = 61440000000. Это длительность периода в тактах? А как перевести её в секунды? Заранее благодарю за ответы!
×
×
  • Создать...