Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: AVR и Siemens M55
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26
Andrew_KMR
Всем привет!
Проанализировал я тут обмен между телефоном M65 и дисплеем LS020… так вот как видно из рисунка,
перед передачей команды 0xEF90 0500 0600 0700 происходит передёргивание линии CS при смене данные/команда линии RS.
Осмелюсь выдвинуть версию, что это и может быть синхронизация по кадрам.
Кто опробует, пишите!

smile.gif
Barmaley13
Хочу вот на досуге попробовать 240х320 Нокиевский.
N73

Вот тоже линк интересный...
Дисплейные даташиты
gennadij2
Доброго времени суток!

Кто-нибудь знает какие контроллеры установлены в дисплеях от телефонов Sony-ericsson?
Free
Цитата(gennadij2 @ Oct 21 2009, 13:02) *
Доброго времени суток!

Кто-нибудь знает какие контроллеры установлены в дисплеях от телефонов Sony-ericsson?


посмотри тут: http://sandiding.tripod.com/Bertys.html
или вот ещё ссылка пролетала: http://www.beyondinfinite.com/library.html

от к750 интересно было бы запустить)
demadsv
Цитата(gennadij2 @ Oct 21 2009, 12:02) *
Доброго времени суток!

Кто-нибудь знает какие контроллеры установлены в дисплеях от телефонов Sony-ericsson?

Вот список контроллеров для Сонериков
gennadij2
Спасибо Free!

Кое-что тоже накопал

http://forum.se-zone.ru/viewtopic.php?p=219720#219720
Free
интересный список. если найду дисплей от какого нить попробую запустить...
знать название контроллера хорошо конечно, но вот иногда проблемно найти на него даташит нормальный biggrin.gif
Огурцов
Олл, а в сторону чисто стекляшек не смотрели ? Может гораздо легче и быстрее оригинальный контроллер наваять совместными усилиями ?
demadsv
Цитата(Free @ Oct 21 2009, 17:48) *
интересный список. если найду дисплей от какого нить попробую запустить...
знать название контроллера хорошо конечно, но вот иногда проблемно найти на него даташит нормальный biggrin.gif

Есть ДШ на дисп от Сонерика К790-К800(JBT6K71),вот-бы его подключить..
http://slil.ru/28107204
Free
Цитата(Огурцов @ Oct 21 2009, 19:01) *
Олл, а в сторону чисто стекляшек не смотрели ? Может гораздо легче и быстрее оригинальный контроллер наваять совместными усилиями ?


всё таки сваять собственный контроллер посложнее чем использовать готовый, +достать это дело просто и стоит недорого... вот и юзают)

Цитата(demadsv @ Oct 21 2009, 19:24) *
Есть ДШ на дисп от Сонерика К790-К800(JBT6K71),вот-бы его подключить..
http://slil.ru/28107204


довольно подробный даташит, вычисляешь по сервис мануалу телефона как его (дисплей) подключать и можно дерзать... если конечно разьём там нормальный.
интересно узнать результат)

з.ы. трудности возникают в основном с правильной установкой параметров преобразователя. потому что фз, по какой схеме он подключен. ну и стандартные грабли с яркостью и контрастом)
seregamax
Имеется в наличии цветной дисплей от nokia 1600. Дисплей со шлейфом и 10 пиновым разъемом.
На дисплее следующие надписи:
1) TH560BHG-J
2) SA UG09B123CA TJ C02 MP7.1 7 32 0811 4851068

Подскажите пожалуйста какой там контроллер.
Нагуглил только то что эти дисплеи взаимозаменяемые с nokia 2310, 6125.

Из схемы на телефон выяснил распиновку:
1 - LCD_CLK
2 - LCD_SDA
3 - GND
4 - LCD_CSX
5 - LCD_RESETX
6 - VLED+
7 - VLED-
8 - NC
9 - VFLASH1 (2.8V)
10 - VIO (1.8V)

Заранее спасибо.
Denn2003
А может кто-нибудь работал с дисплеем от Nokia 3510 ?
Случайно купил, а подключить не могу...
Cyber_RAT
который чб?
видимо надо смириться и купить тот что нужен (думаю что 3510 чб - стоит бакса 2-3, стоит ли ломать голову?)
или брать даталогер и телефон - и вперед.
Kvik
Ребята, а как дела обстоят с экраном от cx75? еще не расковыряли?
DAPA
Привет. rolleyes.gif
Может вопрос "заезженный" и тривиальный, но тем не менее:

