Малогабаритный микроконтроллерный модуль "MiniMother AVR"

Вопросы и замечания по статьям и схемам, представленным на нашем сайте

При поддержке РадиоКОТструктор.ру


su9
Открыл глаза
Сообщения: 51
Зарегистрирован: Вс сен 13, 2009 23:45:30
Откуда: Новый Гондурас

Re: Малогабаритный микроконтроллерный модуль "MiniMother AVR

Сообщение su9 »

как быть?
Clip_9.jpg
(193.9 КБ) 582 скачивания
Аватара пользователя
Alex62
Мучитель микросхем
Сообщения: 454
Зарегистрирован: Чт ноя 19, 2009 13:37:21
Откуда: Минск

Re: Малогабаритный микроконтроллерный модуль "MiniMother AVR

Сообщение Alex62 »

Можно ли подправить исходник - не рисует примитивы и заполнение?

А на каком контроллере дисплей? И какие именно функции он не выполняет?

Просто сейчас у меня нет дисплейчиков с некоторыми контроллерами и проверить будет сложновато. Но тем не менее постараюсь разобраться.
Общаюсь на ТЫ. Без расшаркиваний.
su9
Открыл глаза
Сообщения: 51
Зарегистрирован: Вс сен 13, 2009 23:45:30
Откуда: Новый Гондурас

Re: Малогабаритный микроконтроллерный модуль "MiniMother AVR

Сообщение su9 »

как быть?
Вложения
Clip_9.jpg
(193.9 КБ) 523 скачивания
su9
Открыл глаза
Сообщения: 51
Зарегистрирован: Вс сен 13, 2009 23:45:30
Откуда: Новый Гондурас

Re: Малогабаритный микроконтроллерный модуль "MiniMother AVR

Сообщение su9 »

ILI9320 - все работает отлично кроме этих функций - не рисует линии и точки
Вложения
03RAB.RAR
(969.18 КБ) 252 скачивания
Последний раз редактировалось su9 Чт мар 21, 2013 20:10:07, всего редактировалось 1 раз.
Аватара пользователя
Alex62
Мучитель микросхем
Сообщения: 454
Зарегистрирован: Чт ноя 19, 2009 13:37:21
Откуда: Минск

Re: Малогабаритный микроконтроллерный модуль "MiniMother AVR

Сообщение Alex62 »

Там нет ошибок. Там только "вонинги" - предупреждения. Часть из них о том, что функции написаны, но не используются, а часть предупреждает о том что надо бы заменить названия переменных с "int" на "long". Это из особенностей применения языка Си. В моем случае я настроил проект так, что "int" автоматически подразумевается "unsigned int" Это где то в свойствах проекта выставляется галочкой. А так оно должно скомпилировать проект даже с этими предупреждениями.
Общаюсь на ТЫ. Без расшаркиваний.
su9
Открыл глаза
Сообщения: 51
Зарегистрирован: Вс сен 13, 2009 23:45:30
Откуда: Новый Гондурас

Re: Малогабаритный микроконтроллерный модуль "MiniMother AVR

Сообщение su9 »

с компиляцией проблем нет, просто графика мое больное место.
Аватара пользователя
Alex62
Мучитель микросхем
Сообщения: 454
Зарегистрирован: Чт ноя 19, 2009 13:37:21
Откуда: Минск

Re: Малогабаритный микроконтроллерный модуль "MiniMother AVR

Сообщение Alex62 »

su9 писал(а):ILI9320 - все работает отлично кроме этих функций - не рисует линии и точки

Так дистанционно сложно сказать. Пришли мне файл "ILI9325.h" а заодно и файл с функцией "main" из твоего проекта. И менял ли ты там что нибудь? И если менял то что?

И что значит "больное место"? Непонятен процесс вывода точки, символа......? Или что другое "болит"? :)
Общаюсь на ТЫ. Без расшаркиваний.
su9
Открыл глаза
Сообщения: 51
Зарегистрирован: Вс сен 13, 2009 23:45:30
Откуда: Новый Гондурас

Re: Малогабаритный микроконтроллерный модуль "MiniMother AVR

