Дисплеи от мобильных телефонов- осцилограммы работы

Дисплеи, датчики и прочие функциональные узлы, управляемые МК.
Ответить
Встал на лапы
Сообщения: 91
Зарегистрирован: Сб авг 11, 2012 22:31:57

Сообщение nikityan »

Купил MC34063. и дроссель на 10 mH помойму. мне в принципе надо из 3.6в выдавить 7-8 вольт. Погуглил схемы, там везде надо ставить електролиты большой ёмкости. Схем море какую выбрать не знаю. Может кто подскажет или кинет схему чтоб была малогабаритной?
Реклама
Держит паяльник хвостом
Аватара пользователя
Сообщения: 995
Зарегистрирован: Сб апр 02, 2011 17:59:22
Откуда: Город-герой Севастополь

Сообщение SubDia »

А вот есть калькулятор для лентяев. =)
Считает во все стороны.
Схему генерирует корректную. Пользуйте.
pavel_cydenov: Вобще я праAVRославный человек. Но и про ислARM слышал много хорошего )
MrYuran: Самые ортодоксальные — это PICудеи )
Katz: Не, 51-ники. )
Изображение
Реклама
Поставщик валерьянки для Кота
Сообщения: 2108
Зарегистрирован: Пт авг 29, 2008 16:28:19
Откуда: Киев

Сообщение Foks »

nikityan, от емкости электролита зависит величина пульсаций выходного напряжения. Чтобы получить минимальные пульсации, нужно, во-первых, правильно рассчитать индуктивность под конкретное потребление мощности с выхода. Чем больше индуктивность, тем меньше будут пульсации и меньше нагрузочная способность. Далее, выбрать емкость уже исходя из допустимой величины пульсаций. Обратноходовые схемы в этом плане плохие, т.к. пиковый ток как минимум в 4 раза превышает реальный выходной ток. Нужно использовать прямоходовые (forward), для этого придется мотать небольшой трансформатор.
Giggity giggity goo!
Друг Кота
Сообщения: 4583
Зарегистрирован: Вс дек 05, 2010 06:10:34
Откуда: ЮВ

Сообщение HHIMERA »

nikityan писал(а): Может кто подскажет или кинет схему чтоб была малогабаритной?
Тогда не слушайте этих горе-советчиков... :)))
За эти деньги можно было купить NCP1403...
Схема в PDF...
Можно и TPS61041... но эти подороже будут...
"Я не даю готовых решений, я заставляю думать!"(С)
Реклама
Эиком - электронные компоненты и радиодетали
Держит паяльник хвостом
Аватара пользователя
Сообщения: 995
Зарегистрирован: Сб апр 02, 2011 17:59:22
Откуда: Город-герой Севастополь

Сообщение SubDia »

Главное - что самый умный и красивый советчик пришел как всегда вовремя. :)))
Но таки да, тут не поспоришь - совет попригоднее всех прочих будет. Особенно что касается NCP1403. Тут отдельное спасибо.
Последний раз редактировалось SubDia Вс янв 13, 2013 23:54:32, всего редактировалось 1 раз.
pavel_cydenov: Вобще я праAVRославный человек. Но и про ислARM слышал много хорошего )
MrYuran: Самые ортодоксальные — это PICудеи )
Katz: Не, 51-ники. )
Изображение
Реклама
Встал на лапы
Сообщения: 91
Зарегистрирован: Сб авг 11, 2012 22:31:57

Сообщение nikityan »

Спасибо всем)
Реклама
Поставщик валерьянки для Кота
Сообщения: 2108
Зарегистрирован: Пт авг 29, 2008 16:28:19
Откуда: Киев

Сообщение Foks »

Насколько я понял, вопрос был о габарите выходной емкости и схемах именно на MC34063. Насчет форварда я конечно погорячился, на таких-то мощностях.
Giggity giggity goo!
Грызет канифоль
Аватара пользователя
Сообщения: 271
Зарегистрирован: Вт авг 09, 2011 15:01:44
Откуда: Харьков

Сообщение drakon »

для nikityan, хорошая повышалка на LM2703 / lm2704 / lm27313 / lm2733, корпус SOT23-5, дроссель 2.2uH, выходная емкость 1uF, диод MBR0805 (т.к. дербаним телефоны, там есть маленькие диоды Шоттки и дросселя) и пара резисторов; (частота преобразования больше мегагерца). схемой уже давно пользуюсь и доволен.