Есть ли разница в работе дисплеем от siemens: LS020 и L2F50?

И как, на пример вывести пиксел заданного цвета в заданные координаты(Какая последовательность команд, и каких?)?

Да, и велика ли вероятность что при попытке запустить этот дисплей(от сименса 65 серии) Я его спалил???? 07.gif
Cyber_RAT
разница есть, причем существенная.
пример вывода пикселя в этой теме встречался неоднократно.

если все напряжения в норме, и выводы при подключении не путали, то неправильными командами - вряд ли вы его могли спалить.
chem_kot
Прочитал 60 страниц темы, на большее не хватило терпения unsure.gif
Подключил экран от siemens s65 lph88 к atmega16. Текст выводил.
Как выводить отдельные пикселы на экран?
Как вставить в код русский шрифт(Программа, которую выкладывали в теме генерирует шрифт в виде двумерного массива [][8],
а в исходнике для работы с экраном массив [96][14])?
RA3WUM
Подскажите, есть такие же проекты с LCD siemens s65, но под ARM без всяких линуксов? rolleyes.gif
Cyber_RAT
тут в теме есть примерчик для at91sam7s128 вроде... поищите
demadsv
http://pocladov.narod.ru/Generator_AD9953_doc.htm -глянь тут.
John Silver
мой проект на основе Покладова
http://electronix.ru/forum/index.php?showt...st&p=495390
-=MaX=-
Доброго времени суток!
У меня недавно сдох Симак СХ65, после ремонта проработал 3 дня и опять сдох.
Хотелось бы подсоединить дисплей и (по возможности) камеру к ПК на LPT или COM порт(желательно на COM, их 2).
Мобильник я росколупал.
Дисплей: LS020B
Камеру отодрать не удалось.
С микроконтроллерами никогда не работал, по этому лучше без них, если можно.
Простым русским языком(как чайнику) объясните как подключить и как управлять?
Управлять LPT портом я умею, а вот с COM еще не пробовал, но разница вроде не большая.
Cyber_RAT
камеру подключали на vtrp вроде - plis+контроллер+память....
дисплей от ком порта будет стираться только несколько секунд... дп и все равно схему согласования делать надо - оно вам нужно?
-=MaX=-
ну если на LPT повесить?
Если делать на контролере, то можно будет поцепить на USB?
Я просто в контролерах ничего не понимаю, поэтому мне легче с минимумом всяких микросхем, чтоб всё управление от ПК было.
Если делать на контролере, то хотелось бы кучу всего реализовать.
demadsv
Цитата(-=MaX=- @ Dec 11 2009, 13:35) *
ну если на LPT повесить?
Если делать на контролере, то можно будет поцепить на USB?
Я просто в контролерах ничего не понимаю, поэтому мне легче с минимумом всяких микросхем, чтоб всё управление от ПК было.
Если делать на контролере, то хотелось бы кучу всего реализовать.

1-http://www.usb-lcd.narod.ru/
2-http://cprime.110mb.com/lesson/0201/1-6.php -это к лпт
-=MaX=-
Сначала попробую (2) - он для меня легче, да и посмотрю как всё это будет выглядеть
как со скоростью у LPT, сколь кадров в секунду даст такой девайс?

по (1):
Для прошивки Mega8 нужна отдельная плата?
Нужен именно Mega8, для USB или есть выбор(нужно подключить дисплей(LS020B), USB, 3-5 кнопок и динамичек(со встроенным генератором))?
желательно конечно ту даже и камеру присобачить.
Насколько сложно собрать такое устройство?
-=MaX=-
Я как то не догоняю откуда (2) берётся питание?
У меня есть родная зарядка, на ней написано 5V 0.4A, этого хватит для (1) и (2)?
также есть аккумулятор на 3.7V 600mA(от С65).
Я вычитал, что если выключить питание и перед этим не разрядить емкостя в дисплее, то срок его службы значительно уменьшится.
Свет частенько отключают, ПК запитан через безперебойник, а как быть с этим девайсом?
Cyber_RAT
мда.
от ЛПТ может получите 1-2 кадра в секунду, про камеру можете забыть, и стоит почитать что-нибудь хотя бы перед сном (по электронике)
-=MaX=-
камеру через микроконтроллер уже буду подключать.
Для начала хочу разобраться с работай дисплея и его применением.
кстати если меня ограничивает именно ЛПТ если его использовать как последовательный, а если по ЛПТ передавать параллельный код а вместо инвертора с открытым коллектором поставить регистр с параллельным входом и последовательным выходом?

