-
23.07.2015, 10:00 #1Very High Power
- Регистрация
- 23.04.2011
- Адрес
- Саратов
- Возраст
- 54
- Сообщений
- 2,396
- Поблагодарили
- 993
- Поблагодарил
- 688
Не умею компилировать!
Постановка задачи.
1. Имеется исходник небольшой программы на С++ для AT8951. Необходимо сделать из нее HEX-файл для моделирования в Proteus и последующей модернизации программы.
2. Имеется небольшой опыт в программировании PIC-контроллеров, общие понятия об архитектуре микроконтроллеров, небольшие навыки и опыт программирования в целом.
3. Имеются программисты на работе, но им всем некогда, млин.
4. Приходится заниматься самому (точнее, с коллегой - уровень примерно мой).
5. С пиками как то все просто было - написал, скомпилировал - получил HEX, загнал в Proteus.
6. C этим контроллером так не получилось - компилятор (или то, что я за него принимаю) в Keil вместо HEX-файла выдал кучу каких то файлов.
7. Спросить больше не у кого.
8. ПОМОГИТЕ ЧАЙНИКУ ПОЖАЛУЙСТА!!!!!Андрей (RA4DB)
Whatever happens, we have got
The Maxim gun, and they have not.
-
23.07.2015, 12:46 #2
-
23.07.2015, 14:10 #3
-
23.07.2015, 14:33 #4... без мотора
- Регистрация
- 26.04.2013
- Адрес
- Питер
- Возраст
- 76
- Сообщений
- 40
- Поблагодарили
- 3
- Поблагодарил
- 8
в таком случае

УДК 004.42:004.3'144:621.3.049.774АRM
ББК 32.973.26018.2М12
Магда Ю. С. Программирование и отладка С/С++ приложений для микроконтроллеров
ARM. – М.: ДМК Пресс, 2012. – 168 с.: ил. ISBN 978594074745
УДК 621.396.6
ББК 32.872М12
Магда Ю. С. Микроконтроллеры серии 8051: практический подход
М.: ДМК Пресс, 2008. – 228 с.: ил. ISBN 5-94074-394-3
пользование Кейлом подробно в 1-й книге расписано, сам ею пользуюсь
Откуда мы пришли, куда свой путь вершим, в чем нашей жизни смысл ...
-
23.07.2015, 14:45 #5Very High Power
- Регистрация
- 23.04.2011
- Адрес
- Саратов
- Возраст
- 54
- Сообщений
- 2,396
- Поблагодарили
- 993
- Поблагодарил
- 688
Спасибо, но глубоко вникать нет ни времени, ни необходимости. Работа разовая. Если можно - просто на пальцах процесс компиляции.
Андрей (RA4DB)
Whatever happens, we have got
The Maxim gun, and they have not.
-
23.07.2015, 14:51 #6... без мотора
- Регистрация
- 26.04.2013
- Адрес
- Питер
- Возраст
- 76
- Сообщений
- 40
- Поблагодарили
- 3
- Поблагодарил
- 8
Откуда мы пришли, куда свой путь вершим, в чем нашей жизни смысл ...
-
23.07.2015, 14:55 #7
-
23.07.2015, 17:27 #8... без мотора
- Регистрация
- 26.04.2013
- Адрес
- Питер
- Возраст
- 76
- Сообщений
- 40
- Поблагодарили
- 3
- Поблагодарил
- 8
в 1-й книге (по моей ссылке выше)
на стр.30-35 подробно с примерами расписаны процедуры создания проекта и получения хекса
Откуда мы пришли, куда свой путь вершим, в чем нашей жизни смысл ...
-
23.07.2015, 17:39 #9Very High Power
- Регистрация
- 23.04.2011
- Адрес
- Саратов
- Возраст
- 54
- Сообщений
- 2,396
- Поблагодарили
- 993
- Поблагодарил
- 688
Благодарю Вас, сэр)) Завтра попробую.
Андрей (RA4DB)
Whatever happens, we have got
The Maxim gun, and they have not.
-
24.07.2015, 09:47 #10Very High Power
- Регистрация
- 23.04.2011
- Адрес
- Саратов
- Возраст
- 54
- Сообщений
- 2,396
- Поблагодарили
- 993
- Поблагодарил
- 688
Вроде получается. Но где то синтаксическая ошибка:
error C129: missing ';' before '<string>'
и не могу понять, в какой строке. Что это может быть?Андрей (RA4DB)
Whatever happens, we have got
The Maxim gun, and they have not.
-
24.07.2015, 10:49 #11... без мотора
- Регистрация
- 26.04.2013
- Адрес
- Питер
- Возраст
- 76
- Сообщений
- 40
- Поблагодарили
- 3
- Поблагодарил
- 8
ну дык.., эта.... точка с запятой перед оператором
, проверьте исходник
Откуда мы пришли, куда свой путь вершим, в чем нашей жизни смысл ...
-
24.07.2015, 11:02 #12Very High Power
- Регистрация
- 23.04.2011
- Адрес
- Саратов
- Возраст
- 54
- Сообщений
- 2,396
- Поблагодарили
- 993
- Поблагодарил
- 688
Да я понимаю, что она пишет. Тока все точки с запятой на месте. На мой дилетантский взгляд. Если б она хоть строку с ошибкой указывала..
Вот в выделенной строке должна быть точка с запятой?
66 void main(void)
67 {
68 1 //InitClockTimer();
69 1 P0 = P1 = P2 = P3 = 0xFF; //P3 = 7F;
70 1 P3_7 = 0;
71 1 P3_6 = 1;
72 1 InitEx0Irq(); // ReciverInterupt
73 1
74 1 EA = 1; /* global interrupt enable */
75 1
76 1
77 1 while (1)
78 1 {
79 2 }
80 1 }
Других вариантов не вижу.Последний раз редактировалось RA4DB; 24.07.2015 в 11:09.
Андрей (RA4DB)
Whatever happens, we have got
The Maxim gun, and they have not.
-
24.07.2015, 11:32 #13... без мотора
- Регистрация
- 26.04.2013
- Адрес
- Питер
- Возраст
- 76
- Сообщений
- 40
- Поблагодарили
- 3
- Поблагодарил
- 8
если в строках 78-79 блок операторов от выражения while (1), то - не должна
в противном случае - нужнаОткуда мы пришли, куда свой путь вершим, в чем нашей жизни смысл ...
-
24.07.2015, 11:43 #14
-
24.07.2015, 12:40 #15... без мотора
- Регистрация
- 26.04.2013
- Адрес
- Питер
- Возраст
- 76
- Сообщений
- 40
- Поблагодарили
- 3
- Поблагодарил
- 8
тогда попробуйте так while (1); и удалите строки 78-79
Откуда мы пришли, куда свой путь вершим, в чем нашей жизни смысл ...
|
|

1Спасибо
URL обратной ссылки
Подробнее про обратные ссылки













Ответить с цитированием


Социальные закладки