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

Обучалка - "Микроконтроллеры AVR - пишем, компилируем,

Добавлено: Вт авг 19, 2008 21:20:45
sergeyniko
Заменил AT90S2313 на ATmega32. Клавиатуру поставил 4х4. Соответственно переделал схему и поправил листинг. Писал на AVRstudio4, отлаживал на Proteus. Работает все, кроме правой нижней клавиши. При нажатии НЕ ПРОСХОДИТ НЕЧЕГО!!! В отладке изображение буквы передается в PORTB правильно. ПОМОГИТЕ!!! Схема и листинг прилагаются.

Добавлено: Вт авг 19, 2008 21:50:14
tych
Приложи и проект в PROTEUS с кодом.

Добавлено: Вт авг 19, 2008 22:30:15
sergeyniko
В архиве вся папка с проектом

Добавлено: Ср авг 20, 2008 08:12:56
tych
Добавил на линию кнопки PD7 генератор точки останова - теперь прога останавливается при нажатии на кнопку и появления на этой линии 0.

При нажатии на кнопку бит PIND.7 становится "0" в окне просмотра переменных - "ВОЧ".

Виден исходник - смотрите что в нем не так. Ассемблируется теперь все в самом PROTEUS и отладку я включил по исходнику.

Добавлено: Ср авг 20, 2008 09:02:52
sergeyniko
Хотелось бы получить измененный файл проекта, а то я пока с Proteus на"вы".

Добавлено: Ср авг 20, 2008 14:41:26
tych
Я файл проекта .DSN и изменил как раз. А исходник ASM - не менял, потому что не знаю логику работы устройства. И коментариев в коде КОТ наплакал :cry: :cry: :cry:

Прикольно ! R9 - это СИЛА ! обучения.
http://www.radiokot.ru/start/mcu_fpga/avr/16/

Добавлено: Ср авг 20, 2008 17:02:32
sergeyniko
Проблема решена. Помогла отладка. Спасибо.
Дело оказалось в алгоритме. Переменная Key=0xFF означает, что ничего не нажато. При обработке 16-й клавиши (код - 0x0F) начиная с метки SetKey: - получается, что клавиша не нажата. Поправил код - все работает. Часть кода с исправлениями прилагается. Может кому пригодится.

Добавлено: Ср авг 20, 2008 17:56:52
tych
Лучше выложи ПОЛНЫЙ рабочий исходник.
sergeyniko писал(а):Проблема решена. Помогла отладка. Спасибо.
И как тебе PROTEUS ?

Добавлено: Ср авг 20, 2008 20:35:40
sergeyniko
Вот полный исходный текст. Компиляция через Proteus.
Proteus в принципе понравился. Но я с ним мало работаю. С другими симуляторами не работал вообще.

Добавлено: Пн окт 06, 2008 17:04:06
ANDROID
где можно взять протеус :oops:

Добавлено: Пн окт 06, 2008 17:41:28
tych
ANDROID писал(а):где можно взять протеус :oops:
там PROTEUS 7.2 sp2 и 7.4 - у меня они вместе установлены.

Добавлено: Вт дек 09, 2008 21:01:45
Biggy
А вот такой вопрос: как сделать скажем чтобы переменная Digit не была статической, а мы ее задавали бы кнопками, которые подлючены к какому нибудь порту (хотя бы 2 штуки) и это число бы на индикаторе высвечивалось. Я только начинаю учитцо, поэтому пока сообразить не могу как это сделать.