roboforum.ru

Технический форум по робототехнике.

LCD (HD44780) к произвольным пинам

Программирование микроконтроллеров AVR, PIC, ARM.
Разработка и изготовление печатных плат для модулей.

Re: LCD (HD44780) к произвольным пинам

Сообщение EdGull » 11 сен 2008, 15:34

для начала поморгай светодиодом с частотой 1 раз в секунду
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Re: LCD (HD44780) к произвольным пинам

Сообщение Кирилл » 11 сен 2008, 15:42

не трожь R/W(portc.2) сам! это за тебя сделает программа.
Кирилл
 
Сообщения: 432
Зарегистрирован: 20 окт 2005, 16:11
Откуда: Вильнюс,Литва
прог. языки: Basic

Re: LCD (HD44780) к произвольным пинам

Сообщение K()X » 11 сен 2008, 19:02

притягивать R/W програмно мне кажется нужно до инициализации самого дисплея. А ещё лучше-посади пин R/W на землю и забудь про него вообще. :wink:
Аватара пользователя
K()X
 
Сообщения: 25
Зарегистрирован: 10 сен 2008, 23:37
Откуда: Пенза.

Re: LCD (HD44780) к произвольным пинам

Сообщение Shaab » 11 сен 2008, 19:02

Кирилл писал(а):не трожь R/W(portc.2) сам! это за тебя сделает программа.

ммм...а эта программа знает где он находится? ногу RW я же не указывал в конфиге...
а она вообще указывается? просто в хелпе про RW не сказано...
Shaab
 
Сообщения: 21
Зарегистрирован: 06 сен 2008, 12:33
Откуда: Москва

Re: LCD (HD44780) к произвольным пинам

Сообщение K()X » 11 сен 2008, 19:11

Да просто повесь R/W на землю и все! Или если влом-то поставь команды

Config Portc.2 = Output
Portc.2 = 0

До инициализации котроллера.

R/W пин служит для того, чтобы записать команды/данные в LCD или считать из него.
В случае если на этом пине лог 1, то контроллер может считать значения регистров LCD (тока вот не знаю-нафига?)
если лог 0 то LCD готов к приему данных/команд из контроллера.
Инициализация-это не что иное, как команда.
А у тебя получается, что во время инициализации фиг знает что висит на R/W, и только после инициализации там появляется лог 0.
То есть контроллер пишет в LCD, а LCD при этом ничего не воспринимает.
Кароч пробывай!
Аватара пользователя
K()X
 
Сообщения: 25
Зарегистрирован: 10 сен 2008, 23:37
Откуда: Пенза.

Re: LCD (HD44780) к произвольным пинам

Сообщение Кирилл » 11 сен 2008, 19:12

K()X писал(а):притягивать R/W програмно мне кажется нужно до инициализации самого дисплея. А ещё лучше-посади пин R/W на землю и забудь про него вообще. :wink:

когда кажется креститься надо и не дезинформировать новичков.
Shaab писал(а):
Кирилл писал(а):не трожь R/W(portc.2) сам! это за тебя сделает программа.

ммм...а эта программа знает где он находится? ногу RW я же не указывал в конфиге...
а она вообще указывается? просто в хелпе про RW не сказано...

посмотри в настройках Баскома есть установки ЛСД. выстави там порты и режим работы оного как тебе нужно и в самой программе можешь оставить только:
Код: Выделить всёРазвернуть
Config LCD = 40*4
lcd "test"

K()X писал(а):Да просто повесь R/W на землю и все! Или если влом-то поставь команды

Config Portc.2 = Output
Portc.2 = 0

До инициализации котроллера.

я бы не стал так делать...
Кирилл
 
Сообщения: 432
Зарегистрирован: 20 окт 2005, 16:11
Откуда: Вильнюс,Литва
прог. языки: Basic

Re: LCD (HD44780) к произвольным пинам

Сообщение K()X » 11 сен 2008, 19:23

Крестится я буду не с вашего совета.
Если вы не стали, то я всегда так делаю, и всегда все работает.
И интересно-вы сами то хоть раз LCD в своей практике применяли, или всего лишь теоретик?
Аватара пользователя
K()X
 
Сообщения: 25
Зарегистрирован: 10 сен 2008, 23:37
Откуда: Пенза.

Re: LCD (HD44780) к произвольным пинам

Сообщение Shaab » 11 сен 2008, 19:34

Для чего нужен RW я знаю, я уже писал прогу для такого дисплея, только на дельфи (для дисплея на параллельном порту). Пока принудительно сажать этот пин на землю не хочу, будет нужна нога - пересажу, а пока пусть будет подключена к МК
В настройках баскома можно назначить произвольные пины, да только там нету 2го энабла...

Добавлено спустя 5 минут:
K()X писал(а):Да просто повесь R/W на землю и все! Или если влом-то поставь команды

