Форум Микро-Чип
Поиск и заказ электронных компонентов
 

Вернуться   Форум Микро-Чип > Продукция MICROCHIP

Продукция MICROCHIP Технические вопросы по всей продукции Microchip

Ответ
 
Опции темы Опции просмотра
Старый 03.03.2008, 16:49   #1
Ruslan
Senior Member
 
Регистрация: 16.01.2008
Возраст: 40
Сообщений: 287
Вес репутации: 120/47
Ruslan will become famous soon enoughRuslan will become famous soon enough
По умолчанию MPLAB C30

Мой первый проэкт на dsPIC30F4012, компилятор MPLAB C30. Вот то что я написал:
Код:
#define __dsPIC30F4012__
#include "p30fxxxx.h"
main (void);
int main (void)
{;}
После компиляции MPLAB выдает:
dsPIC.c:1:1: warning: "__dsPIC30F4012__" redefined
<built-in>:54:1: warning: this is the location of the previous definition
Skipping link step. The project contains no linker script.
BUILD FAILED: Mon Mar 03 15:47:06 2008
Что это? Как исправить положение?
Для чего написана эта строчка: main (void); ?

Последний раз редактировалось Ruslan; 03.03.2008 в 16:50. Причина: дописал
Ruslan вне форума   Ответить с цитированием
Старый 03.03.2008, 17:10   #2
IceS
Super Moderator
 
Регистрация: 01.03.2007
Адрес: St. Petersburg
Возраст: 40
Сообщений: 3,246
Вес репутации: 3684/115
IceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond repute
Отправить сообщение для IceS с помощью ICQ
По умолчанию Re: MPLAB C30

Похоже что это еще и первый проект на C.
Код:
#define __dsPIC30F4012__
#include "p30fxxxx.h"
main (void);
int main (void)
{;}
Дык оно компилится же.
А говорит оно о том, что прототип функции отличается от описания функции.
Вообще можно убрать

Код:
  main (void);
или сделать соответсвующей прототип, как и описание функции:
Код:
  int main (void);
IceS вне форума   Ответить с цитированием
Старый 03.03.2008, 17:14   #3
Ruslan
Senior Member
 
Регистрация: 16.01.2008
Возраст: 40
Сообщений: 287
Вес репутации: 120/47
Ruslan will become famous soon enoughRuslan will become famous soon enough
По умолчанию Re: MPLAB C30

Но есть еще два предложения:
Skipping link step. The project contains no linker script.
BUILD FAILED: Mon Mar 03 15:47:06 2008
не думаю что это положительный результат компиляции
Как настроить проэкт, чтобы увидить листинг дизасемблера
Ruslan вне форума   Ответить с цитированием
Старый 03.03.2008, 17:28   #4
DRoVik
Senior Member
 
Регистрация: 26.02.2007
Сообщений: 148
Вес репутации: 103/49
DRoVik will become famous soon enoughDRoVik will become famous soon enough
По умолчанию Re: MPLAB C30

Ну ты добавь в проект нужный скрипт.
DRoVik вне форума   Ответить с цитированием
Старый 03.03.2008, 17:38   #5
=AVR=
Banned
 
Регистрация: 10.04.2007
Адрес: Москва
Сообщений: 656
Вес репутации: 161/0
=AVR= has a spectacular aura about=AVR= has a spectacular aura about
По умолчанию Re: MPLAB C30

Для начала скачай последнюю MPLAB 8.02 - в ней уже не нужно указывать Linker Script File. А пока не скачал - просто добавь соответствующий твоему МК файл .gld в ветку Linker Script твоего Project Manager'а, чтобы снять "The project contains no linker script. BUILD FAILED"

Листинга ассемблера (предполагаю, что ты именно его имел в виду) ты не увидишь, т.к. GCC (С30) не делает Compile via Assembly. Придется обходиться просто окном Disassembly listing, что далеко не есть листинг.
=AVR= вне форума   Ответить с цитированием
Старый 03.03.2008, 18:18   #6
Alex B.
Super Moderator
 