запустил зверя - LPH8731 в формате 8bit/pixel. вопросы: если использовать 12bit/pixel цвета будут более насыщенными или просто увеличится количество градаций этих цветов? кто какой ток на подсветку даете (суммарный для двух диодов), есть ли внутри балластные резисторы? как включить 9 битный режим SPI (старший бит данные / команда).
Изображение
Изображение
цветопередача оставляет желать лучшего, но для домашних проектов в самый раз :).
Поставщик валерьянки для Кота
Сообщения: 2108
Зарегистрирован: Пт авг 29, 2008 16:28:19
Откуда: Киев

Сообщение Foks »

Таблицы перекодировки 8 бит в 12 вроде бы можно перезаписать. Поэтому разница только в количестве оттенков. Но если вы собираетесь выводить изображения на него, то их качество в 8бит будет значительно хуже, чем в 12.
Giggity giggity goo!
Грызет канифоль
Аватара пользователя
Сообщения: 271
Зарегистрирован: Вт авг 09, 2011 15:01:44
Откуда: Харьков

Сообщение drakon »

так и думал. на него картинки выводить не буду, это ЖКИ для будущего БП. как включить 9 битный режим SPI (старший бит данные / команда)?
вот прилепил знакогенератор.
Изображение
Встал на лапы
Сообщения: 91
Зарегистрирован: Сб авг 11, 2012 22:31:57

Сообщение nikityan »

Всем привет! Очень мучаюсь с выводом изображения, дисплей от nokia 6610 philips, спокойно инициализирую, вывожу линии, квадратики... А вот сейчас стал вопрос вывода изображения. Долбаюсь уже неделю. Работаю в IARе а код взял из под другого компилятора. Процедура вывода картинки мне ни как не поддаёться. Массив изображения изначально был обьявлен как unsigned char, но компилятор ругался и я сделал __flash char. Но в процедуре меняя unsigned char на __flash char компилятор выдаёт ошибки. Выкладываю свой поэкт, очень прошу, у кого есть IAR сделайте плиз мне процедуру void nlcd_Bitmap(unsigned char start_x, unsigned char start_y, unsigned char h_size, unsigned char v_size, unsigned char *bitmap_data) работоспособной! Спасибо.
P.S. я только начинаюший и поэтому могу не понимать элементарного.
Вложения
Project.rar
(34.58 КБ) 331 скачивание
Мучитель микросхем
Аватара пользователя
Сообщения: 454
Зарегистрирован: Вс янв 15, 2012 19:58:40

Сообщение radiokot__ »

drakon
как включить 9 битный режим SPI

Какой компилятор, апаратный или програмный SPI ?
Ни один домашний кот незнает что он домашний.
Грызет канифоль
Аватара пользователя
Сообщения: 271
Зарегистрирован: Вт авг 09, 2011 15:01:44
Откуда: Харьков

Сообщение drakon »

CVAVR. организовать в МК SPI - раз плюнуть. я не могу найти команду или какой то алгоритм, что б активировать 9 битный режим передачи в ЖКИ.
Поставщик валерьянки для Кота
Сообщения: 2108
Зарегистрирован: Пт авг 29, 2008 16:28:19
Откуда: Киев

Сообщение Foks »

Я вот не понял, а зачем вам понадобился 9-битный режим? В дисплей то всё байтами передается.
Giggity giggity goo!
Мучитель микросхем
Аватара пользователя
Сообщения: 454
Зарегистрирован: Вс янв 15, 2012 19:58:40

Сообщение radiokot__ »

Поэтому я и спрашиваю какой компилятор (хотя видимо CVAVR).
Если апаратный SPI то выводим 1 бит D/C затем включаем SPI и передаём остальные 8 бит.
Если програмный то можно так

Код: Выделить всё

#define clk  PORTB.2 //Порты на выбор
#define da   PORTB.1
#define cs   PORTB.0

#define CMD  0
#define DATA 1
#define imps  clk=1; clk=0; da=0;




void lcd_write(char cd,unsigned char data) // cd = CMD или DATA 
 { 
   unsigned char mask=0x80; 
     cs=0;
    if (cd) da=1; imps;
    for(;mask;mask>>= 1)
    { da = data & mask; imps; }
     cs=1;  
 };
Ни один домашний кот незнает что он домашний.
Друг Кота
Сообщения: 4583
Зарегистрирован: Вс дек 05, 2010 06:10:34
Откуда: ЮВ

Сообщение HHIMERA »

drakon писал(а):я не могу найти команду или какой то алгоритм, что б активировать 9 битный режим передачи в ЖКИ.
Тип интерфейса, как правило, выбирается пинами конфигурации на кристалле и больше никак... Учитывая его размеры ................
АВР для графики сама по себе "тормознуто-унылое создание", а для 9-битного SPI - вообще УГ... :))
И всё это только ради экономии... одной ноги АВР??? :))) :)))
"Я не даю готовых решений, я заставляю думать!"(С)
Встал на лапы
Аватара пользователя
Сообщения: 135
Зарегистрирован: Вт фев 21, 2012 20:42:26
Откуда: Санкт-Петербург, Россия, Земля

