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

PupaJr

Members
  • Постов

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

  • Посещение

Информация

  • Город
    Иркутск

Электроника

  • Стаж в электронике
    Более 20 лет
  • Сфера радиоэлектроники
    микроконтроллеры
  • Оборудование
    Осциллографы, генераторы, анализаторы, ПК.

Посетители профиля

Блок последних пользователей отключён и не показывается другим пользователям.

Достижения PupaJr

Новичок

Новичок (1/14)

  • Год на форуме
  • Неделя на форуме
  • Месяц на форуме

Последние значки

0

Репутация

  1. Совсем нет, просто некоторые форумы "мёртвые". Не совсем контроллерный С такойже как С/С++, и многие приёмы не работают. например char* pmass; - переменная указатель pmass=&Ekran1 - типо дали адрес WriteLCD(pmass); - типо его передали Ругается на несоответствие но компилит, адрес ставит не тот.... " illegal conversion between pointer types pointer to array[64] of const unsigned char -> pointer to int"
  2. Делал похожую задачу, только включал промышленный пресс для прогрева в нужный день и час. Согласен с коллегами со всем что выше сказано, добавлю только что кнопок 3 шт - определённо мало (точнее не удобно пролистывать параметры и менять их), надо 5, к тому же полно выводов у контроллера ещё осталось. Можно конечно и без часов RTC с батарейкой а просто указать интервал времени для каждого крана и длительность импульса открытия- Работает с момента включения. Так как начинающий то это самое то. 5 кранов - 5 независимых программных счётчиков на базе любого аппаратного таймера настроенного на опр. интервал, зная его период считаем секунды-потом минуты-часы.... С чипом RTC хорошо, но накладывается куча всего - I2C/SPI , преобразование BCD/INT/BCD и много всего именно по электронике.
  3. Доброго дня. HT PICC18 9.83, MPLAB8.87, PIC18F25K22. Для вывода изображений на экран LCD используется стандартная процедура перебора колонок и строк 64х64. В соответствии с этим созданы 2хмерные массивы изображений со своими названиями но одинакового размера - точно под экран LCD. При изменении ситуации надо выдать ту или иную картинку на экран. В идеале так: Const char Ekran1 [64][64] { {0x00,........0x63} // 1 строка ..... {0x00,........} // 64 cтрока }; Const char Ekran2 [64][64] { {0x00,........0x63} // 1 строка битовых данных ..... {0x00,........} // 64 cтрока }; WriteLCD(Ekran1); // выдали первый экран DelaySec(3); // пауза WriteLCD(Ekran2); // выдали второй экран DelaySec(3); .... .... Процедура вывода: for(p=0; p<8; p++) //Цикл по всем 8-ми страницам индикатора { WriteCode6464(p|0xB8);//Установка текущей страницы WriteCode6464(0x40);//Установка текущего адреса для записи данных в 0 for(c=0; c<64; c++) //Цикл вывода данных { WriteData6464(Ekran1[p][c]);//Вывод очередного байта в индикатор }; }; Как можно это сделать? Понимаю что через указатели - но не соображу...
×
×
  • Создать...