Easyelectronics.ru

Электроника для всех
Текущее время: 29 ноя 2022, 16:11

Часовой пояс: UTC + 5 часов


Правила форума


Входить исключительно со своей туалетной бумагой. Можно невозбранно получить по голове за быдляк и личные наезды.



Начать новую тему Ответить на тему  [ Сообщений: 320 ]  На страницу Пред.  1 ... 8, 9, 10, 11, 12, 13  След.
Автор Сообщение
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 02:19 
Старожил
Аватара пользователя

Зарегистрирован: 02 апр 2010, 12:39
Сообщения: 4405
Откуда: Брянск
Причем взял hex сделанный winavr - тоже самое. Может протеус глючит? Щас на паскале попробую вывести.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 02:40 
Старожил
Аватара пользователя

Зарегистрирован: 02 апр 2010, 12:39
Сообщения: 4405
Откуда: Брянск
Я идиот. Куда бля смотрю - непонятно ))) Работает тот пример который я привел.


Вложения:
ProteusLCD_IAR.zip [13.12 Кб]
Скачиваний: 254
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 02:46 
Супермодератор
Аватара пользователя

Зарегистрирован: 26 янв 2010, 22:08
Сообщения: 7549
Откуда: Алма-ата
Bomond писал(а):
Странная херня. В протеусе вижу что сигналы на шине данных имеются, но на индикаторе пусто
А про задержки не забыли? Инициализация и отработка команд индикатором требуют задержек, иногда значительных...
Цитата:
72 слова работа с ЖК? А оно это... работает? В железе там, или протеусе?
Если выводить не побитно, а байтом, посадив все линии индикатора на один порт, отказавшись от чтения из индикатора и определения его готовности, и обрубив все возможности по минимуму, можно много сэкономить. Только вот работать с такими обрубками не всегда удобно...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 02:47 
Старожил
Аватара пользователя

Зарегистрирован: 02 апр 2010, 12:39
Сообщения: 4405
Откуда: Брянск
SWG писал(а):
Bomond писал(а):
Странная херня. В протеусе вижу что сигналы на шине данных имеются, но на индикаторе пусто
А про задержки не забыли?

Нет, дело во невнимательности - в протеусе ноги перепутал. Спать хочу))))
Завтра попробую по 4-х битной шине сделать, посмотрим что выйдет.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 02:59 
Старожил
Аватара пользователя

Зарегистрирован: 02 апр 2010, 12:39
Сообщения: 4405
Откуда: Брянск
Попробовал пример вывода на LCD с чтением флага занятости. Размер hex 697 байт. 164 bytes of CODE memory


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 09:21 
Старожил
Аватара пользователя

Зарегистрирован: 10 апр 2010, 18:47
Сообщения: 2492
Откуда: Харьков
Bomond писал(а):
Попробовал пример вывода на LCD с чтением флага занятости. Размер hex 697 байт. 164 bytes of CODE memory

164 байта - это инициализация ЖКИ плюс вывод тех семи текстовых строчек? Что-то совсем уж мало.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 10:20 
Старожил
Аватара пользователя

Зарегистрирован: 20 авг 2010, 14:14
Сообщения: 1616
Откуда: Рэшен Федерэшн
А мож этот IAR свои кексы Винраром упаковывает?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 10:25 
Старожил
Аватара пользователя

Зарегистрирован: 02 апр 2010, 12:39
Сообщения: 4405
Откуда: Брянск
R_ura писал(а):
164 байта - это инициализация ЖКИ плюс вывод тех семи текстовых строчек? Что-то совсем уж мало.

Там одна строчка выводится, я не стал переписывать пример. К тому же инициализация дисплея сделана вручную, т.е. готовые либы не юзаются. Могу еще строчек добавить если интересно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 10:59 
Старожил
Аватара пользователя

Зарегистрирован: 02 апр 2010, 12:39
Сообщения: 4405
Откуда: Брянск
Сделал вывод последовательности из семи строчек. Пауза между строками 400 мс. Функция инициализации LCD вызывается перед выводом следующей строки. Оптимизация по размеру низкий уровень. Итого хекс 1315 байт, 384 bytes of CODE memory

Включил максимальную оптимизацию по размеру и вышло : hex 693 байт, 164 bytes of CODE memory. Оптимизатор ничего не похерил, в протеусе работает. Такие дела.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 16:11 
Супермодератор
Аватара пользователя

Зарегистрирован: 28 янв 2010, 05:47
Сообщения: 1027
Откуда: Винница
А можешь, чисто по приколу, выложить получившийся асмовый листинг?

_________________
Show


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 16:29 
Старожил
Аватара пользователя

Зарегистрирован: 02 апр 2010, 12:39
Сообщения: 4405
Откуда: Брянск
Конечно, вечером выложу. На работе нету IARа


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 21:17 
Старожил
Аватара пользователя

Зарегистрирован: 10 апр 2010, 18:47
Сообщения: 2492
Откуда: Харьков
Bomond писал(а):
R_ura писал(а):
164 байта - это инициализация ЖКИ плюс вывод тех семи текстовых строчек? Что-то совсем уж мало.

Там одна строчка выводится, я не стал переписывать пример. К тому же инициализация дисплея сделана вручную, т.е. готовые либы не юзаются. Могу еще строчек добавить если интересно.

?????????? Какая одна строчка? Ты возьми скопируй строчки из нашей тестовой программы. Там инициализация порта + инициализация ЖКИ + семь строчек тестовых + 7 установок положения курсора.. Что ж ты сравниваешь одну и семь. Смысл сравнения и состоит в том, чтобы скомпилировать ОДНО И ТОЖЕ.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 22:11 
Старожил
Аватара пользователя