Сообщение U235 »

nikityan, попробуйте изменить файл main.c
строка 79

Код: Выделить всё

void nlcd_Bitmap(unsigned char start_x, unsigned char start_y, unsigned char h_size, unsigned char v_size, __flash unsigned char *bitmap_data);
строка 643

Код: Выделить всё

void nlcd_Bitmap(unsigned char start_x, unsigned char start_y, unsigned char h_size, unsigned char v_size, __flash unsigned char *bitmap_data) 
{
    int i;
    __flash unsigned char *pBitmap;
строка 658

Код: Выделить всё

    pBitmap = (__flash unsigned char *)bitmap_data;
Суть в том, что изменения надо делать не только в функции, но и в её объявлении.
А из наших труб идет необычный дым. Стой! Опасная зона! Работа мозга!...
Встал на лапы
Сообщения: 91
Зарегистрирован: Сб авг 11, 2012 22:31:57

Сообщение nikityan »

Спойлерvoid nlcd_Bitmap(unsigned char start_x, unsigned char start_y, unsigned char h_size, unsigned char v_size, const char __flash *bitmap_data)
{
int i;
const char __flash *pBitmap;
// Указать размеры рисунка в соответствии с этими пределами
nlcd_SendByte(CMD_LCD_MODE,PASET); // Команда адреса страницы RAM
nlcd_SendByte(DATA_LCD_MODE,start_x); // Старт
nlcd_SendByte(DATA_LCD_MODE,start_x+h_size-1); // Конец

nlcd_SendByte(CMD_LCD_MODE,CASET); // Команда адреса колонки RAM
nlcd_SendByte(DATA_LCD_MODE,start_y); // Старт
nlcd_SendByte(DATA_LCD_MODE,start_y+v_size-1); // Конец

nlcd_SendByte(CMD_LCD_MODE,RAMWR); // Пишем в RAM

pBitmap = ( const char __flash *)bitmap_data;

for (i = 0; i< (h_size*v_size)>>1 ; i++)
{
char bitmap;
CS_LCD_RESET;

bitmap = *pBitmap++;
nlcd_SendByte(DATA_LCD_MODE,bitmap);
bitmap = *pBitmap++;
nlcd_SendByte(DATA_LCD_MODE,bitmap);
bitmap = *pBitmap++;
nlcd_SendByte(DATA_LCD_MODE,bitmap);
CS_LCD_SET;
}
nlcd_SendByte(CMD_LCD_MODE,NOP);
}
Сделал вот таким образом ( по другому не хотело). Картинка выводиться, но не корректно!
1111.JPG
(66.03 КБ) 520 скачиваний
ABCD0006.JPG
(178.29 КБ) 585 скачиваний
Сгенерировал массив с изображением как на рисунке. А показывает вот так. При этом чёрный и белый остаються нормальными а остальные цвета не совпадают. что делать?
Встал на лапы
Аватара пользователя
Сообщения: 135
Зарегистрирован: Вт фев 21, 2012 20:42:26
Откуда: Санкт-Петербург, Россия, Земля

Сообщение U235 »

nikityan писал(а):Сгенерировал массив с изображением как на рисунке. А показывает вот так. При этом чёрный и белый остаються нормальными а остальные цвета не совпадают. что делать?
Либо в программе конвертации изображения поменяйте порядок записи в массив значений красного и голубого цвета.
Либо можно в коде поменять так.

Код: Выделить всё

for (i = 0; i< (h_size*v_size)>>1 ; i++) 
 { 
 char r, g, b; 
 CS_LCD_RESET;

 r=*pBitmap++;
 g=*pBitmap++;
 b=*pBitmap++;
 nlcd_SendByte(DATA_LCD_MODE, b);
 nlcd_SendByte(DATA_LCD_MODE, g); 
 nlcd_SendByte(DATA_LCD_MODE, r); 
 CS_LCD_SET;
 }
А из наших труб идет необычный дым. Стой! Опасная зона! Работа мозга!...
Встал на лапы
Сообщения: 91
Зарегистрирован: Сб авг 11, 2012 22:31:57

Сообщение nikityan »

В 8 битном режиме отображает нормально. а в 12 ничего не помогает, только если повторю последовательность bgr два раза то изображение уплывает в сторону но цвета совпадают. Что делать? на сайте code image generator написано что 12 битный режим не доработан.
Ответить

Вернуться в «Периферия»