и еще вопрос, я кок то не проверял камеру симака на возможность инфракрасной подсветки(я сижу в основном в темноте и моего освещения явно не хватит для камеры), кто нибудь может проверить?
Такая подсветка не повлияет на работу пультов?
-=MaX=-
Нашел stm32f103vet6, Такой МК подойдет для моего девайса?
011119xx
Цитата(-=MaX=- @ Dec 13 2009, 18:33) *
Нашел stm32f103vet6, Такой МК подойдет для моего девайса?

Если никогда не имел дело с МК, то лучше взять что-то попроще. Тот же AVR, например. biggrin.gif
-=MaX=-
Мне нужен МК который потянет всё что я придумаю(желательно с запасом), к тому же в stm32f103vet6:
вроде, уже есть интерфейсы CAN/I2C/SPI/USART/USB;
частота 72MHz;
питание 2 V ~ 3.6 V(я смогу использовать аккумулятор);
есть несколько ЦАП/АЦП(пригодятся для управления яркостью подсветки, и работе с аккумулятором)
Что из этого может AVR(не считая его простоты)?
sonycman
Цитата(-=MaX=- @ Dec 14 2009, 13:49) *
Мне нужен МК который потянет всё что я придумаю(желательно с запасом), к тому же в stm32f103vet6:
вроде, уже есть интерфейсы CAN/I2C/SPI/USART/USB;
частота 72MHz;
питание 2 V ~ 3.6 V(я смогу использовать аккумулятор);
есть несколько ЦАП/АЦП(пригодятся для управления яркостью подсветки, и работе с аккумулятором)
Что из этого может AVR(не считая его простоты)?

Ну МК-то потянет, а вы?
Совсем без опыта работы с МК да сразу USB, камеры и т.п.? biggrin.gif
Софт писать сами собираетесь?

Имхо, вам лучше создать отдельную тему по своему проекту, а здесь всё таки тема чисто по дисплеям smile.gif
-=MaX=-
Тут бы с дисплеем разобраться, остальное буду потом подключать(если не передумаю)
Софт для ПК не проблема, а вот для самого МК прошивку сделать, ну придётся вспоминать ассемблер.
У меня когда то курсак даже был с МК, но там была только теория, да и МК раритетные.
При большом желании разберусь.

К томуже я не говорю что я уже купил stm32f103vet6 и ничего другого знать нихочу.
На данный момент я ищу МК, который мне подойдёт(stm32f103vet6 - функционально подходит, но он очень сложный, особенно для меня).
Я выслушаю все предложения, и выбиру то что понравится
sonycman
Цитата(-=MaX=- @ Dec 14 2009, 17:19) *
Тут бы с дисплеем разобраться, остальное буду потом подключать(если не передумаю)

Для 16 битного дисплея нужна серьёзная скорость передачи данных.
Особенно, если хотите получить высокий фреймрейт.
Поэтому контроллер в этом случае незаменим.

Цитата(-=MaX=- @ Dec 14 2009, 17:19) *
Софт для ПК не проблема, а вот для самого МК прошивку сделать, ну придётся вспоминать ассемблер.

С и С++ вам в помощь. Уверяю, под ARM на асме писать не стоит biggrin.gif
Да и под AVR тоже.
Ассемблер по необходимости освоите в процессе. Возможно, и не потребуется особо.

Цитата(-=MaX=- @ Dec 14 2009, 17:19) *
На данный момент я ищу МК, который мне подойдёт(stm32f103vet6 - функционально подходит, но он очень сложный, особенно для меня).
Я выслушаю все предложения, и выбиру то что понравится

Вам уже посоветовали начинать с AVR.
Выберите из семейства ATmega подходящий чип по корпусу и функционалу, и дерзайте smile.gif
-=MaX=-
А частоты более 20 МГц не бывает?
А какой посоветуете?
чтоб:
- дисплей быстро работал(от ПК и от самого МК),
- можно было управлять яркостью дисплея,
- кнопочек 4-8 штук,
- ну и пару датчиков(освещенность, заряд аккумулятора, наличия напряжения от сети),
- бипер (со встроенным генератором частоты или есле можно чтоб МК задавал частоту),
- ну конечно лучше чтоб был подключен к USB.