Аватар для Alex B.
 
Регистрация: 25.02.2007
Адрес: Russia, SPb
Сообщений: 1,674
Вес репутации: 1729/80
Alex B. has a brilliant futureAlex B. has a brilliant futureAlex B. has a brilliant futureAlex B. has a brilliant futureAlex B. has a brilliant futureAlex B. has a brilliant futureAlex B. has a brilliant futureAlex B. has a brilliant futureAlex B. has a brilliant futureAlex B. has a brilliant futureAlex B. has a brilliant future
Отправить сообщение для Alex B. с помощью Skype™
По умолчанию Re: MPLAB C30

Цитата:
Листинга ассемблера (предполагаю, что ты именно его имел в виду) ты не увидишь, т.к. GCC (С30) не делает Compile via Assembly.
кое-как может помочь ключик
-S
Код:
Stop after compilation proper (i.e., before invoking the assembler). The 
default output file extension is .s.
и ключик
-save-temps
Код:
Don’t delete intermediate files. Place them in the current direc-
tory and name them based on the source file. Thus, compiling 
foo.c with -c -save-temps would produce the following 
files:
foo.i (preprocessed file)
foo.p (pre procedure abstraction assembly language file)
foo.s (assembly language file)
foo.o (object file)
__________________
даташит читать до того , а не после
Alex B. вне форума   Ответить с цитированием
Старый 03.03.2008, 18:42   #7
=AVR=
Banned
 
Регистрация: 10.04.2007
Адрес: Москва
Сообщений: 656
Вес репутации: 161/0
=AVR= has a spectacular aura about=AVR= has a spectacular aura about
По умолчанию Re: MPLAB C30

Ага, спасибо - RTFM рулит!
=AVR= вне форума   Ответить с цитированием
Старый 04.03.2008, 09:20   #8
Ruslan
Senior Member
 
Регистрация: 16.01.2008
Возраст: 40
Сообщений: 287
Вес репутации: 120/47
Ruslan will become famous soon enoughRuslan will become famous soon enough
По умолчанию Re: MPLAB C30

Цитата:
Сообщение от =AVR= Посмотреть сообщение
Для начала скачай последнюю MPLAB 8.02 - в ней уже не нужно указывать Linker Script File. А пока не скачал - просто добавь соответствующий твоему МК файл .gld в ветку Linker Script твоего Project Manager'а, чтобы снять "The project contains no linker script. BUILD FAILED"

Листинга ассемблера (предполагаю, что ты именно его имел в виду) ты не увидишь, т.к. GCC (С30) не делает Compile via Assembly. Придется обходиться просто окном Disassembly listing, что далеко не есть листинг.
Для чего нужен этот файл .gld, что в нем такое(извините за незнание)?
Ruslan вне форума   Ответить с цитированием
Старый 04.03.2008, 10:41   #9
Ruslan
Senior Member
 
Регистрация: 16.01.2008
Возраст: 40
Сообщений: 287
Вес репутации: 120/47
Ruslan will become famous soon enoughRuslan will become famous soon enough
По умолчанию Re: MPLAB C30

Не могу найти описание слова конфигурации в Data Sheet dsPIC30F4011/4012
для микроконтроллера dsPIC30F4012. Укажите где
Ruslan вне форума   Ответить с цитированием
Старый 04.03.2008, 10:48   #10
Greg
Super Moderator
 
Регистрация: 25.02.2007
Адрес: Moscow, ODBS
Сообщений: 6,893
Вес репутации: 5611/171
Greg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond repute
По умолчанию Re: MPLAB C30

Цитата:
Сообщение от Ruslan Посмотреть сообщение
Для чего нужен этот файл .gld, что в нем такое(извините за незнание)?
без него не слинкуется. А что в нём такого - можно посмотреть, этот текстовый файл лежит в папке компилятора
Greg вне форума   Ответить с цитированием
Старый 04.03.2008, 13:31   #11
Ruslan
Senior Member
 
