Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
10.09.2011, 09:28
|
|
Гражданин KAZUS.RU
Регистрация: 25.11.2009
Сообщений: 609
Сказал спасибо: 37
Сказали Спасибо 140 раз(а) в 72 сообщении(ях)
|
Re: Дисплеи от сотовых (схемы подключения, код, datasheet)
Возникло непреодолимое желание в LCD Nokia 3310 и 3410 избавиться от необходимости дергать ногу Reset. Это реально, или уже кто-то копья обломал и может точно сказать, что невозможно стабильно его запускать без хардварного ресета ?
|
|
|
|
10.09.2011, 09:38
|
|
Почётный гражданин KAZUS.RU
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,616
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
|
Re: Дисплеи от сотовых (схемы подключения, код, datasheet)
Сообщение от BolshoyK
|
Возникло непреодолимое желание в LCD Nokia 3310 и 3410 избавиться от необходимости дергать ногу Reset. Это реально, или уже кто-то копья обломал и может точно сказать, что невозможно стабильно его запускать без хардварного ресета ?
|
У меня работает без ресета и без чипселекта. Т.е. чипселект "всегда", а ресет через RC на плюс. 10К + 1 мкФ. В программе на старте задержка, немного превышающая тау этой цепочки. После задержки - отработка инита дисплея. Сбоев нет.
|
|
|
|
11.09.2011, 05:21
|
|
Гражданин KAZUS.RU
Регистрация: 25.11.2009
Сообщений: 609
Сказал спасибо: 37
Сказали Спасибо 140 раз(а) в 72 сообщении(ях)
|
Re: Дисплеи от сотовых (схемы подключения, код, datasheet)
Сообщение от ut1wpr
|
У меня работает без ресета и без чипселекта. Т.е. чипселект "всегда", а ресет через RC на плюс. 10К + 1 мкФ. В программе на старте задержка, немного превышающая тау этой цепочки. После задержки - отработка инита дисплея. Сбоев нет.
|
Это понятно, это и есть хардварный ресет, просто без участия МК, но я имел в виду нет ли команды, которая приведет все состояние контроллера в исходное. Ведь для 1110i дисплеев такое делают, как я читал.
|
|
|
|
11.09.2011, 10:27
|
|
Почётный гражданин KAZUS.RU
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,616
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
|
Re: Дисплеи от сотовых (схемы подключения, код, datasheet)
Сообщение от BolshoyK
|
Это понятно, это и есть хардварный ресет, просто без участия МК, но я имел в виду нет ли команды, которая приведет все состояние контроллера в исходное. Ведь для 1110i дисплеев такое делают, как я читал.
|
В описании на контроллер не фигурирует. На 1110 действительно есть.
|
|
|
|
13.09.2011, 13:39
|
|
Прописка
Регистрация: 06.05.2008
Адрес: Курган
Сообщений: 161
Сказал спасибо: 31
Сказали Спасибо 9 раз(а) в 7 сообщении(ях)
|
Re: Дисплеи от сотовых (схемы подключения, код, datasheet)
Доброго времени суток, знатоки. Требуется Ваша помощь. Пытаюсь реализовать что то типа экранного меню на Lcd S65(LPH8836). Суть в следующем. Вся выводимая информация разбита на два экрана. Переключение через кнопку. Я так понимаю, у данного дисплея нет функции очистки дисплея, вместо неё есть либо заливка, либо заполнение. Но когда я прописываю в начале каждой страницы заливку, то получаю постоянно обновляющийся экран. Как избежать постоянной заливки(заполнения) экрана?
Вот часть кода:
...
const char m_main = 0,
m_term = 1,
m_kul = 2,
m_set = 3;
char mode;
//Меню
mode = m_main;
while (1)
{
// Place your code here
if (PINC.7 == 0) {
mode++;
if (mode == 4) mode = 0;
if (PINC.6 == 0) mode = 0;
};
if (mode == m_main) {
fill_area(3,155,3,128,0x01FF);
//Часы
put_string(29,32,txt4,textcolor,0x01FF,0,3);
put_string(76,47,txt6,textcolor,0x01FF,0,1);
put_string(86,32,txt4,textcolor,0x01FF,0,3);
put_string(73,25,txt4,textcolor,0x01FF,0,1);
};
if (mode == m_term) {
fill_area(3,155,3,128,0x02FF);
sprintf( LcdBuffDevices,"%d", devices,1 ); delay_ms(50);
//выводим информацию о кол-ве датчиков
put_string(76,4,LcdBuffDevices,BLACK,0,1); //кол-во датчиков
};
};
};
На youtube нашел видео:
http://www.youtube.com/watch?v=m6mtC...eature=related
Примерно так и я хочу сделать, но страницы постоянно обновляются.
Последний раз редактировалось vlad145; 13.09.2011 в 19:09.
Причина: добавил видео
|
|
|
|
13.09.2011, 20:26
|
|
Прохожий
Регистрация: 09.08.2008
Сообщений: 6
Сказал спасибо: 1
Сказали Спасибо 12 раз(а) в 3 сообщении(ях)
|
Re: Дисплеи от сотовых (схемы подключения, код, datasheet)
Сообщение от BolshoyK
|
Прошерстил вроде все... но вот никак не могу найти красивых шрифтов для индикации например времени. т.е. надо только цифры, но большие.
Неужто готового нету нигде и придется с нуля рисовать самому ?
Простое дублирование, чтобы стало больше в 2 раза - некрасиво.
Если важно, то это для нокии 3310 в данный момент хочется.
|
Вот, может кому пригодится мой фонт-конвертер. В архиве бинарник и исходники, для запуска требуется .NET Framework 2.0.
|
|
|
Эти 2 пользователя(ей) сказали Спасибо Yukkie за это сообщение:
|
|
|
15.09.2011, 07:47
|
|
Прохожий
Регистрация: 09.08.2008
Сообщений: 6
Сказал спасибо: 1
Сказали Спасибо 12 раз(а) в 3 сообщении(ях)
|
Re: Дисплеи от сотовых (схемы подключения, код, datasheet)
Поскольку тема вызвала интерес, выкладываю функцию, что выводит время крупным фонтом из примера с конвертером. Фонт не моноширинный, двоеточие и пробел уже чем цифровые символы. Для экономии памяти фонт не содержит отступов между символами, их добавляет знакогенератор. Также, для экономии, данные символов не копируются в оперативную память, а читаются прямо из флеши с помощью PROGMEM и pgm_read_byte объявленных в pgmspace.h компилятора GCC для AVR. Для другой платформы и компилятора, скорее всего, эти функции будут другими. Чтобы минимизировать количество команд позиционирования и ускорить вывод, все символы передаются дисплею одним проходом, в четыре строки.
Код:
|
#include ‹avr/io.h›
#include ‹avr/pgmspace.h›
static uint8_t fontCX[] PROGMEM =
{
// здесь данные сгенерированного фонта
};
void LCD_draw_time_CX(uint8_t hours, uint8_t minutes,
uint8_t seconds, uint8_t xpos, uint8_t ypos)
{
// symbol offsets from font origin
uint16_t dta[5];
dta[0] = (hours / 10) * 18 * 4;
dta[1] = (hours % 10) * 18 * 4;
dta[2] = (seconds & 0x01) ? 10 * 18 * 4 : 10 * 18 * 4 + 24;
dta[3] = (minutes / 10) * 18 * 4;
dta[4] = (minutes % 10) * 18 * 4;
// symbol widths in pixels
uint8_t dsz[5] = { 18, 18, 6, 18, 18 };
// for each of four horizontal lines
for (uint8_t b = 0; b ‹ 4; b++)
{
LCD_set_position(xpos, ypos + b);
// for each displayed symbol of time
for (uint8_t s = 0; s ‹ 5; s++)
{
// for each horizontal pixel of drawing symbol
for (uint8_t x = 0; x ‹ dsz[s]; x++)
{
// send eight vertical pixels of symbol to lcd
LCD_send_data(pgm_read_byte(&fontCX[dta[s] + b * dsz[s] + x]));
}
// draw three pixels whitespace between symbols
for(uint8_t x = 0; x ‹ 3; x++)
{
LCD_send_data(0x00);
}
}
}
} |
|
|
|
|
16.09.2011, 02:42
|
|
Почётный гражданин KAZUS.RU
Регистрация: 03.01.2007
Адрес: Россия,Иркутская обл.
Сообщений: 2,579
Сказал спасибо: 351
Сказали Спасибо 315 раз(а) в 193 сообщении(ях)
|
Re: Дисплеи от сотовых (схемы подключения, код, datasheet)
Сообщение от Yukkie
|
Вот, может кому пригодится мой фонт-конвертер. В архиве бинарник и исходники, для запуска требуется .NET Framework 2.0.
|
Как на счет модели дисплея под прот nokia 1100 ?
__________________
Глаза боятся,а руки делают.
|
|
|
|
16.09.2011, 04:17
|
|
Прохожий
Регистрация: 09.08.2008
Сообщений: 6
Сказал спасибо: 1
Сказали Спасибо 12 раз(а) в 3 сообщении(ях)
|
Re: Дисплеи от сотовых (схемы подключения, код, datasheet)
Сообщение от CERGEI1982
|
Как на счет модели дисплея под прот nokia 1100 ?
|
Я использовал модель из замечательного проекта Nokia LCDs - Proteus VSM Models. Думаю, неправильно выкладывать здесь эту работу, когда ее можно совершенно бесплатно скачать с сайта проекта projectproto.blogspot.com, где заодно сказать автору спасибо.
Всего там три модели дисплеев:
Nokia 6100/6610/6610i (PCF8833)
Nokia 3530/3510i/3595 (S1D15G14)
Nokia 1100 (PCF8814)
|
|
|
Эти 4 пользователя(ей) сказали Спасибо Yukkie за это сообщение:
|
|
|
16.09.2011, 20:03
|
|
Прописка
Регистрация: 06.05.2008
Адрес: Курган
Сообщений: 161
Сказал спасибо: 31
Сказали Спасибо 9 раз(а) в 7 сообщении(ях)
|
Re: Дисплеи от сотовых (схемы подключения, код, datasheet)
Подскажите, кто разбирался, на LS020(LPH8836) реально сделать функцию Lcd_Clear или Cls(как в Basic-е), или остаётся только заливка?
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 00:19.
|
|