roboforum.ru

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


программирование AT90S8535

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

программирование AT90S8535

Сообщение serg » 26 мар 2006, 03:18

здравствуйте всем, помогите пожалуйста с такой вещью как ввод числа с клавиатуры подключенной к PORTA (цифры вводятся  от 1-10), т.е. идет последовательный ввод цифр, затем эти цифры должны быть преобразованы в число. Пример: 1,2,3,4 - это мы ввели цифры в некоторые буферы, a:=1, b:=2, c:=3, d:=4. a:=a*1000,b:=b*100,
c:=c*10, summa:=a+b+c+d. Да и то ввод цифр не является фиксированным т.е. нужно определить сколько было введено цифр чтобы произвести действие преобразования. Вот пример который покажет что я имел ввиду, только он какой то бред несет.
1,5,0,0   в итоге 1500 (DEC)    05DC(HEX)
пример:
var:.byte 1
var1:.byte 1
var2:.byte 1
var3:.byte 1 ;выделяем для каждого числа байт, это потом будет
выведено на ЖКИ индикатор к примеру число 1500
ldi    temp,1 ; это цифра получена с клавиатуры
sts var,temp ;записываю в память
ldi    temp,5 ; это цифра получена с клавиатуры
sts var1,temp
.set pl1 = var*1000 ; произвожу вычисления
.set pl2 = var1*100
.set pl = pl1+pl2 ; складываю
ldi r17,low(pl);младший
ldi r18,high(pl);старший
(это число мне нужно для дальнейших вычислений и потом как то
надо опять его преобразовать в отдельные цифры)
только после всего этого какая то ерунда получается.
за ранее благодарен за помощь.
все эти var-ы применяются как буферы получения с клавиатуры
некоторой цифры (1-10) (10 - является как ноль).
serg
 
Сообщения: 11
Зарегистрирован: 26 мар 2006, 02:45
Откуда: Воткинск

Сообщение wolf » 26 мар 2006, 03:39

В ассемблере нет переменных, есть константы и метки. Их-то Вы и перемножаете в приведённом тексте; смысла в этом, разумеется, нет, поскольку никакого кода при этом ассемблером не генерируется. Чтобы получить нужный результат, нужно написать подпрограмму умножения 2-байтных чисел, принимающую множители и возвращающую произведение в регистрах.
wolf
 
Сообщения: 63
Зарегистрирован: 23 июл 2005, 00:39
Откуда: Казань

Re: программирование AT90S8535

Сообщение avr123.nm.ru » 26 мар 2006, 11:52

serg писал(а):помогите пожалуйста с такой вещью как ввод числа с клавиатуры подключенной к PORTA (цифры вводятся  от 1-10)


я советую вам использовать компилятор CodeVisionAVR или BASCOM - там это в виде готовых функций и примеров.

и не только клавиатура а все что активно используется микроконтроллерщиками.
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва
Предупреждения: -8

Сообщение serg » 26 мар 2006, 15:15

советую вам использовать компилятор CodeVisionAVR или BASCOM - там это в виде готовых функций и примеров.

а где же взять этот компилятор и примеры к нему
serg
 
Сообщения: 11
Зарегистрирован: 26 мар 2006, 02:45
Откуда: Воткинск

Сообщение serg » 26 мар 2006, 16:02

хочу еще спроить скачал недавно компилятор mikroPascal for AVR
так вот все доступные функции записаны только для ATmega , а для AT90S8535 только простые вычисления. Суть вопроса можно ли написать программу для ATMega8535 , а затем изготовленный HEX код
запрограммировать в AT90S8535 . Да и еще этот mikroPascal for AVR использует USB выход для программирования, а можно ли использовать HEX код для например AVR Studio. спасибо.
serg
 
Сообщения: 11
Зарегистрирован: 26 мар 2006, 02:45
Откуда: Воткинск

Сообщение avr123.nm.ru » 26 мар 2006, 17:59

serg писал(а):хочу еще спроить ...

спасибо.


Ну как тут не послать туда куда я обычно посылаю ?  Потратить пол-дня и туман рассеится довольно заметно !
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва
Предупреждения: -8

Сообщение serg » 26 мар 2006, 19:19

очень не хорошо  посылать когда Вас спрашивают о элементарных вещах как специалиста по проггаммированию. Хорошо , скачал я этот компилятор CodeVisionAVR обе версии , одна урезана до 2 Кб можно программировать, другая просит пароль. Может кто знает как эту версию сломать с её паролем ?
serg
 
Сообщения: 11
Зарегистрирован: 26 мар 2006, 02:45
Откуда: Воткинск

Сообщение avr123.nm.ru » 26 мар 2006, 20:43

serg писал(а):очень не хорошо  посылать когда Вас спрашивают о элементарных вещах


Ну это смотря куда посылать.

Послать начинающего почитать Краткий курса для начинающих - по моему это хорошо.

Под моим ником же написано.

Я раньше линк давал но НЕ начинающие говорят что линк запомнили и просили не раздражать их взор,

а я им говорил что есть еще и начинающие которые этот линк не знают.
Аватара пользователя
avr123.nm.ru
отсылающий читать курс
 
Сообщения: 14195
Зарегистрирован: 06 ноя 2005, 04:18
Откуда: Москва
Предупреждения: -8

Сообщение wolf » 27 мар 2006, 00:30

serg писал(а):очень не хорошо  посылать когда Вас спрашивают о элементарных вещах как специалиста по проггаммированию. Хорошо , скачал я этот компилятор CodeVisionAVR обе версии , одна урезана до 2 Кб можно программировать, другая просит пароль. Может кто знает как эту версию сломать с её паролем ?


Тут рядом отдельная тема посвящена тому, откуда скачать полноценный CVAVR.
wolf
 
Сообщения: 63
Зарегистрирован: 23 июл 2005, 00:39
Откуда: Казань

Сообщение EdGull » 27 мар 2006, 08:39

avr123.nm.ru писал(а):
serg писал(а):очень не хорошо  посылать когда Вас спрашивают о элементарных вещах

Ну это смотря куда посылать.
Послать начинающего почитать Краткий курса для начинающих - по моему это хорошо.
Под моим ником же написано.
Я раньше линк давал но НЕ начинающие говорят что линк запомнили и просили не раздражать их взор,
а я им говорил что есть еще и начинающие которые этот линк не знают.

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


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

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8