Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: C8051F352 на KEILе
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Все остальные микроконтроллеры > MCS51
MegaVoltt
Всем доброго времени суток. Когда-то давно писал проги на 89С51, потом занимался PICами, теперь решил изучить C8051F352. На KEIL поставил SiC8051F_uv2.exe, но что то не выходит: на #include <C8051F350.H> ругается error a318: cant open file C8051F350.H. Ну и ессесно на MOV CKCON,00000000B - error a45: undefined symbol (pass-2). Пробывал вставлять этот файл от Silabs IDE, тогда ругается на каждую строку зтого файла.
barabek
Цитата(MegaVoltt @ Feb 14 2010, 20:27) *
Пробывал вставлять этот файл от Silabs IDE, тогда ругается на каждую строку зтого файла.

Может он все-таки не на него (строки этого файла) ругается, а ошибка раньше. Такое бывает с хедерами.
Ps Сразу не обратил внимание - вы пишите на асме, а подключаете С-шные файлы. Там должно быть подключение по хитрее. На асме сам не пишу. Изредко только добавляю асмовские вставки в С код, а не наоборот.
PPS и подключать в этом случае нужно файл C8051F350.INC, я думаю.
max_
Попробуйте определить так:

#include <compiler_defs.h>
#include <C8051F350_defs.h>

силобовский хидер для 3 компилеров в последнее время
MegaVoltt
Пишу действительно на АСМ. Попробывал оба варианта, файлы копировал из СИЛАБС, все осталось по прежнему. Может расскажите как вы модифицировали КЕИЛ до C8051F350.
max_
ну если на Асме, то инклюдить надо не .h а #include C8051F350.INC
у Кейла в папке ASM он лежит....
в опциях проекта, на вкладке A51 убрать галочку с define 8051 SFR name...
(если правильно ошибаюсь smile.gif
MegaVoltt
В моем КЕИЛе таких файлов не было ( копировал из СИЛАБа), к стати может КЕИЛ старый uVision2 V2.14 , A51.exe V6.14. Если есть обновленый с руссификатором и лекарством дай ссылку . А вот в этом "на вкладке A51 убрать галочку с define 8051 SFR name..." ошибаешься правильно, за что и спасибо.
firstvald
Вот что в кейлах увидел: отсмотрите все файлы проекта и имена всех каталогов вверх вплоть до корневого и измените в них имена так, чтобы в именах было не более 8 символов и только латиница. И будет щастие. Причем мне так приходилось править имена файлов среды силаба.
max_
на местном ФТП есть даже v9 uVision4 :-)
MegaVoltt
на местном ФТП есть даже v9 uVision4 :-)
укажи пож ссылку, а заодно и на руссификатор.
какой синтаксис для констант в ASCII.
MegaVoltt
И еще подскажите. Программатор флэшбастер2 с выводами С2D и C2CK понятно. Но есть еще 2 TDO и TMS/RST куда их подключать? И зачем они нужны?
barabek
Цитата(MegaVoltt @ Feb 21 2010, 03:04) *
И еще подскажите. Программатор флэшбастер2 с выводами С2D и C2CK понятно. Но есть еще 2 TDO и TMS/RST куда их подключать? И зачем они нужны?

Эти выводы пригодятся если будете прошивать другой камень с JTAG, а не C2 (например, C8051F020 и подобные)
А к местному хранилищу у Вас пока доступа нет. Нужно стать "своим". Но качать можно и с официального сайта, лекарство тоже можно найти с помощью гугля. С русификатором Вы погорячились smile.gif, а такие бывают ?
Цитата
какой синтаксис для констант в ASCII.

Т.е. ? Имеете ввиду:
Код
unsigned char code var1='A';
unsigned char code var2='B';
unsigned char code str[]={"Hello world"};
MegaVoltt
Я пишу на асме.
mov XX,#22h
mov XX,#22d
mov XX,#00100010b
Для ПИКов это выглядело бы так movwf XX,'h'a. как в КЕИЛе.
Палыч
Как-то вот так:
mov XX, #'A'
MegaVoltt
Огромное спасибо Палыч. Действительно так. Теперь не придется писать глупые таблицы. И даже понимает русские буквы кодовой таблицы 1251 MS-WINDOWS, но есть еще кодовая таблица 866 MS-DOS Интересно с какой работают символьные индикаторы на HD44780?
MegaVoltt
И еще вопрос. Надо сохранить данные в флэш-память программ. Как перключать 512-байтные блоки и как указать адрес в пределах 256-512 байт. Другими словами как записать по адресу допустим A8Ch(2700d).
toweroff
Цитата(MegaVoltt @ Feb 23 2010, 17:50) *
Огромное спасибо Палыч. Действительно так. Теперь не придется писать глупые таблицы. И даже понимает русские буквы кодовой таблицы 1251 MS-WINDOWS, но есть еще кодовая таблица 866 MS-DOS Интересно с какой работают символьные индикаторы на HD44780?

там свой набор для русских букв
была софтина, перекодирующая 1251 в формат HD44780, погуглите...
-JonnS-
Цитата
Надо сохранить данные в флэш-память программ

Надо подключить дополнительний Си файл в проект, в котором обявить данных.
Код
\\ const.c
char code aa[] = "Hello";
char code bb[] = "Boys";
....

В опциях линкера Project -> Option for Target'Target 1' -> BL51 Locate, в поле "code" указать адрес "?CO?const(7B00h)".
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.