Сообщение su9 »

ничего не менялось - проект в личку - здесь что то не заходит
Аватара пользователя
Alex62
Мучитель микросхем
Сообщения: 454
Зарегистрирован: Чт ноя 19, 2009 13:37:21
Откуда: Минск

Re: Малогабаритный микроконтроллерный модуль "MiniMother AVR

Сообщение Alex62 »

su9 писал(а):ILI9320 - все работает отлично кроме этих функций - не рисует линии и точки

Для начала поправь инициализацию дисплея. Убери строчку SetReg(0xe5,0x8000); такого регистра нет в этом контроллере, и измени значение SetReg(0x60,0xa700); на SetReg(0x60,0x2700); И если первое действие ни на что не влияет, просто убираем лишнюю строку, то второе изменяет начало адресуемой области памяти экрана.
Общаюсь на ТЫ. Без расшаркиваний.
su9
Открыл глаза
Сообщения: 51
Зарегистрирован: Вс сен 13, 2009 23:45:30
Откуда: Новый Гондурас

Re: Малогабаритный микроконтроллерный модуль "MiniMother AVR

Сообщение su9 »

Нет, не в этом дело, инициализацию ILI9320, ILI9481, SSD1963 и SPFD5420 знаю как отче наш и все они у меня нормально работают на простых Мегах и STM32F103Rxxx. Скорее всего дело в стекляшке made in поднебесная. Ранее попадался подобный экземпляр который рисовал вертикальные линии только в два пикселя.
Аватара пользователя
Alex62
Мучитель микросхем
Сообщения: 454
Зарегистрирован: Чт ноя 19, 2009 13:37:21
Откуда: Минск

Re: Малогабаритный микроконтроллерный модуль "MiniMother AVR

Сообщение Alex62 »

Конечно"стекляшки made in поднебесная" добавляют головняков иногда. Будем побеждать. Посмотрел код. Все нормалек, должен работать. И я все же настаиваю на том, чтобы ты изменил значение регтстра R60h при инициализации, несмотря на "отченаш". Установленное тобою значение меняет положение начала отсчета координат, и в совокупности с другими настройками может влиять на положение точек. Ну и еще как вариант полностью замени свой файл ILI9320.h на мой ILI9325.h без каких либо правок. Ну и в майне инклюд поменять не забудь. И отпишись.
Общаюсь на ТЫ. Без расшаркиваний.
su9
Открыл глаза
Сообщения: 51
Зарегистрирован: Вс сен 13, 2009 23:45:30
Откуда: Новый Гондурас

Re: Малогабаритный микроконтроллерный модуль "MiniMother AVR

Сообщение su9 »

Все перепробовал - только на на уши не смог встать, слаб. Put_Line не хочет работать куда и как не выводи!
Эта же стекляшка почему то выполняет все команды на Меге и STM с той же инициализацией - к чему бы это?
Аватара пользователя
Alex62
Мучитель микросхем
Сообщения: 454
Зарегистрирован: Чт ноя 19, 2009 13:37:21
Откуда: Минск

Re: Малогабаритный микроконтроллерный модуль "MiniMother AVR

Сообщение Alex62 »

В основе команды Put_Line лежит Put_Pixel . Работает ли она? Синусоиду рисует?

Попробуй заменить функцию Put_Line на такую:
//=========
// Рисуем линию (алгоритм Брезенхема)
//=========
void Put_Line_2(int x1,int y1,int x2,int y2,int color) //обрати внимание что имя отличается!!!
{ //Закомментить старую и поправить имя.
const int deltaX = abs(x2 - x1);
const int deltaY = abs(y2 - y1);
const int signX = x1 < x2 ? 1 : -1;
const int signY = y1 < y2 ? 1 : -1;
//
int error = deltaX - deltaY;
const int error2 = error * 2;
//
Put_Pixel(x2, y2, color);

while(x1 != x2 || y1 != y2)
{
Put_Pixel(x1, y1, color);

//
if(error2 > -deltaY)
{
error -= deltaY;
x1 += signX;
}
if(error2 < deltaX)
{
error += deltaX;
y1 += signY;
}
}
}
Последний раз редактировалось Alex62 Пт мар 22, 2013 19:18:25, всего редактировалось 3 раза.
Общаюсь на ТЫ. Без расшаркиваний.
su9
Открыл глаза
Сообщения: 51
Зарегистрирован: Вс сен 13, 2009 23:45:30
Откуда: Новый Гондурас