Регистрация: 16.01.2008
Возраст: 40
Сообщений: 287
Вес репутации: 120/47
Ruslan will become famous soon enoughRuslan will become famous soon enough
По умолчанию Re: MPLAB C30

Нашел слова конфигурации в dsPIC30F Family Reference Manual. Кто работал с dsPIC30F4012? Дайте файлики посмотреть.
Ruslan вне форума   Ответить с цитированием
Старый 04.03.2008, 13:33   #12
Greg
Super Moderator
 
Регистрация: 25.02.2007
Адрес: Moscow, ODBS
Сообщений: 6,893
Вес репутации: 5611/171
Greg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond repute
По умолчанию Re: MPLAB C30

Цитата:
Сообщение от Ruslan Посмотреть сообщение
Нашел слова конфигурации в dsPIC30F Family Reference Manual. Кто работал с dsPIC30F4012? Дайте файлики посмотреть.
посмотри в *.inc файле
Greg вне форума   Ответить с цитированием
Старый 04.03.2008, 14:44   #13
Ruslan
Senior Member
 
Регистрация: 16.01.2008
Возраст: 40
Сообщений: 287
Вес репутации: 120/47
Ruslan will become famous soon enoughRuslan will become famous soon enough
По умолчанию Re: MPLAB C30

Что в переводе на русский язык Clock Switching Mode Selection Fuses bits о чем там написано?
Буду подключать кварц 16 МГц, правильно я сконфигурировал?
_FOSC(CSW_ON_FSCM_OFF&HS);
Ruslan вне форума   Ответить с цитированием
Старый 04.03.2008, 16:05   #14
Greg
Super Moderator
 
Регистрация: 25.02.2007
Адрес: Moscow, ODBS
Сообщений: 6,893
Вес репутации: 5611/171
Greg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond repute
По умолчанию Re: MPLAB C30

Цитата:
Сообщение от Ruslan Посмотреть сообщение
Что в переводе на русский язык Clock Switching Mode Selection Fuses bits о чем там написано?
Буду подключать кварц 16 МГц, правильно я сконфигурировал?
_FOSC(CSW_ON_FSCM_OFF&HS);
да, правильно.
Там несколько разных макросов типа
Код:
/* Macros for Configuration Fuse Registers (copied from device header file):*/
_FOSC(CSW_FSCM_OFF & XT_PLL8);   /* Set up for canned oscillator/clock by 8x PLL */
                                /* Ensure FSCM and Clock-switching are ON */
_FWDT(WDT_OFF);                 /* Turn off the Watch-Dog Timer.  */
_FBORPOR(MCLR_EN & PWRT_OFF);   /* Enable MCLR reset pin and turn off the power-up timers. */
_FGS(CODE_PROT_OFF);            /* Disable Code Protection */
все ищутся в инк файлах
Greg вне форума   Ответить с цитированием
Старый 04.03.2008, 16:15   #15
Ruslan
Senior Member
 
Регистрация: 16.01.2008
Возраст: 40
Сообщений: 287
Вес репутации: 120/47
Ruslan will become famous soon enoughRuslan will become famous soon enough
По умолчанию Re: MPLAB C30

Мне не понятно какую функцию выполняют биты конфигурации в регистре FOSC:
FCKSM<1:0>: Clock Switching Mode Selection Fuses bits
Разясните, пожалуйста
Ruslan вне форума   Ответить с цитированием
Старый 04.03.2008, 16:31   #16
Greg
Super Moderator
 
Регистрация: 25.02.2007
Адрес: Moscow, ODBS
Сообщений: 6,893
Вес репутации: 5611/171
Greg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond repute
По умолчанию Re: MPLAB C30