Камеру буду подключать скорей всего к другому контроллеру(если буду)
-=MaX=-
atmega128 - подойдёт?
sonycman
Цитата(-=MaX=- @ Dec 14 2009, 22:11) *
atmega128 - подойдёт?

Подойдёт для всего, кроме USB.
Вместо него на первых порах используйте COM порт.
USB много сложнее, особенно для новичка.

Создавайте тему в разделе AVR, если хотите получить более развёрнутую помощь.
-=MaX=-
Тему создал
yarunt
Цитата(demadsv @ Dec 14 2009, 20:02) *

Непонял метод скролирования.Учень нужная фича. Автор,если заглядываете сюда,обьясните как работает.
Juras Pr.
Прокрутка работает только вдоль большей стороны экрана (предположим, ось X), прокручивается изображение на всю высоту (меньшая сторона экрана, предположим, ось Y). В регистр R0Fh записывается стартовое значение области прокрутки по оси X (0, если область должна начинаться с начала оси), в регистр R10h записывается ширина области прокрутки по оси X (176, если надо на всю ширину). В регистр R11h записываем значение сдвига: 0 - ничего не изменится, 1 - прокручиваемая область сместится влево на одну точку, причём освободившееся место справа займёт вытесненная слева часть и т.д. В регистр R11h не следует записывать значения больше, чем ширина прокручиваемой области, иначе может выскочить мусор (а может это вторая страница памяти? biggrin.gif ).
Я считаю, что применение у этой прокрутки очень ограниченное smile.gif. Прикрепляю старую картинку, на ней неправильно указан диапазон значений R11h.
yarunt
Спасибо за подсказку, а почему картинка размыта в области ?
Juras Pr.
Размытая часть во время съёмки двигалась.
-=MaX=-
Подскажите где взять крепёжную рамочку и контакты для LS020B (в телефоне иначе сделано)?
Почти во всех проектах они есть.
Juras Pr.
Контакты есть здесь Steckverbinder für S65 Display, там же, возможно, появятся рамки (была информация на немецком форуме). А если ближе к реальности - то проще купить целый Siemens S65 и выпаять феном рамку и контакты, экран - в бонус.
-=MaX=-
Тогда проще скачать прогу, которая через дата кабель даст полный доступ к потрохам телефона
LexRoss
Попался дисплей от Nokia 6100 с зеленым шлейфом, без контактных площадок сзади. Похоже, что контроллер S1D15G10.
Инициализацию пробовал и для S1D15G10 и для PCF8833, не работат.
Может, я чего пишу не так?
CODE
#include <mega8.h>
#include <delay.h>

#define SPIPORT PORTB
#define SPIDDR DDRB
#define CS 2
#define CLK 5
#define SDA 3
#define RESET 4

#define cbi(reg, bit) (reg&=~(1<<bit))
#define sbi(reg, bit) (reg|= (1<<bit))

#define CS0 cbi(SPIPORT,CS);
#define CS1 sbi(SPIPORT,CS);
#define CLK0 cbi(SPIPORT,CLK);
#define CLK1 sbi(SPIPORT,CLK);
#define SDA0 cbi(SPIPORT,SDA);
#define SDA1 sbi(SPIPORT,SDA);
#define RESET0 cbi(SPIPORT,RESET);
#define RESET1 sbi(SPIPORT,RESET);