Config Portc.2 = Output
Portc.2 = 0

До инициализации котроллера.

не помогло

правда я заметил, что в момент включения устройства (или после нажатия кнопки сброса) по дисплею "пробегает" всякий "мусор", но тесовые строки при этом горят...а после инициализации они должны гаснуть. Прям полтергейст какой-то))
Shaab
 
Сообщения: 21
Зарегистрирован: 06 сен 2008, 12:33
Откуда: Москва

Re: LCD (HD44780) к произвольным пинам

Сообщение K()X » 11 сен 2008, 19:40

я не встречал дисплея с 2 енаблами. У нас такие не продаются.
Я бы на вашем месте все таки хотя бы временно посадил ножку R/W на землю и посмотрел.
Только вчера подключал дисплей и все работало (нога R/W на земле, язык-Bascom)
Аватара пользователя
K()X
 
Сообщения: 25
Зарегистрирован: 10 сен 2008, 23:37
Откуда: Пенза.

Re: LCD (HD44780) к произвольным пинам

Сообщение Кирилл » 11 сен 2008, 19:43

Shaab писал(а): да только там нету 2го энабла...

кого??? :shock:
Shaab писал(а):
не помогло

Повторяю еще раз!! пин R/W подключай напрямую к контроллеру. Программно, вручную не трогай его! в настройках Баскома выставь правильные установки и будет тебе счастье :)
Кирилл
 
Сообщения: 432
Зарегистрирован: 20 окт 2005, 16:11
Откуда: Вильнюс,Литва
прог. языки: Basic

Re: LCD (HD44780) к произвольным пинам

Сообщение Shaab » 11 сен 2008, 19:52

Кирилл писал(а):
Shaab писал(а): да только там нету 2го энабла...

кого??? :shock:
Shaab писал(а):
не помогло

Повторяю еще раз!! пин R/W подключай напрямую к контроллеру. Программно, вручную не трогай его! в настройках Баскома выставь правильные установки и будет тебе счастье :)

Господа джедаи, неужели вы не знаете, что дисплей 4 строки по 40 символов делают на ДВУХ контроллерах HD44780 (можете посмотреть даташит, если не верите )
RW напрямую к МК...а к какой ноге МК?
Вложения
wh4004.pdf
Даташит на дисплей
(443.6 КиБ) Скачиваний: 36
Shaab
 
Сообщения: 21
Зарегистрирован: 06 сен 2008, 12:33
Откуда: Москва

Re: LCD (HD44780) к произвольным пинам

Сообщение Кирилл » 11 сен 2008, 19:57

К какой угодно. главное указать в настройках.
кстате даташит дисплея в студию.
Кирилл
 
Сообщения: 432
Зарегистрирован: 20 окт 2005, 16:11
Откуда: Вильнюс,Литва
прог. языки: Basic

Re: LCD (HD44780) к произвольным пинам

Сообщение Shaab » 11 сен 2008, 20:00

Кирилл писал(а):К какой угодно. главное указать в настройках.
кстате даташит дисплея в студию.

не нашел в настройках ничего про RW, даташит в студии
Shaab
 
Сообщения: 21
Зарегистрирован: 06 сен 2008, 12:33
Откуда: Москва

Re: LCD (HD44780) к произвольным пинам

Сообщение Кирилл » 11 сен 2008, 20:12

ну значит подключай к земле его и пробуй
http://www.mcselec.com/index2.php?optio ... ht=ks0066u тебе в помощь.
Кирилл
 
Сообщения: 432
Зарегистрирован: 20 окт 2005, 16:11
Откуда: Вильнюс,Литва
прог. языки: Basic

Re: LCD (HD44780) к произвольным пинам

Сообщение Shaab » 11 сен 2008, 20:23

Кинул RW на землю, дисплей проинициализировался, только вот есть несколько проблем. Вот код программы:
Код: Выделить всёРазвернуть
$regfile "m8def.dat"
$crystal = 12000000
'the internal oscillator of 8 Mhz was choosen in the fusebits

Config Lcdpin = Pin , Rs = Portd.3 , E = Portc.3 , E2 = Portc.4 , Db4 = Portd.4 , Db5 = Portd.5 , Db6 = Portd.6 , Db7 = Portd.7

Config Lcd = 40 * 4

Cursor Off Noblink

Cls
Locate 1 , 1
Lcd "Line 1"
Locate 2 , 2
Lcd "Line 2"
Locate 3 , 3
Lcd "Line 3"
Locate 4 , 4
Lcd "Line 4"

End                                                         'end program

1) пишется абракадабра
2) абракадабра пишется только на одном кристалле (на 3й строке из 4х)
Shaab
 
Сообщения: 21
Зарегистрирован: 06 сен 2008, 12:33
Откуда: Москва

Пред.След.

Вернуться в Микроконтроллеры

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot] и гости: 1