roboforum.ru

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

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

программирование 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 - является как ноль).

wolf » 26 мар 2006, 03:39

В ассемблере нет переменных, есть константы и метки. Их-то Вы и перемножаете в приведённом тексте; смысла в этом, разумеется, нет, поскольку никакого кода при этом ассемблером не генерируется. Чтобы получить нужный результат, нужно написать подпрограмму умножения 2-байтных чисел, принимающую множители и возвращающую произведение в регистрах.

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

avr123.nm.ru » 26 мар 2006, 11:52

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


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

и не только клавиатура а все что активно используется микроконтроллерщиками.

serg » 26 мар 2006, 15:15

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

а где же взять этот компилятор и примеры к нему

serg » 26 мар 2006, 16:02

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

avr123.nm.ru » 26 мар 2006, 17:59

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

спасибо.


Ну как тут не послать туда куда я обычно посылаю ?  Потратить пол-дня и туман рассеится довольно заметно !

serg » 26 мар 2006, 19:19

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

avr123.nm.ru » 26 мар 2006, 20:43

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


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

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

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

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

а я им говорил что есть еще и начинающие которые этот линк не знают.

wolf » 27 мар 2006, 00:30

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


Тут рядом отдельная тема посвящена тому, откуда скачать полноценный CVAVR.

EdGull » 27 мар 2006, 08:39

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

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

Можно посылать так "идите на (в) мое место обитания" или "туда от куда я " 8-)


cron
Rambler\'s Top100 Mail.ru counter