#define NOP 0x00 // nop
#define SWRESET 0x01 // software reset
#define BSTROFF 0x02 // booster voltage OFF
#define BSTRON 0x03 // booster voltage ON
#define RDDIDIF 0x04 // read display identification
#define RDDST 0x09 // read display status
#define SLEEPIN 0x10 // sleep in
#define SLEEPOUT 0x11 // sleep out
#define PTLON 0x12 // partial display mode
#define NORON 0x13 // display normal mode
#define INVOFF 0x20 // inversion OFF
#define INVON 0x21 // inversion ON
#define DALO 0x22 // all pixelS OFF
#define DAL 0x23 // all pixelS ON
#define SETCON 0x25 // write contrast
#define DISPOFF 0x28 // display OFF
#define DISPON 0x29 // display ON
#define CASET 0x2A // column address set
#define PASET 0x2B // page address set
#define RAMWR 0x2C // memory write
#define RGBSET 0x2D // colour set
#define PTLAR 0x30 // partial area
#define VSCRDEF 0x33 // vertical scrolling definition
#define TEOFF 0x34 // test mode
#define TEON 0x35 // test mode
#define MADCTL 0x36 // memory access control
#define SEP 0x37 // vertical scrolling start address
#define IDMOFF 0x38 // idle mode OFF
#define IDMON 0x39 // idle mode ON
#define COLMOD 0x3A // interface pixel format
#define SETVOP 0xB0 // set Vop
#define BRS 0xB4 // bottom row swap
#define TRS 0xB6 // top row swap
#define DISCTR 0xB9 // display control
#define DORO 0xBA // data order
#define TCDFE 0xBD // enable/disable DF temperature compens
#define TCVOPE 0xBF // enable/disable Vop temp comp
#define EC 0xC0 // internal or external oscillator
#define SETMUL 0xC2 // set multiplication factor
#define TCVOPAB 0xC3 // set TCVOP slopes A and B
#define TCVOPCD 0xC4 // set TCVOP slopes c and d
#define TCDF 0xC5 // set divider frequency
#define DF8COLOR 0xC6 // set divider frequency 8-color mode
#define SETBS 0xC7 // set bias system
#define RDTEMP 0xC8 // temperature read back
#define NLI 0xC9 // n-line inversion
#define DEFALT 0xEF //default


void shiftBits(byte cool.gif {

CLK0
if ((b&128)!=0) SDA1 else SDA0
CLK1

CLK0
if ((b&64)!=0) SDA1 else SDA0
CLK1

CLK0
if ((b&32)!=0) SDA1 else SDA0
CLK1

CLK0
if ((b&16)!=0) SDA1 else SDA0
CLK1

CLK0
if ((b&8)!=0) SDA1 else SDA0
CLK1

CLK0
if ((b&4)!=0) SDA1 else SDA0
CLK1

CLK0
if ((b&2)!=0) SDA1 else SDA0
CLK1

CLK0
if ((b&1)!=0) SDA1 else SDA0
CLK1

}

//send data
void sendData(byte data) {

CLK0
SDA1 //1 for param
CLK1

shiftBits(data);
}

//send cmd
void sendCMD(byte data) {

CLK0
SDA0 //1 for cmd
CLK1

shiftBits(data);
}


void main(void)
{
// Declare your local variables here

// Input/Output Ports initialization
// Port B initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTB=0x00;
DDRB=0x00;

// Port C initialization
// Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTC=0x00;
DDRC=0x00;

// Port D initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTD=0x00;
DDRD=0x00;

// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
TCCR0=0x00;
TCNT0=0x00;

// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer1 Stopped
// Mode: Normal top=FFFFh
// OC1A output: Discon.
// OC1B output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;

// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer2 Stopped
// Mode: Normal top=FFh
// OC2 output: Disconnected
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;

// External Interrupt(s) initialization
// INT0: Off
// INT1: Off
MCUCR=0x00;

// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK=0x00;

// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;
SFIOR=0x00;

SPIDDR=(1<<SDA)|(1<<CLK)|(1<<CS)|(1<<RESET);



while (1)
{
// Place your code here
CS0
SDA0
CLK1
RESET1
RESET0
RESET1
CLK1
SDA1
CLK1



//Software Reset
sendCMD(SWRESET);

//Sleep Out
sendCMD(SLEEPOUT);

//Booster ON
sendCMD(BSTRON);

delay_ms(10);
//Display On
sendCMD(DISPON);

//Normal display mode
sendCMD(NORON);

//Display inversion on
sendCMD(INVON);

//Data order
sendCMD(DORO);

//Memory data access control
sendCMD(MADCTL);


sendData(8|128|64); //inverse rgb + MirrorY


sendCMD(COLMOD);
sendData(3); //12-Bit per Pixel (default)

delay_ms(100);
};
}
artem79
А что должно работать? Это только инициализация. Да еще и в цикле.
LexRoss
я надеялся увидеть "мусор". А что должно быть после инициализации?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.