Использование модульных источников питания открытого типа широко распространено в современных устройствах. Присущие им компактность, гибкость в интеграции и высокая эффективность делают их отличным решением для систем промышленной автоматизации, телекоммуникационного оборудования, медицинской техники, устройств «умного дома» и прочих приложений. Рассмотрим подробнее характеристики и особенности трех самых популярных вариантов AC/DC-преобразователей MW открытого типа, подходящих для применения в промышленных устройствах - серий EPS, EPP и RPS представленных на Meanwell.market.
Это для MAX7219 - инициализация и данные - в 8-битнов виде (так удобнее)
Удобнее будет единая функция на все случаи, компонующая 16-битную посылку из своих параметров - адреса и данных в требуемой спецификацией порядке. А инициализационные таблицы переоформите в виде:
Можно, конечно, и кувалдочкой *((uint16_t*)Test_Buffer1 + n) - но это, в зависимости от платформы, грозит преждевременным знакомством с понятием endianness используемой аппаратной части.
_________________ Одновременным нажатием LIGHT и POWER, РП Sangean ATS-909X (ver 1.29) превращается в ATS-909XR!
Удобнее будет единая функция на все случаи, компонующая 16-битную посылку из своих параметров - адреса и данных в требуемой спецификацией порядке. А инициализационные таблицы переоформите в виде:
Можно, конечно, и кувалдочкой *((uint16_t*)Test_Buffer1 + n) - но это, в зависимости от платформы, грозит преждевременным знакомством с понятием endianness используемой аппаратной части.
Благодарю
_________________ Хорошему коту и в декабре - март
Пытаюсь изучить работу таймера и прерываний. MK AT89C2051, кварц 4 МГц. Компилятор языка Си ICC8051. По задумке таймер должен перезагружаться каждые 0,05 с (предустановка таймера 0xBEE5 - 48869). .... Но что-то пошло не так... Не могу разобраться сам в чём косяк.
Спасибо всем просмотревшим моё сообщение Разобрался сам...
Спасибо всем просмотревшим моё сообщение Разобрался сам...
Разберись заодно и с тем, что если изучаешь работу таймеров с прерываниями, но программа на Си не работает, то это еще не означает, что есть какие-то вопросы по C/C++
Приветствую!!! Задача состоит в том,что в области EEPROM нужно разместить структуру, полями которой являются тоже структуры с двумя полями типа uint8.Зетем с помощью указателей уже работать с ними. Но что-то делаю неверно и не могу понять.
Карма: 38
Рейтинг сообщений: 618
Зарегистрирован: Пн апр 06, 2015 11:01:53 Сообщений: 3092 Откуда: москва, уфа
Рейтинг сообщения:1
честно говоря особо не помню чего там в атмегах, но имхо так вольно обращаться с EEPROM-ом не особо позволяется.
смотрите, что происходит по коду: вы объявляете, размещаете в EEPROM (утрированно) и инициализируете три структуры (GWS_Yanvar, GWS_Fevral, GWS_Mart). Затем объявляете, размещаете в EEPROM структуру Mecyac и заполняете три первые ее поля значениями соответствующих полей предыдущих структур. Это не имеет особого смысла.
судя по префиксу EEMEM, у вас WinAVR или другой вариант AVR-GCC. так вот, эти компиляторы напрямую с данными в EEPROM работать не умеют, соответственно, никаких указателей на данные в EEPROM быть не может со всеми вытекающими обращениями. судя по названиям, вы выбрали крайне неудачный способ структурирования данных. а главная проблема ваша в том, что первичная инициализация структур должна быть явной, т.е. в качестве данных для одной структуры нельзя указывать содержимое другой структуры. то есть вам надо для GWS_Dannie использовать явную инициализацию {{0,0}, {1,1}, {2,2}, ... };
_________________ если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе при взгляде на многих сверху ничего не меняется...
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения