Инструментальные средства

Учебный лабораторный комплекс SDK-1.1 на базе микроконтроллера ADuC812 с ядром MCS51 # RS-232C, I2C

Re: Инструментальные средства

Сообщение Интегральный вычислитель » 07 май 2008, 23:57

Владимир писал(а):Не подскажешь где можно еще найти примеры программ для SDK 1.1

http://194.85.162.173/viewvc/SDK1_process_switcher/ - попытка создать операционку для sdk 1.1. Переключает задачи + ведет журнал.
а также какую нибудь литературу? на сайте всё облазил

Если есть желание глубже разобраться в программной модели контроллера, то наверное стоит немного попрограммировать на ассемблере.
Про архитектуру контроллеров серии MCS51 (к которым относиться aduc812 установленный на SDK 1.1) можно почитать в интеловских доках ftp://download.intel.com/design/MCS51/MANUALS/
+ Необходимо понимать как работают компилятор и компоновщик.
В остальном документов, которые есть на сайте, вполне достаточно.

p/s Я посмотрю ваш архив завтра.
I Have Seen The Truth And It Doesn't Make Any Sense
Аватара пользователя
Интегральный вычислитель
 
Сообщения: 561
Зарегистрирован: 02 апр 2008, 16:04
Откуда: из Леса

Re: Инструментальные средства

Сообщение Роман Химов » 08 май 2008, 11:15

Засвечу тут старые поделия, вдруг кому пригодится:
http://roman.khimov.ru/2006/07/02/sdknet/

Шедевры те ещё, но некоторый забавный код, который работает на SDK 1.1 (а сетевая часть пытается быть кроссплатформенной даже, впрочем это другой курс немного уже :)).

Плюс чуть-чуть инструментов для GNU/Linux или *BSD. Хотя, смотрю, сейчас уже неактуально. Что хорошо.

Был ещё смешной код для самодельной железки с ADuC812 без флэш-памяти (всё в 256 байтах внутренних), тоже задачки переключал, диодами моргал...
--
Греби и улыбайся!
Всё будет хорошо. Готовьтесь...
Роман Химов
 
Сообщения: 53
Зарегистрирован: 06 май 2008, 11:55
Откуда: 10 км к востоку от Питера

Re: Инструментальные средства

Сообщение Интегральный вычислитель » 08 май 2008, 12:05

Раб Лампы писал(а):
Владимир писал(а):p/s Я посмотрю ваш архив завтра.

Странно, у меня вообще не получилось загрузить HEX собранный SDCC. К сожалению, у меня сейчас нет времени разобраться в чем тут дело. Посмотрю после праздников.

Сейчас могу лишь посоветовать использовать SDCC с m3p, а Keil с t167b/t2.

Прикладываю архив с собранным загрузчиком ul и батником для загрузки.
Вложения
ul.zip
(31.99 Кб) Скачиваний: 356
I Have Seen The Truth And It Doesn't Make Any Sense
Аватара пользователя
Интегральный вычислитель
 
Сообщения: 561
Зарегистрирован: 02 апр 2008, 16:04
Откуда: из Леса

Re: Инструментальные средства

Сообщение kluchev » 08 май 2008, 12:46

Роман Химов писал(а):Засвечу тут старые поделия, вдруг кому пригодится:
http://roman.khimov.ru/2006/07/02/sdknet/

Спасибо :mrgreen:
В споре рождается коллективное заблуждение, а истиной мы его называем для краткости
Аватара пользователя
kluchev
 
Сообщения: 995
Зарегистрирован: 04 апр 2008, 13:31
Откуда: SPb

Re: Инструментальные средства

Сообщение MIX@ » 09 май 2008, 23:49

Для виндовс есть пакет "Windows Services for UNIX", содержащий их реализацию стандартного UNIX-окружения, возможно есть и make. Во всяком случае, когда мне нужно было дать доступ винде к NFS-ресурсу - NFS-клиент там был. Брать отсюда: http://www.microsoft.com/downloads/deta ... layLang=en

Раб Лампы писал(а):p/s наверное надо написать путеводитель по исходному коду gm3p и загрузчика ul, чтобы было понятно как работают протоколы, и как добавлять новые функции...


Было бы неплохо ;)
Аватара пользователя
MIX@
 
Сообщения: 115
Зарегистрирован: 08 апр 2008, 11:57

Re: Инструментальные средства

Сообщение Интегральный вычислитель » 13 май 2008, 15:21

Владимир писал(а):Еще вопрос по SDCC:
после компиляции пытался загрузить hex-файл с помощью t167b, программа загрузилась но со стендом ничего не происходит, видимо проблема со стартовым адресом, хотя указывал тот же адрес 0x2100 что и при компиляции...

Я сделал проект для сборки SDCC и загрузки через t167b. Сборка управляется через make. Для загрузки используйте load.bat
Вложения
led.rar
(79.78 Кб) Скачиваний: 352
I Have Seen The Truth And It Doesn't Make Any Sense
Аватара пользователя
Интегральный вычислитель
 
Сообщения: 561
Зарегистрирован: 02 апр 2008, 16:04
Откуда: из Леса

Re: Инструментальные средства

Сообщение Miller » 04 апр 2009, 17:23

Несколько раз перечитал все сообщения которые писались выше…попробовал сам загрузить исполняемый код в учебный стенд. Ни чего не получилось! :(
Уважаемые спецы, может подскажите что не так? :oops: Всё что пробовал загрузить, выкладываю в архиве.
1.JPG
Как я понимаю все ок!?
1.JPG (22.2 Кб) Просмотров: 13938
Вложения
load.rar
(68.67 Кб) Скачиваний: 317
Miller
 
Сообщения: 21
Зарегистрирован: 28 мар 2009, 18:34

Re: Инструментальные средства

Сообщение A.Sukhoy » 04 апр 2009, 21:01

У вас точно SDK подключен к COM4? Попробуйте другие порты указать в настройках t167b, как вариант.
Если с портами все ОК, то для загрузки программ можно попробовать использовать программу m3p (http://194.85.162.173/viewvc/gm3p/)
Аватара пользователя
A.Sukhoy
 
Сообщения: 182
Зарегистрирован: 08 апр 2008, 17:53

Re: Инструментальные средства

Сообщение Miller » 05 апр 2009, 00:14

SHR писал(а):У вас точно SDK подключен к COM4? Попробуйте другие порты указать в настройках t167b, как вариант.

Да, точно к Com 4. С другими сразу ошибка выдается.
Miller
 
Сообщения: 21
Зарегистрирован: 28 мар 2009, 18:34

Re: Инструментальные средства

Сообщение kluchev » 06 апр 2009, 00:49

Miller писал(а):
SHR писал(а):У вас точно SDK подключен к COM4? Попробуйте другие порты указать в настройках t167b, как вариант.

Да, точно к Com 4. С другими сразу ошибка выдается.


t167b досовская программа, написанная в конце прошлого века. Лучше возьмите для загрузки программу m3p.exe.
В споре рождается коллективное заблуждение, а истиной мы его называем для краткости
Аватара пользователя
kluchev
 
Сообщения: 995
Зарегистрирован: 04 апр 2008, 13:31
Откуда: SPb

Re: Инструментальные средства

Сообщение Miller » 08 апр 2009, 00:27

и через m3p тоже не получается, но скорее всего я чего недопонимаю.
Попробовал загрузить хех файл, пишет ошибка флеш программирования, что это означает, что не так?
Так же попробовал с load.m3p :(
Вложения
load m3p.rar
(189.62 Кб) Скачиваний: 288
1.JPG
1.JPG (40.8 Кб) Просмотров: 13891
2.JPG
2.JPG (21.03 Кб) Просмотров: 13893
Miller
 
Сообщения: 21
Зарегистрирован: 28 мар 2009, 18:34

Re: Инструментальные средства

Сообщение kluchev » 08 апр 2009, 09:41

Miller писал(а):и через m3p тоже не получается, но скорее всего я чего недопонимаю.
Попробовал загрузить хех файл, пишет ошибка флеш программирования, что это означает, что не так?
Так же попробовал с load.m3p :(


Спокойствие, только спокойствие! Для начала, полезно определить что мы хотим, а то я похоже тоже начал запутываться. Итак, вариантов видится два:
1. Мы хотим поменять загрузчик.
2. Мы хотим загрузить прикладную программу.

Выберите один из вариантов и мы пойдём дальше.
В споре рождается коллективное заблуждение, а истиной мы его называем для краткости
Аватара пользователя
kluchev
 
Сообщения: 995
Зарегистрирован: 04 апр 2008, 13:31
Откуда: SPb

Re: Инструментальные средства

Сообщение Miller » 08 апр 2009, 11:07

2. Я хочу загрузить прикладную программу.
Miller
 
Сообщения: 21
Зарегистрирован: 28 мар 2009, 18:34

Re: Инструментальные средства

Сообщение Василий (студент) » 08 апр 2009, 11:21

Правильно я понимаю, что НЕХ файл полученный компилятором SDCC не получится загрузить в стенд SDK11 пока я не заменю загрузчик во флеш памяти стенда??? Или всё же всё равно чем создан НЕХ файл (KEILом или SDCC) и его одинаково можно загрузить в стенд прогой Т2?

Я взял файл симпл.с откомпелировал его Кейлом и загрузил НЕХ файл в стенд - работает.
Теперь откомпелировал этот файл программой SDCC и полученный НЕХ файл так же загрузил проой Т2 - не работает.
Вопрос: с чем это может быть связано и как заставить работать?
Василий (студент)
 
Сообщения: 1
Зарегистрирован: 20 фев 2009, 10:52

Re: Инструментальные средства

Сообщение kluchev » 08 апр 2009, 12:36

Василий (студент) писал(а):Правильно я понимаю, что НЕХ файл полученный компилятором SDCC не получится загрузить в стенд SDK11 пока я не заменю загрузчик во флеш памяти стенда?


Нет, не правильно.

Протоколы загрузки

Существует два протокола для загрузки прикладных программ в учебный стенд SDK-1.1. Старый протокол называется HEX-2.0.2. Именно он зашивается в учебные стенды по умолчанию. В качестве ответной части на ПК используется программа t167b (DOS).

Новый протокол называется PM3P. Этот протокол существенно надёжнее и быстрее старого. Поддерживается протокол в новом варианте загрузчика (http://embedded.ifmo.ru/index.php/support/sdk-11). В качестве ответной части нужно использовать программу m3p.exe.

Если у вас на компьютере по каким либо причинам не работает программа t167b, можно попробовать загрузить прикладную программу с помощью программы t2, написанной в виде консольного приложения для Win32.
Для этого надо:
1. Скомпилировать программу и получить hex, допустим это пример simple.hex
2. Добавить стартовый адрес в конец hex файла с помощью t167b (или просто добавить строку с адресом с помощью редактора)

Код: Выделить всё
t167b 0x2100 0x0 addhexstart simple.hex bye


В результате, в hex код добавится строка:

Код: Выделить всё
:022100060000D7


3. Написать командный файл для t2, к примеру sdk.t2

Код: Выделить всё
9600  openchannel com4
00 00 create_vchannel SDK11 com4
loadhex simple.hex
0 mterm


4. Нажать кнопку RESET на стенде
5. Запустить t2 sdk.t2
6. Если вы увидите, что программа заработала (надпись Hello), то всё хорошо.


Как проверить, что загрузчик работает

1. Подключить стенд
2. Запустить m3p.exe
3. Набрать следующие строки.

Код: Выделить всё
9600 openchannel com4
0 term


4. Нажать RESET на стенде

a) Если на экране вы увидите бегущие точки, то у вас загрузчик HEX-202
b) Если на экране бегут m.m.m.m.m., то у вас загрузчик PM3P
c) Если ничего нет, то у вас либо неисправен RS232, либо не прошит загрузчик вообще.

t2.rar
Утилита для загрузки прикладных программ для старой версии протокола загрузчика (hex202).
(58.18 Кб) Скачиваний: 304
В споре рождается коллективное заблуждение, а истиной мы его называем для краткости
Аватара пользователя
kluchev
 
Сообщения: 995
Зарегистрирован: 04 апр 2008, 13:31
Откуда: SPb

Re: Инструментальные средства

Сообщение kluchev » 08 апр 2009, 12:51

Василий (студент) писал(а):Вопрос: с чем это может быть связано и как заставить работать?


Особенность работы HEX загрузчика. Для того, чтобы он знал с какого адреса стартовать, нужно добавить адрес старта в последнюю строку HEX файла. См. моё предыдущее сообщение.
В споре рождается коллективное заблуждение, а истиной мы его называем для краткости
Аватара пользователя
kluchev
 
Сообщения: 995
Зарегистрирован: 04 апр 2008, 13:31
Откуда: SPb

Re: Инструментальные средства

Сообщение Miller » 08 апр 2009, 19:50

Как проверить, что загрузчик работает
1. Подключить стенд
2. Запустить m3p.exe
3. Набрать следующие строки.
9600 openchannel com4
0 term
4. Нажать RESET на стенде
a) Если на экране вы увидите бегущие точки, то у вас загрузчик HEX-202
b) Если на экране бегут m.m.m.m.m., то у вас загрузчик PM3P
c) Если ничего нет, то у вас либо неисправен RS232, либо не прошит загрузчик вообще.

Выполняю действия в точном порядке как написано с 1 по 4 пункт.
После нажатия кнопки RESET на стенде, естественно происходит его перезапуск....пропищит динамик, поморгают светодиоды, на жки выводится надпись "Test". В программе m3p появляются новые строчки с пунктами 0,1,2...9 (см.скриншот)
1.JPG
1.JPG (25.3 Кб) Просмотров: 13843


Исходя из всего этого я понимаю что подходит вариант "с"
c) Если ничего нет, то у вас либо неисправен RS232, либо не прошит загрузчик вообще.

Версию с неисправностью RS232 я отодвигаю, т.к. пробовал подключать другие устройства...работают.
Остается, не прошит загрузчик :( Да?
Miller
 
Сообщения: 21
Зарегистрирован: 28 мар 2009, 18:34

Re: Инструментальные средства

Сообщение kluchev » 08 апр 2009, 21:27

Miller писал(а):Остается, не прошит загрузчик :( Да?


Похоже, что так. Ничего страшного, видимо у вас прошит тест стенда. Возьмите утилиту dl.exe и зашейте hex файл загрузчика с нашего сайта.
В споре рождается коллективное заблуждение, а истиной мы его называем для краткости
Аватара пользователя
kluchev
 
Сообщения: 995
Зарегистрирован: 04 апр 2008, 13:31
Откуда: SPb

Re: Инструментальные средства

Сообщение Miller » 08 апр 2009, 22:53

Возьмите утилиту dl.exe и зашейте hex файл загрузчика с нашего сайта

hex файл брать от сюда http://194.85.162.173/repos/ul3/ ????
Но какой именно, там несколько hex’ов???
Miller
 
Сообщения: 21
Зарегистрирован: 28 мар 2009, 18:34

Re: Инструментальные средства

Сообщение kluchev » 09 апр 2009, 00:16

Miller писал(а):
Возьмите утилиту dl.exe и зашейте hex файл загрузчика с нашего сайта

hex файл брать от сюда http://194.85.162.173/repos/ul3/ ????
Но какой именно, там несколько hex’ов???


Загружать нужно main.hex

Если заглянуть в makefile, мы видим следующее:

Код: Выделить всё
        cp v_table/vectors.ihx main.hex
   cat ul_aduc812.hex >> main.hex


Сперва таблица векторов копируется в файл main.hex, далее в конец этого файла добавляется сам загрузчик.

Если прошить ul_aduc812.hex не будут работать программы с прерываниями.
В споре рождается коллективное заблуждение, а истиной мы его называем для краткости
Аватара пользователя
kluchev
 
Сообщения: 995
Зарегистрирован: 04 апр 2008, 13:31
Откуда: SPb

Пред.След.

Вернуться в SDK 1.1

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

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

cron