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

romanmp

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

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

  • Посещение

Репутация

0 Обычный
  1. Для начала посмотрите обсуждение: http://electronix.ru/forum/index.php?showtopic=42056 Далее рекомендую зайти на сайт супертекса http://www.supertex.com/Feature_HV9910B.html и внимательно почитать документацию по микросхеме, там всё расписано и приведено описание фирменных демоплат. Правда, это всё для HV9910B. В типовом включении HV9910 работает как стабилизатор тока, значение задается резистором в цепи стока транзистора, формула в документации. Диапазон значений выходного тока большой, надо только посчитать резистор. Емкости на землю вешают для фильтрации синфазной помехи по линиям питания (наводимой одновремнно на обе линии относительно земли), схема типовая независимо от входного напряжения. Корпус SO-16 имеет более низкое тепловое сопротивление, поэтому его рекомендуют для высоковольтных применений. Если управление выходным током не используется, LD и PWM соединяются с VDD. При параллелльном включении светодиодов последовательно с каждой цепочкой надо включать выравнивающие резисторы для компенсации разброса падения напряжения на разных светодиодах. Да, и параллельно нагрузке желательно поставить емкость, т.к. переменная составляющая напряжения на выходе обязательно будет. Супертекс рекомендует пленочный конденсатор на 0,47 мкФ, в серийные изделия некоторые ставят до 100 мкФ. Для этих микросхем критическими являются параметры транзистора, в документации всё расписано. Ограничивается общий заряд и емкость. У меня работает с IRFBC30 и SPP04N60.
  2. Прерывание в UART1

    UART1TxEmpty обявлена как volatile?
  3. const unsigned char transpb[16]= {0x0,0x8,0x4,0xc,0x2,0xa,0x6,0xe,0x1,0x9,0x5,0xd,0x3,0xb,0x7,0xf}; // транспонирование байта #define TRANSPB(b) ((unsigned char)((unsigned char)(transpb[b & 0xf]) << 4) | ((unsigned char)(transpb[(b & 0xf0) >> 4])))
  4. В LPC213x LPC214x CAN к сожалению отсутствует.. :( http://www.nxp.com/products/microcontrolle...2bit/index.html
  5. LPC2119/2129/2194/2292/2294 User Manual "IOPIN: ... The current state of the GPIO configured port pins can always be read from this register, regardless of pin direction and mode. Access: Read only." Насчёт fast IO, признаться, я не в курсе. Наверное решили заткнуть эту дыру. ARM изначально предназначен для быстрого выполнения вычислительных операций, а быстрым шевелением ногами видимо решили пожертвовать.
  6. 1. Действительно, есть там такой ляп про 400 kbit/s. У меня в электронном виде английский оригинал книги, там это написано на стр. 99. Это явная ошибка. Для LPC2xxx максимальная частота SPI равна pclk/8. Цитата из user manual: SPI Clock Counter Register... The register indicates the number of pclk cycles that make up an SPI clock... The value of the register must also always be greater than or equal to 8. Violations of this can result in unpredictable behavior. 2. Да, всё так и есть. Хотя в автомобиль действительно и для SAM BOD будет нелишним. 3. В общем насчет выбора МК для данной задачи: Для LPC прийдется ставить буфера на вывод для преобразования 3в->5в, да и по трем вольтам у них выходной ток максимум 4 мА. Особенно хочу обратить внимание: у ARM, и LPC в частности, медленно работает битовый вывод. Нельзя просто вывести требуемое значение в порт, требуются манипуляции с регистрами SET/CLEAR. LPC разогнанный до 60 МГц, будет сопоставим с тем же AVR на 16 МГц. Быстрая работа с периферией - только по внешней шине, но у мелких LPC в 64-выводном корпусе её нет. Если есть опыт работы с AVR, то я бы советовал его и использовать. Учитывая, что объем передаваемых данных небольшой, можно поставить внешний CAN контроллер типа например MCP2510 со связью по SPI, фильтрация сообщений у него настраивается. Или тот же AT90CAN128. Это всё равно будет занимать меньше места, чем LPC+буфера+ещё обвязка к нему. Кстати, нормальной EEPROM в LPC тоже нет. Имею опыт работы с CAN в LPC, и считаю, что реализация CAN на LPC "с нуля" займет намного больше времени, чем прикручивание внешнего контроллера к AVR. По-моему, две основных причины, которые могут повлиять на выбор в сторону ARM со встроенным CAN, это большой объем данных по CAN и/или необходимость в проведении быстрых вычислений.
×
×
  • Создать...