Главная   Downloads   Разное  
FAQ     Поиск   Регистрация   Вход 
Текущее время: Чт мар 28, 2024 22:50

Часовой пояс: UTC + 3 часа (Russia: MSK)




Начать новую тему Ответить на тему  [ 5 сообщений ] 
Автор Сообщение
 Заголовок сообщения: Сбрасываются данные из ячейки памяти DM и H
СообщениеДобавлено: Вс май 18, 2014 19:41 
Не в сети

Регистрация: Ср май 14, 2014 21:17
Сообщения: 5
Помогите пожалуйста! Срочно! В сх-programmere использую:
таймер TIM с уст.значения к примеру адрес D6, затем
команда умножения двоично-десятичных чисел *B(424) где адрес D5 умножается на константу (#10) и получается слово результата D6.
Затем в сх-designere ввожу числовое значение по адресу D5.
Вроде бы всё просто, но проблема в том что как только я ввожу число оно моментально сбрасывается на 0.
Что не так я делаю?


У вас нет необходимых прав для просмотра вложений в этом сообщении.


В начало
 Профиль  
 
 Заголовок сообщения: Re: Сбрасываются данные из ячейки памяти DM и H
СообщениеДобавлено: Вс май 18, 2014 22:56 
Не в сети
Site Admin
Аватара пользователя

Регистрация: Вт сен 19, 2006 21:13
Сообщения: 3510
Откуда: Москва
Может D5 ещё где то в программе используется?
в CX-Designer в настройках ввода числа можно сразу указать нужный множитель, и не делать лишних действий в контроллере


В начало
 Профиль  
 
 Заголовок сообщения: Re: Сбрасываются данные из ячейки памяти DM и H
СообщениеДобавлено: Пн май 19, 2014 21:51 
Не в сети

Регистрация: Вт окт 26, 2010 21:55
Сообщения: 329
Откуда: Санкт-Петербург
Не используйте соседние адреса. Используйте только четные. Их там достаточно.


В начало
 Профиль  
 
 Заголовок сообщения: Re: Сбрасываются данные из ячейки памяти DM и H
СообщениеДобавлено: Вт май 20, 2014 17:49 
Не в сети

Регистрация: Пт янв 30, 2009 21:25
Сообщения: 518
Когда Вы умножаете D5 на &16 то результат ложится в ячейки D6 и D7.
Например Вы 2 умножили на 10 получили значение 20 в ячейку D6 а в D7 легло "Ноль".

Посмотрите может у Вас проблема похожего рода с пересечением ячеек.
Рекомендация -
Aeroplan писал(а):
Не используйте соседние адреса. Используйте только четные. Их там достаточно.


Конечно можно, но это не красиво.

Правильнее описывать переменные нужного размера.

Грубо - можно так.
Умножение и деление лучше проводить в промежуточные ячейки, потом переложить командой mov если результат не более 1 слова.

_________________
А нам, все равно, и ровно.


В начало
 Профиль  
 
 Заголовок сообщения: Re: Сбрасываются данные из ячейки памяти DM и H
СообщениеДобавлено: Вт май 20, 2014 20:56 
Не в сети

Регистрация: Вт окт 26, 2010 21:55
Сообщения: 329
Откуда: Санкт-Петербург
Я лишь рекомендую не пользоваться нечетными адресами для удобства. Размерность важна вне всяких сомнений. Но так легче следить за адресным пространством. Умножение - не единственная команда, которая "занимает" второе слово на выходе. При использовании только четных адресов вам легче отыскивать подобные баги, легче контролировать переполнение выходных слов и, наблюдая за таблицей памяти в рантайме, вы глядя на карту памяти видите изменение там, где ожидаете, а там где чего-то не должно быть (колонки с нечетными адресами), сами вам все покажут. В программе вы используете не только целые числа... real всегда занимает не менее 32 бита. Зачем тратить драгоценное время для постоянного мониторинга последовательных адресов. Используя только четные адреса, вы случайно не перекроете память...
Так что на счет красоты - вопрос спорный. На вкус и цвет.

И еще... в прошлый раз забыл и сейчас чуть не забыл.
экспериментировал с вашим вариантом программы, указанном в топике... у меня все работает. Даже если тип данных не соответствует UBCD... данные преобразованы автоматом, но они есть. так что вероятно просто связи нет? Или вдругой части программы "что-то" пишет в ячейку D5... или D4, занимая на выходе 32 бита


В начало
 Профиль  
 
Показать сообщения за:  Сортировка  
Начать новую тему Ответить на тему  [ 5 сообщений ] 

Часовой пояс: UTC + 3 часа (Russia: MSK)


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

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


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Переход:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская документация по phpBB 3