Цитата:
Сообщение от Ruslan Посмотреть сообщение
Мне не понятно какую функцию выполняют биты конфигурации в регистре FOSC:
FCKSM<1:0>: Clock Switching Mode Selection Fuses bits
Разясните, пожалуйста
В даташите на ваш проц есть глава system integration. Её бы перечитать, да несколько раз. Этому FSCM там посвящён целый лист убористого текста
Greg вне форума   Ответить с цитированием
Старый 04.03.2008, 17:16   #17
Ruslan
Senior Member
 
Регистрация: 16.01.2008
Возраст: 40
Сообщений: 287
Вес репутации: 120/47
Ruslan will become famous soon enoughRuslan will become famous soon enough
По умолчанию Re: MPLAB C30

Там написано, если я правильно перевел, если наружный тактовый генератор выходит из строя, то включается внутренний. Только не понятно, контроллер после такого перехода работает далее по программе или как?
Ruslan вне форума   Ответить с цитированием
Старый 04.03.2008, 17:52   #18
IceS
Super Moderator
 
Регистрация: 01.03.2007
Адрес: St. Petersburg
Возраст: 40
Сообщений: 3,246
Вес репутации: 3684/115
IceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond reputeIceS has a reputation beyond repute
Отправить сообщение для IceS с помощью ICQ
Talking Re: MPLAB C30

Цитата:
Сообщение от Ruslan Посмотреть сообщение
Там написано, если я правильно перевел, если наружный тактовый генератор выходит из строя, то включается внутренний. Только не понятно, контроллер после такого перехода работает далее по программе или как?
А можно дословно оригинальную строчку, которую так перевели?
IceS вне форума   Ответить с цитированием
Старый 04.03.2008, 18:15   #19
Alex B.
Super Moderator
 
Аватар для Alex B.
 
Регистрация: 25.02.2007
Адрес: Russia, SPb
Сообщений: 1,674
Вес репутации: 1729/80
Alex B. has a brilliant futureAlex B. has a brilliant futureAlex B. has a brilliant futureAlex B. has a brilliant futureAlex B. has a brilliant futureAlex B. has a brilliant futureAlex B. has a brilliant futureAlex B. has a brilliant futureAlex B. has a brilliant futureAlex B. has a brilliant futureAlex B. has a brilliant future
Отправить сообщение для Alex B. с помощью Skype™
По умолчанию Re: MPLAB C30

да в общем по смыслу правильно он перевел, только с таким подходом все равно ничего не получится =( Даташиты, Руслан читать надо и документацию на средства разработки (компиляторы, MPLAB). Причем ДО, а не после
__________________
даташит читать до того , а не после
Alex B. вне форума   Ответить с цитированием
Старый 05.03.2008, 10:49   #20
Ruslan
Senior Member
 
Регистрация: 16.01.2008
Возраст: 40
Сообщений: 287
Вес репутации: 120/47
Ruslan will become famous soon enoughRuslan will become famous soon enough
По умолчанию Re: MPLAB C30

Цитата:
Сообщение от Alex B. Посмотреть сообщение
да в общем по смыслу правильно он перевел, только с таким подходом все равно ничего не получится =( Даташиты, Руслан читать надо и документацию на средства разработки (компиляторы, MPLAB). Причем ДО, а не после
Я читаю по мере возникновения вопросов. Тема новая, вопросов много. Разобратся нужно.
Не могу найти как подключить внутренние подтягивающие резисторы к портам dsPIC30F4012. Направте где искать.
Ruslan вне форума   Ответить с цитированием
Старый 05.03.2008, 11:12   #21
Greg
Super Moderator
 
Регистрация: 25.02.2007
Адрес: Moscow, ODBS
Сообщений: 6,893
Вес репутации: 5611/171
Greg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond repute
По умолчанию Re: MPLAB C30

Цитата:
Сообщение от Ruslan Посмотреть сообщение
Я читаю по мере возникновения вопросов. Тема новая, вопросов много. Разобратся нужно.
так действительно может ничего не получиться.
Да и вы как-то сразу ставите себя в роль попрошайки, этакого самоучки - сына конфы (такие люди обычно вызывают как минимум отвращение).

Лучше потратить несколько дней и запоем прочитать всю доку на контроллер. Там главное себя правильно настроить и будет это похлеще детектива.
Потом ещё разок (прочитать), потом ещё.... Пока не начнёте цитировать отдельные куски близко к тексту.
Там, кстати, весьма достойный английский

Цитата:
Сообщение от Ruslan Посмотреть сообщение
Не могу найти как подключить внутренние подтягивающие резисторы к портам dsPIC30F4012. Направте где искать.
на ваш процессор надо читать две книжки - даташит на собственно проц и т.н. family reference. В этом последнем можно найти приводимую ниже фразу

Код:
The CNPU1 and CNPU2 registers contain the CNxPUE control bits.
 Each CN pin has a weak pull-up device connected to the pin,
which can be enabled or disabled using the CNxPUE control bits.
The weak pull-up devices act as a current source that is connected
to the pin and eliminate the need for external resistors when push button
or keypad devices are connected.
читайте доку, в английском языке есть даже грубоватая такая аббревиатура - RTFM.
Greg вне форума   Ответить с цитированием
Старый 05.03.2008, 11:33   #22
Ruslan
Senior Member
 
Регистрация: 16.01.2008
Возраст: 40
Сообщений: 287
Вес репутации: 120/47
Ruslan will become famous soon enoughRuslan will become famous soon enough
По умолчанию Re: MPLAB C30

Там страниц с 1000 будет. Но ладно, если читать и думать то что-то должно получится. И за это спасибо.
Ruslan вне форума   Ответить с цитированием
Старый 18.11.2019, 15:23   #23
eleks
Senior Member
 
Аватар для eleks
 
Регистрация: 15.05.2007
Сообщений: 242
Вес репутации: 317/51
eleks is a jewel in the rougheleks is a jewel in the rougheleks is a jewel in the rougheleks is a jewel in the rough
По умолчанию Re: MPLAB C30

Доброго времени суток, коллеги!
Разбираюсь с исходным кодом на C30 из аппноты AN1078 и в самом начале обнаруживаю интересную конструкцию, содержащую (int):
Код:
PLLFBD = (int)(DPLL * 4 - 2);
К функциям, похоже, это отношения не имеет. Полистал документацию по C30, но никакого пояснения по этому поводу не обнаружил. Смахивает на принудительнгое определения типа результата. Или что-то другое?
eleks вне форума   Ответить с цитированием
Старый 18.11.2019, 20:13   #24
edv_2000
Member
 
Регистрация: 02.12.2011
Адрес: SPB
Возраст: 52
Сообщений: 60
Вес репутации: 239/32
edv_2000 has a spectacular aura aboutedv_2000 has a spectacular aura aboutedv_2000 has a spectacular aura about
По умолчанию Re: MPLAB C30

обязательно в целое и 16 бит. Это в регистр.
edv_2000 вне форума   Ответить с цитированием
Старый 19.11.2019, 11:32   #25
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: Московская область
Возраст: 60
Сообщений: 2,676
Вес репутации: 3663/107
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию Re: MPLAB C30

Цитата:
Сообщение от eleks Посмотреть сообщение
Смахивает на
Почему смахивает? Это оно и есть. Достаточно распространенный способ определения типа результата. Промежуточного, в том числе.
ЗЫ. По моему, там вообще то unsigned int должен быть...
Марк вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Mplab c30 & windows VISTA vit_pet Инструментарий 6 04.09.2008 00:04
MPLAB C30 Nick_V Продукция MICROCHIP 4 14.04.2008 14:52
Вопросы по MPLAB C30 SergeyKN Продукция MICROCHIP 4 08.10.2007 12:48
ассембл. ISR в MPLAB C30 SergeyKN Продукция MICROCHIP 10 30.08.2007 13:20
Установка MPLab C30 Sergeant Продукция MICROCHIP 3 01.07.2007 09:00


Часовой пояс GMT +3, время: 02:33.


Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd. Перевод: zCarot