kentawrik

Dma В Микроконтроллерах Nec

3 сообщения в этой теме

kentawrik    0

Такой вопрос:

МК 1146

необходимо выводить 16 бит в порты со стробированием, периодичность вывода строго нормирована.

думаю сделать так:

настроить 2 канала DMA для вывода в нужные порты

настроить таймер 0 для стробирования

сделать триггером для обоих каналов DMA прерывание от таймера 0.

при прерывании от таймера - по идее должны отработать циклы DMA и по таймеру я делаю строб на одном из пинов.

Отсюда вопрос: успеет ли отработать DMA на вывод?

И вообще где узнать каков приоритет обработки данных в МК. (может не настолько силен в английском - но в даташите не нашел)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Migray    5

Если чесно, то не совсем понятно, зачем тут DMA

Данная фича полезна для пересылки больших объемов данных, а на 2 байта ...

Боюсь что больше тормозов получится, со всеми инициализациями. Лады, гляну, по возможности.

Вообще надо будет посмотреть, можно-ли будет одно слово перекинуть в 2 порта сразу.

Тупо воспользоваться тем, что в адресном пространстве специальных регистров они лежат рядом, и объединить их в одну структуру.

Не уверен, что этот номер пройдет, но попробовать можно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
kentawrik    0

В том-то и дело что надо выводить группу данных кадрами по 4 килобайта и четко через определённые промежутки времени. При этом МК будет заниматься другой работой - готовить следующие кадры.

я посчитал что проще будет через DMA вывод делать. Как раз на производительность более благотворно влиять будет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Сообщения

    • Сделайте, попробуйте. А потом критиковать будете. 2-ваттные резисторы выпаивал без проблем. Металл более, чем жесткий при показанном на фото радиусе изгиба крючка. Сделайте, попробуйте. А потом критиковать будете. У меня несколько пинцетов - и анатомические и хирургический. Через несколько минут работы пальцы сводит от усилий сжимания браншей. Да и выводы выскальзывают в одном случае из 3...5. А хирургическим не везде подлезть можно. 
    • А ссылки на почти десяток светодиодов, что я давал выше - просвистели мимо?
    •   Другими словами, я не уверен в полном соответствии модели с фактическим экземпляром, китаец, он же такой ... китаец. Я руки не опускаю, ищу решение, которое меня устроит, применительно к сверлилке. Заказал сегодня ещё мотор, получу - сравню.
    • Как удалить тему? Вопрос решился!
    • Можно, ну почти, но надо поверхности подготавливать. я к примеру поверхность на подошве радиатора и поверхность процессора выравнивал и полировал, полупрозрачным слоем нанесенная паста выдавливалась почти вся и отпечаток был полноценным при снятии
    • Моделька на странице с вашим мотором указана. Характеристики - исчерпывающие. Вот они: RS-775SM-4445-F: Максимальный крутящий момент при 24В и полной остановке указан 0,723 н*м = 7,37 кг*см. Не хило так)). Указан ток Istall=24,5 А при 24В. Значит, Rя=1 Ом. В ваших условиях, когда Кзап=0,3, обороты холостого хода будут Кзап*8300=2500 мин-1, питание мотора будет уже Кзап*24=7,2 В. При 7,2В и Кзап=0,3, ток Istall=7,2 А. Момент при заклинивании будет 7,37*Кзап=2,2 кГ*см. Если не вносить дополнительного сопротивления в цепь мотора.))   У меня: RS-550PH-5740 Максимальный крутящий момент при 18В и полной остановке указан 4,75 кг*см. Указан ток Istall=54,3 А при 18В. Значит, Rя=0,33 Ом. Когда Кзап=0,3, обороты холостого хода будут Кзап*19000=5700 мин-1, питание мотора будет уже Кзап*18=5,4 В. При 5,4В и Кзап=0,3, ток Istall=16,4 А. На деле выходит чуть более 17А. Момент при заклинивании будет 4,75*Кзап=1,43 кГ*см. Что могу сказать по поводу вашего мотора? Нормально он тянет. Просто обороты ХХ чуть повысить - до 3000-4000. Он ведь и так без редуктора работает, а это для мотора заведомо невыгодный режим. Регулятор в данном случае выполняет свою работу как и должен.