Re: Малогабаритный микроконтроллерный модуль "MiniMother AVR

Сообщение su9 »

Нет. пытается нарисовать прямоугольник . с фонтами и картинками все нормально
ругается на - const int deltaX = abs(x2 - x1); - abs его не устраивает
буду искать дальше...
Последний раз редактировалось su9 Пт мар 22, 2013 19:46:40, всего редактировалось 2 раза.
Аватара пользователя
Alex62
Мучитель микросхем
Сообщения: 454
Зарегистрирован: Чт ноя 19, 2009 13:37:21
Откуда: Минск

Re: Малогабаритный микроконтроллерный модуль "MiniMother AVR

Сообщение Alex62 »

Значит тут и проблема. При выводе изображений Put_Pixel() не используется. Смотрю дальше.
Общаюсь на ТЫ. Без расшаркиваний.
Аватара пользователя
Alex62
Мучитель микросхем
Сообщения: 454
Зарегистрирован: Чт ноя 19, 2009 13:37:21
Откуда: Минск

Re: Малогабаритный микроконтроллерный модуль "MiniMother AVR

Сообщение Alex62 »

Подключи #include <MATH.H>
Общаюсь на ТЫ. Без расшаркиваний.
su9
Открыл глаза
Сообщения: 51
Зарегистрирован: Вс сен 13, 2009 23:45:30
Откуда: Новый Гондурас

Re: Малогабаритный микроконтроллерный модуль "MiniMother AVR

Сообщение su9 »

Alex62 писал(а):Подключи #include <MATH.H>


он на месте, я его не убирал
Аватара пользователя
Alex62
Мучитель микросхем
Сообщения: 454
Зарегистрирован: Чт ноя 19, 2009 13:37:21
Откуда: Минск

Re: Малогабаритный микроконтроллерный модуль "MiniMother AVR

Сообщение Alex62 »

Посмотрел посверял покомпилировал еще раз код и пришел к выводу что все должно работать. А если не работает, то надо к китайцам за бубном. У меня сейчас дисплея с таким контроллером нет и проверить не смогу. Но ведь раньше то он у меня работал. :dont_know: Можно попробовать поменять функцию Put_Pixel() на вот такую:
//=========
void Put_Pixel(unsigned int x,unsigned int y,unsigned int color)
{
WrCmd(0x20); WrDat(x);
WrCmd(0x21); WrDat(y);
WrCmd(0x22); WrDat(color);
}
//=========
Хотя там все то же, только через вызовы других подпрограмм. Может что теряется при вызовах. Попробуй. :dont_know:
Общаюсь на ТЫ. Без расшаркиваний.
LesliStr
Родился
Сообщения: 5
Зарегистрирован: Ср май 22, 2013 11:03:01
Откуда: Минск

Re: Малогабаритный микроконтроллерный модуль "MiniMother AVR

Сообщение LesliStr »

Мне понравилось. Искал что-то подобное. Хочу повторить, но использовать как чисто модуль отображения информации. Приём, обработку сигналов, вычисления проводить на sam7a3 (модуль обработки). Оба модуля (обработки и отображения) связать по SPI. А сам экранчик с контролером тоже на Жданах брали или где-то заказывали ?
Аватара пользователя
Alex62
Мучитель микросхем
Сообщения: 454
Зарегистрирован: Чт ноя 19, 2009 13:37:21
Откуда: Минск

Re: Малогабаритный микроконтроллерный модуль "MiniMother AVR

Сообщение Alex62 »

На Жданах, конечно. Недавно за такой 60 000 зайцев отдал. :))
А что ж такого вычислять то надо, что аж целый ARM прикрутить решил?
Общаюсь на ТЫ. Без расшаркиваний.
Ответить

Вернуться в «Статьи»