Страница 1 из 1

Динамическая клавиатура и ATmega8. Заблудился в трех соснах.

Добавлено: Пт июл 02, 2010 21:04:50
081krieger
Доброго времени суток!
Пытался подключить динамическую клавиатуру в протеусе, но вот ведь незадача - на пинах не меняются логические уровни.
Вот тут я залил и проект протеуса и "прошивку"*:
http://rapidshare.com/files/404540274/qqq.rar.html
http://shareua.com/get_file/06509b/4303571 (резервная ссылка1)
http://depositfiles.com/files/8ezzy0dfn (резервная ссылка2)

* - под прошивкой я подразумеваю всего лишь конфигурацию портов:

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

   #define F_CPU 1000000UL  
   #include <avr/io.h>
   #include <avr/delay.h>

   int main(void)
   {
   
      DDRB  = 0b00000000;
      PORTB = 0b00000000;
      DDRD  = 0b00000000;
      PORTD = 0b00000000;
 
   }


Прошу прощения, если не первый натыкаюсь на эту тему - ничего похожего не нашел.
З.Ы. в электронике и МК еще не сильно силен)))

Re: Динамическая клавиатура и ATmega8. Заблудился в трех сос

Добавлено: Пт июл 02, 2010 22:47:24
Olecorp
Чтобы порт перевести в режим вывода, в регистр DDR надо записывать "1", а не "0".
Изображение
port.JPG
(37.6 КБ) 729 скачиваний

Re: Динамическая клавиатура и ATmega8. Заблудился в трех сос

Добавлено: Пт июл 02, 2010 22:51:07
081krieger
но ведь я пытаюсь прочитать данные с клавиатуры, поэтому решил, что ножки надо установить на вход, разве нет?

Re: Динамическая клавиатура и ATmega8. Заблудился в трех сос

Добавлено: Пт июл 02, 2010 23:07:14
Olecorp
чтобы читать - да. но тебе нужно "выбрать" столбец, который ты читаешь. полагаю, ты хочешь это сделать, подавая "0" на PD4, PD5, PD6 по очереди, и читать состояние пинов PD0-PD3. Для этого нужно часть порта настроить на выход, а часть - на вход.

Re: Динамическая клавиатура и ATmega8. Заблудился в трех сос

Добавлено: Пт июл 02, 2010 23:13:53
081krieger
ммм.... начинаю задумываться :)
я попробую. Сейчас правда уже спать пора, но завтра точно.

Re: Динамическая клавиатура и ATmega8. Заблудился в трех сос

Добавлено: Пт июл 02, 2010 23:15:13
081krieger
а сама схема-то хоть правильная?

Re: Динамическая клавиатура и ATmega8. Заблудился в трех сос

Добавлено: Пт июл 02, 2010 23:24:42
Olecorp
На вид - вполне работоспособна. На практике - не знаю, я бы покопался в инете, посмотрел, как это реализовано у более опытных товарищей.
Сейчас заметил: для ресета "0" - это активный уровень, контроллер у тебя перманентно в ресете будет :)