Зарегистрирован: 02 апр 2010, 12:39
Сообщения: 4405
Откуда: Брянск
Выше же написал, сделал 7 строчек. Как курсор менять я не знаю пока, т.к. нуб
Добавил lst файл. Там ассемблерный листинг по моему...


Вложения:
main.zip [3.52 Кб]
Скачиваний: 250


Последний раз редактировалось Bomond 09 ноя 2010, 22:18, всего редактировалось 1 раз.
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 22:12 
Старожил
Аватара пользователя

Зарегистрирован: 10 апр 2010, 18:47
Сообщения: 2492
Откуда: Харьков
SWG писал(а):


Вот вывод текста 'PLATFORM' во вторую строку с 9 позиции в Паскале:
Код:
  txt1 := 'PLATFORM';
  LCD_Out(2,9,txt1);        // Write text in second row


.

SWG, ваш пример не совсем корректен. Ведь мы в вышеперечисленных примерах нигде не указывали компилятору, что он должен разместить строку в памяти программ. Тем не менее CodVision и WinAVR сами их там размещают. МП же нет. Вы свой пример скомпилируйте так:
LCD_Out(2,9,'PLATFORM'); // Write text in second row[/code]
Тогда будет объективный результат. Да и вообще, если вас не затруднит, скомпилируйте для Пиков наши тестовые строчки. Было бы любопытно посмотреть на результат.


Последний раз редактировалось R_ura 09 ноя 2010, 22:16, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 22:15 
Старожил
Аватара пользователя

Зарегистрирован: 10 апр 2010, 18:47
Сообщения: 2492
Откуда: Харьков
Bomond писал(а):
Выше же написал, сделал 7 строчек. Как курсор менять я не знаю пока, т.к. нуб

Ах да, не увидел. Прошу прощения. Выходит ИАР действительно чемпион. 164 байта - впечатляет.
А твои 7 строк, теже, что и в наших примерах?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 22:20 
Старожил
Аватара пользователя

Зарегистрирован: 02 апр 2010, 12:39
Сообщения: 4405
Откуда: Брянск
Неа, ну я сделаю сейчас теже. Думаю разница будет невелика. Опять же библиотеки не используются, все руками.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 22:25 
Старожил
Аватара пользователя

Зарегистрирован: 10 апр 2010, 18:47
Сообщения: 2492
Откуда: Харьков
Bomond писал(а):
Неа, ну я сделаю сейчас теже. Думаю разница будет невелика. Опять же библиотеки не используются, все руками.

Да дело в том, что есть разница в длине кода строчки из трех букв и из двадцати. Поэтому и спрашиваю.
Ну а установка курсора, если ты в программу не вставил эти команды, еще байт 70 может добавить.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 22:30 
Старожил
Аватара пользователя

Зарегистрирован: 02 апр 2010, 12:39
Сообщения: 4405
Откуда: Брянск
Сделал теже строчки. HEX - 914 байт, 242 bytes of CODE memory


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 22:35 
Старожил
Аватара пользователя

Зарегистрирован: 10 апр 2010, 18:47
Сообщения: 2492
Откуда: Харьков
Bomond писал(а):
Сделал теже строчки. 242 bytes of CODE memory

Ни фига ... Результат обалденный. Особенно если сравнить с 1600 байтами МПаскаля...
Тебя просили дать асмовский код.. Присоединяюсь к просьбе. Очень интересно, как ему удалось втиснуться в такие рамки..


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 22:42 
Старожил
Аватара пользователя

Зарегистрирован: 02 апр 2010, 12:39
Сообщения: 4405
Откуда: Брянск
http://narod.ru/disk/27232754000/LcdSym ... R.zip.html
Это весь проект для иара. Там в папке debug есть lst файл, в нем вроде асмовый листинг. Только сильно меня не пиздите, прога не моя...По крайней мере она выводит эти семь строчек ))))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 22:48 
Старожил
Аватара пользователя

Зарегистрирован: 10 апр 2010, 18:47
Сообщения: 2492
Откуда: Харьков
Bomond писал(а):
. Только сильно меня не пиздите, прога не моя.. ))))

Да не парься ты, здесь большая часть начинающих..)))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 22:55 
Супермодератор
Аватара пользователя

Зарегистрирован: 28 янв 2010, 05:47
Сообщения: 1027
Откуда: Винница
Чисто из любопытства, зачем писать размер хекса?

_________________
Show


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 22:59 
Старожил
Аватара пользователя

Зарегистрирован: 10 апр 2010, 18:47
Сообщения: 2492
Откуда: Харьков
xrayman писал(а):
Чисто из любопытства, зачем писать размер хекса?

Xrayman, а что скажете насчет асмовского листинга после ИАРа?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 23:01 
Старожил
Аватара пользователя

Зарегистрирован: 02 апр 2010, 12:39
Сообщения: 4405
Откуда: Брянск
Да, кстати http://rutracker.org/forum/viewtopic.php?t=2957130 вот тут я IAR брал.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Assembler vs Си (паскаль, васик и тыды)
СообщениеДобавлено: 09 ноя 2010, 23:02 
Супермодератор
Аватара пользователя

Зарегистрирован: 28 янв 2010, 05:47
Сообщения: 1027
Откуда: Винница
И чисто придолбаться. Прога как-то не соответствует. Не переводится курсор, строки выводятся посимвольно, да и сами строки другие немного.

Листинг я пока не смотрел, щас исходник смотрю.

ИАР можно взять на родном сайте пробную версию. Для таких экспериментов ее хватит.

_________________
Show


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 320 ]  На страницу Пред.  1 ... 8, 9, 10, 11, 12, 13  След.


Часовой пояс: UTC + 5 часов


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

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


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

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB