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

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

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

Ответ
 
Опции темы Опции просмотра
Старый 07.11.2014, 15:23   #376
dimonomid
Member
 
Аватар для dimonomid
 
Регистрация: 17.06.2009
Возраст: 34
Сообщений: 98
Вес репутации: 1112/47
dimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud of
Отправить сообщение для dimonomid с помощью ICQ
По умолчанию Re: MPLAB IDE X

Цитата:
Сообщение от Pridnya Посмотреть сообщение
Спасибо. Проект был импортирован из MPLAB8. Если в X с нуля создать, то доступно.
Хехе, ничего себе сюрприз. Я мог бы это понять, если бы MPLABX позволял экспортировать проект обратно в MPLAB 8; а так - странное поведение, конечно. Ну, будем знать. =)
__________________
TNeo: stable open source real-time kernel for PIC32MX/PIC24/dsPIC, ARM Cortex-M0/M0+/M3/M4/M4F with well-formed code and detailed tests.
Microchip data sheet finder: allows to easily get latest revision of the datasheet by its id like "DS61118".
dimonomid вне форума   Ответить с цитированием
Старый 07.11.2014, 15:42   #377
Рак
Senior Member
 
Регистрация: 02.04.2008
Адрес: Кременчуг
Возраст: 33
Сообщений: 1,355
Вес репутации: 2386/77
Рак 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 IDE X

Цитата:
Сообщение от dimonomid Посмотреть сообщение
Если я правильно вас понял, то у вас в модуле для каждого двигателя есть какие-то статические (или даже глобальные?) переменные, в которых хранятся параметры конкретного двигателя, и они используются в Init(), Start(), etc? Так, что ли?
Я приведу пример:
config.h
Код:
#define MOTOR1_PORT PORTA
#define MOTOR1_MAX_SPEED 100
motor1.h
Код:
#define MOTOR_PORT MOTOR1_PORT
#define MOTOR_MAX_SPEED MOTOR1_MAX_SPEED

#include "motor_lib.c"

void Motor1_Init(void) {Motor_Init();}
void Motor1_Start(void) {Motor_Start();}
void Motor1_SetSpeed(unsigned char Speed) {Motor_Start(Speed);}
motor_lib.c
Код:
static unsigned int iCurrentPosition = 0;

static void Motor_Init(void) 
{
MOTOR_PORT = 0;
}

static void Motor_SetSpeed(unsigned char Speed)
{
if(Speed > MOTOR_MAX_SPEED) ...
}
Это простой кусок для понимания
Рак вне форума   Ответить с цитированием
Старый 07.11.2014, 16:06   #378
Vanizma
Senior Member
 
Аватар для Vanizma
 
Регистрация: 30.04.2008
Адрес: Pskov
Сообщений: 4,131
Вес репутации: 4577/127
Vanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond repute
Отправить сообщение для Vanizma с помощью ICQ
По умолчанию Re: MPLAB IDE X

Цитата:
Сообщение от Рак Посмотреть сообщение
Я приведу пример:
config.h
Код:
#define MOTOR1_PORT PORTA
#define MOTOR1_MAX_SPEED 100
motor1.h
Код:
#define MOTOR_PORT MOTOR1_PORT
#define MOTOR_MAX_SPEED MOTOR1_MAX_SPEED

#include "motor_lib.c"

void Motor1_Init(void) {Motor_Init();}
void Motor1_Start(void) {Motor_Start();}
void Motor1_SetSpeed(unsigned char Speed) {Motor_Start(Speed);}
motor_lib.c
Код:
static unsigned int iCurrentPosition = 0;

static void Motor_Init(void) 
{
MOTOR_PORT = 0;
}

static void Motor_SetSpeed(unsigned char Speed)
{
if(Speed > MOTOR_MAX_SPEED) ...
}
Это простой кусок для понимания
Зачем тебе вызывать лишние функции? не понятно.
в хедере motor_lib.h:
Код:
void Motor_Init(void);
void Motor_Start(void);
void Motor_SetSpeed(unsigned char Speed);
в хедере motor1.h:
Код:
#include "motor_lib.h"

#define Motor1_Init  Motor_Init
#define Motor1_Start  Motor_Start
#define Motor1_SetSpeed(s) Motor_SetSpeed(s)
и т.д.
__________________

Vanizma вне форума   Ответить с цитированием
Старый 07.11.2014, 16:16   #379
dimonomid
Member
 
Аватар для dimonomid
 
Регистрация: 17.06.2009
Возраст: 34
Сообщений: 98
Вес репутации: 1112/47
dimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud of
Отправить сообщение для dimonomid с помощью ICQ
По умолчанию Re: MPLAB IDE X

Цитата:
Сообщение от Рак Посмотреть сообщение
Я приведу пример:
Вообще, чтобы избежать костылей вроде инклудов *.c, по уму это делается, например, так:

config.h
Код:
#define MOTOR1_PORT        PORTA
#define MOTOR1_MAX_SPEED   100
motor_lib.h
Код:
struct MotorCfg {
   volatile unsigned int  *port;
   int                     max_speed;
};

void Motor_Init(struct MotorCfg *cfg);
void Motor_SetSpeed(struct MotorCfg *cfg, unsigned char Speed);
motor_lib.c
Код:
#include "motor_lib.h"

void Motor_Init(const struct MotorCfg *cfg)
{
   *cfg->port = 0;
}

void Motor_SetSpeed(const struct MotorCfg *cfg, unsigned char Speed)
{
   if (Speed > cfg->max_speed){
      // ...
   }
}
motor1.h
Код:
void Motor1_Init(void);
void Motor1_Start(void);
void Motor1_SetSpeed(unsigned char Speed);
motor1.c
Код:
#include "motor_lib.h"

static const struct MotorCfg _motor_cfg = {
   .port       = &MOTOR1_PORT,
   .max_speed  = MOTOR1_MAX_SPEED,
};

void Motor1_Init(void)                    { Motor_Init(&_motor_cfg); }
void Motor1_Start(void)                   { Motor_Start(&_motor_cfg); }
void Motor1_SetSpeed(unsigned char Speed) { Motor_SetSpeed(&_motor_cfg, Speed); }
Чтобы оптимизировать это дело, раз уж Motor1_Init() и т.д. - это просто обертки, можно объявить их как static inline и поместить в header, типа такого:

motor1.h
Код:
#include "motor_lib.h"

extern const struct MotorCfg motor1_cfg;

static inline void Motor1_Init(void){
   Motor_Init(&motor1_cfg);
}

static inline void Motor1_Start(void){
   Motor_Start(&motor1_cfg);
}

static inline void Motor1_SetSpeed(unsigned char Speed){
   Motor_SetSpeed(&motor1_cfg, Speed);
}
motor1.c
Код:
#include "config.h"
#include "motor_lib.h"

const struct MotorCfg motor1_cfg = {
   .port       = &MOTOR1_PORT,
   .max_speed  = MOTOR1_MAX_SPEED,
};
Тогда компилятор соптимизирует вам все это лучше некуда.
__________________
TNeo: stable open source real-time kernel for PIC32MX/PIC24/dsPIC, ARM Cortex-M0/M0+/M3/M4/M4F with well-formed code and detailed tests.
Microchip data sheet finder: allows to easily get latest revision of the datasheet by its id like "DS61118".
dimonomid вне форума   Ответить с цитированием
Старый 07.11.2014, 16:20   #380
Рак
Senior Member
 
Регистрация: 02.04.2008
Адрес: Кременчуг
Возраст: 33
Сообщений: 1,355
Вес репутации: 2386/77
Рак 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 IDE X

dimonomid, оптимизировалось под 18 пик и старый HItech, не любят там указатели, а так, можно было бы заполнять для каждого движка структуру и передавать на нее указатель функции. Тут с Вами согласен.
Рак вне форума   Ответить с цитированием
Старый 07.11.2014, 16:42   #381
dimonomid
Member
 
Аватар для dimonomid
 
Регистрация: 17.06.2009
Возраст: 34
Сообщений: 98
Вес репутации: 1112/47
dimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud of
Отправить сообщение для dimonomid с помощью ICQ
По умолчанию Re: MPLAB IDE X

Цитата:
Сообщение от Рак Посмотреть сообщение
dimonomid, оптимизировалось под 18 пик и старый HItech, не любят там указатели, а так, можно было бы заполнять для каждого движка структуру и передавать на нее указатель функции. Тут с Вами согласен.
Ясно; с хайтеком не работал, с пик18 - почти не работал, никак не могу прокомментировать. Хотя интересно, как это - Си, который не любит указателей. Без указателей на Си хорошо не напишешь..

Раз специфика заставляет - понятно. Я очень стараюсь избегать любых инструментов, использование которых будет вынуждать меня писать костыльный код , но если приходится - значит, приходится.
__________________
TNeo: stable open source real-time kernel for PIC32MX/PIC24/dsPIC, ARM Cortex-M0/M0+/M3/M4/M4F with well-formed code and detailed tests.
Microchip data sheet finder: allows to easily get latest revision of the datasheet by its id like "DS61118".
dimonomid вне форума   Ответить с цитированием
Старый 07.11.2014, 16:46   #382
Vanizma
Senior Member
 
Аватар для Vanizma
 
Регистрация: 30.04.2008
Адрес: Pskov
Сообщений: 4,131
Вес репутации: 4577/127
Vanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond repute
Отправить сообщение для Vanizma с помощью ICQ
По умолчанию Re: MPLAB IDE X

Цитата:
Сообщение от dimonomid Посмотреть сообщение
Ясно; с хайтеком не работал, с пик18 - почти не работал, никак не могу прокомментировать. Хотя интересно, как это - Си, который не любит указателей. Без указателей на Си хорошо не напишешь..

Раз специфика заставляет - понятно. Я очень стараюсь избегать любых инструментов, использование которых будет вынуждать меня писать костыльный код , но если приходится - значит, приходится.
c18 нормально с указателями. В нем не работают указатели на функции, если тип памяти не auto
__________________

Vanizma вне форума   Ответить с цитированием
Старый 07.11.2014, 16:50   #383
Рак
Senior Member
 
Регистрация: 02.04.2008
Адрес: Кременчуг
Возраст: 33
Сообщений: 1,355
Вес репутации: 2386/77
Рак 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 IDE X

Цитата:
Сообщение от Vanizma Посмотреть сообщение
c18 нормально с указателями. В нем не работают указатели на функции, если тип памяти не auto
В Hitech тоже нормально с указателями, в контроллере работа с ними идет через регистры косвенной адресации, что занимает относительно большое время. А так можно было бы и не париться. А так за быстродействие пришлось побороться.
Рак вне форума   Ответить с цитированием
Старый 07.11.2014, 16:58   #384
Vanizma
Senior Member
 
Аватар для Vanizma
 
Регистрация: 30.04.2008
Адрес: Pskov
Сообщений: 4,131
Вес репутации: 4577/127
Vanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond repute
Отправить сообщение для Vanizma с помощью ICQ
По умолчанию Re: MPLAB IDE X

Цитата:
Сообщение от dimonomid Посмотреть сообщение
Вообще, чтобы избежать костылей вроде инклудов *.c, по уму это делается, например, так:

config.h
Код:
#define MOTOR1_PORT        PORTA
#define MOTOR1_MAX_SPEED   100
motor_lib.h
Код:
struct MotorCfg {
   volatile unsigned int  *port;
   int                     max_speed;
};

void Motor_Init(struct MotorCfg *cfg);
void Motor_SetSpeed(struct MotorCfg *cfg, unsigned char Speed);
motor_lib.c
Код:
#include "motor_lib.h"

void Motor_Init(const struct MotorCfg *cfg)
{
   *cfg->port = 0;
}

void Motor_SetSpeed(const struct MotorCfg *cfg, unsigned char Speed)
{
   if (Speed > cfg->max_speed){
      // ...
   }
}
motor1.h
Код:
void Motor1_Init(void);
void Motor1_Start(void);
void Motor1_SetSpeed(unsigned char Speed);
motor1.c
Код:
#include "motor_lib.h"

static const struct MotorCfg _motor_cfg = {
   .port       = &MOTOR1_PORT,
   .max_speed  = MOTOR1_MAX_SPEED,
};

void Motor1_Init(void)                    { Motor_Init(&_motor_cfg); }
void Motor1_Start(void)                   { Motor_Start(&_motor_cfg); }
void Motor1_SetSpeed(unsigned char Speed) { Motor_SetSpeed(&_motor_cfg, Speed); }
Чтобы оптимизировать это дело, раз уж Motor1_Init() и т.д. - это просто обертки, можно объявить их как static inline и поместить в header, типа такого:

motor1.h
Код:
#include "motor_lib.h"

extern const struct MotorCfg motor1_cfg;

static inline void Motor1_Init(void){
   Motor_Init(&motor1_cfg);
}

static inline void Motor1_Start(void){
   Motor_Start(&motor1_cfg);
}

static inline void Motor1_SetSpeed(unsigned char Speed){
   Motor_SetSpeed(&motor1_cfg, Speed);
}
motor1.c
Код:
#include "config.h"
#include "motor_lib.h"

const struct MotorCfg motor1_cfg = {
   .port       = &MOTOR1_PORT,
   .max_speed  = MOTOR1_MAX_SPEED,
};
Тогда компилятор соптимизирует вам все это лучше некуда.
тогда уж проще и удобней через указатели на функции работать...
в структурах в rom нафигачил, а потом вызывай только...
__________________

Vanizma вне форума   Ответить с цитированием
Старый 07.11.2014, 17:17   #385
dimonomid
Member
 
Аватар для dimonomid
 
Регистрация: 17.06.2009
Возраст: 34
Сообщений: 98
Вес репутации: 1112/47
dimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud of
Отправить сообщение для dimonomid с помощью ICQ
По умолчанию Re: MPLAB IDE X

Цитата:
Сообщение от Vanizma Посмотреть сообщение
тогда уж проще и удобней через указатели на функции работать...
в структурах в rom нафигачил, а потом вызывай только...
Покажи, как именно.

Я использую указатели на функции, когда есть разные реализации одного действия: например, нужно передать какие-то данные, но в одном случае нужно это сделать по K-линии, а в другом по CAN. То есть, оперируя терминами ООП, есть абстрактный класс типа DataTransmitter, и у него есть метод Transmit(const unsigned char *data). И есть конкретные реализации этого абстрактного класса (подклассы), которые реализуют метод Transmit() по-разному; а код, вызывающий Transmit(), не должен беспокоиться о том, как там и куда что-то будет передаваться.

А здесь - только данные разные, а действия одни и те же. Здесь не нужно никаких подклассов, просто нужно несколько экземпляров одного класса. В данном случае "экземпляр класса" - это экземпляр структуры struct MotorCfg, указатель на который передается в "метод" Motor_Init().

Так что, или я тебя не понял, или... покажи пожалста, что именно ты имеешь в виду.
__________________
TNeo: stable open source real-time kernel for PIC32MX/PIC24/dsPIC, ARM Cortex-M0/M0+/M3/M4/M4F with well-formed code and detailed tests.
Microchip data sheet finder: allows to easily get latest revision of the datasheet by its id like "DS61118".
dimonomid вне форума   Ответить с цитированием
Старый 07.11.2014, 17:56   #386
Vanizma
Senior Member
 
Аватар для Vanizma
 
Регистрация: 30.04.2008
Адрес: Pskov
Сообщений: 4,131
Вес репутации: 4577/127
Vanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond reputeVanizma has a reputation beyond repute
Отправить сообщение для Vanizma с помощью ICQ
По умолчанию Re: MPLAB IDE X

Цитата:
Сообщение от dimonomid Посмотреть сообщение
Покажи, как именно.

Я использую указатели на функции, когда есть разные реализации одного действия: например, нужно передать какие-то данные, но в одном случае нужно это сделать по K-линии, а в другом по CAN. То есть, оперируя терминами ООП, есть абстрактный класс типа DataTransmitter, и у него есть метод Transmit(const unsigned char *data). И есть конкретные реализации этого абстрактного класса (подклассы), которые реализуют метод Transmit() по-разному; а код, вызывающий Transmit(), не должен беспокоиться о том, как там и куда что-то будет передаваться.

А здесь - только данные разные, а действия одни и те же. Здесь не нужно никаких подклассов, просто нужно несколько экземпляров одного класса. В данном случае "экземпляр класса" - это экземпляр структуры struct MotorCfg, указатель на который передается в "метод" Motor_Init().

Так что, или я тебя не понял, или... покажи пожалста, что именно ты имеешь в виду.
я пока что у него вижу одинаковые функции без передачи параметров, типа Init. ну так в структуре на них указатели и использовать.

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

Vanizma вне форума   Ответить с цитированием
Старый 07.11.2014, 18:05   #387
dimonomid
Member
 
Аватар для dimonomid
 
Регистрация: 17.06.2009
Возраст: 34
Сообщений: 98
Вес репутации: 1112/47
dimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud ofdimonomid has much to be proud of
Отправить сообщение для dimonomid с помощью ICQ
По умолчанию Re: MPLAB IDE X

Цитата:
Сообщение от Vanizma Посмотреть сообщение
я пока что у него вижу одинаковые функции без передачи параметров, типа Init. ну так в структуре на них указатели и использовать.
У него функции одинаковые, да не одинаковые. Посмотри внимательно на код, который он привел:

motor_lib.c
Код:
static void Motor_Init(void) 
{
   MOTOR_PORT = 0;
}

static void Motor_SetSpeed(unsigned char Speed)
{
   if(Speed > MOTOR_MAX_SPEED) ...
}
А вот MOTOR_PORT и MOTOR_MAX_SPEED определяются в файле, в который этот motor_lib.c был подключен с помощью include:

Код:
#define MOTOR_PORT MOTOR1_PORT
#define MOTOR_MAX_SPEED MOTOR1_MAX_SPEED

#include "motor_lib.c"
Брррр..

Так что у него есть много копий функций, которые действуют по одному алгоритму, но работают с разными данными. В одном случае MOTOR_PORT это PORTA, в другом случае это, может, PORTB, и т.д.
__________________
TNeo: stable open source real-time kernel for PIC32MX/PIC24/dsPIC, ARM Cortex-M0/M0+/M3/M4/M4F with well-formed code and detailed tests.
Microchip data sheet finder: allows to easily get latest revision of the datasheet by its id like "DS61118".
dimonomid вне форума   Ответить с цитированием
Старый 03.03.2015, 14:02   #388
AleksBak
Senior Member
 
Аватар для AleksBak
 
Регистрация: 27.02.2007
Адрес: г. Баку
Сообщений: 3,124
Вес репутации: 2885/104
AleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond repute
По умолчанию Re: MPLAB IDE X

Вышла бета версия новой МПЛАБ Х 3.00. Добавлено много новых функций.
Миниатюры
4b.png  
AleksBak вне форума   Ответить с цитированием
Старый 03.03.2015, 15:28   #389
yeskela
Senior Member
 
Аватар для yeskela
 
Регистрация: 28.01.2010
Адрес: Новочеркасск
Возраст: 36
Сообщений: 1,129
Вес репутации: 3762/82
yeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond repute
По умолчанию Re: MPLAB IDE X

Цитата:
Сообщение от AleksBak Посмотреть сообщение
Вышла бета версия новой МПЛАБ Х 3.00. Добавлено много новых функций.
Ага ага. Вкусная. С выходных гоняю.
__________________
Отсутствие доступа в интернет с рабочего места очень замедляет работу. Наличие - полностью парализует её.
yeskela вне форума   Ответить с цитированием
Старый 03.03.2015, 15:40   #390
AleksBak
Senior Member
 
Аватар для AleksBak
 
Регистрация: 27.02.2007
Адрес: г. Баку
Сообщений: 3,124
Вес репутации: 2885/104
AleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond repute
По умолчанию Re: MPLAB IDE X

Цитата:
Сообщение от yeskela Посмотреть сообщение
Ага ага. Вкусная. С выходных гоняю.
Ихний глюк с "включенным" bookmark-ом (когда он так и "остается" включенным слева) уже достал и сегодня посмотрел/увидел, что есть новая. Уже твердо уяснил себе, что нужно обяательно экспортировать настройки после того как настроил среду под себя и хранить их отдельно.
AleksBak вне форума   Ответить с цитированием
Старый 03.03.2015, 16:21   #391
yeskela
Senior Member
 
Аватар для yeskela
 
Регистрация: 28.01.2010
Адрес: Новочеркасск
Возраст: 36
Сообщений: 1,129
Вес репутации: 3762/82
yeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond repute
По умолчанию Re: MPLAB IDE X

Цитата:
Сообщение от AleksBak Посмотреть сообщение
Уже твердо уяснил себе, что нужно обяательно экспортировать настройки после того как настроил среду под себя и хранить их отдельно.
Я наоборот всегда перенастраиваю с нуля. И поковыряться позволяет поглубже, новые фичи уяснить, и переносится только хороший experience, без ненужных хвостов)
__________________
Отсутствие доступа в интернет с рабочего места очень замедляет работу. Наличие - полностью парализует её.
yeskela вне форума   Ответить с цитированием
Старый 03.03.2015, 18:50   #392
AleksBak
Senior Member
 
Аватар для AleksBak
 
Регистрация: 27.02.2007
Адрес: г. Баку
Сообщений: 3,124
Вес репутации: 2885/104
AleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond repute
По умолчанию Re: MPLAB IDE X

Цитата:
Сообщение от yeskela Посмотреть сообщение
Я наоборот всегда перенастраиваю с нуля. И поковыряться позволяет поглубже, новые фичи уяснить, и переносится только хороший experience, без ненужных хвостов)
Дык я тоже с нуля. Писал про экспортировать настройки чтоб потом "баг" убрать. Например тот баг, что упомянул ранее - стояла версия 2.2х появляется например баг, как писал, что с bookmark-ом (не убирается он слева кнопкой и только Ctrl+Shift+M), поставил недели 3 назад 2.30. Баг ушел. Недавно опять появился. Тут "Сбросить настройки в дефолтные" нет такой кнопки. Решил еще раз новую поставить и обязательно сохранить настройки (можно прямо в папке с проектом и указать дату в имени файла настроек). Интересно вот получится в новой 3.хх и сам "ворспейс" сохраненным оставлять? Имеется ввиду следующее - вся директория с проектом хранится на съемном носителе, а когда в другой МПЛАБ Х (на др. компе) открываешь эту директорию проекта с расширением .X (это типа ихний аналог "воркспейса") открывалось точно с такими же открытыми файлами и видом в Редакторе как и на первом компьютере? Вот если такая штука была бы - неплохо было бы.
AleksBak вне форума   Ответить с цитированием
Старый 04.03.2015, 09:03   #393
radioman
Member
 
Регистрация: 01.04.2009
Сообщений: 46
Вес репутации: 100/38
radioman will become famous soon enoughradioman will become famous soon enough
По умолчанию Re: MPLAB IDE X

Может глупый вопрос.

Решил попробовать MPLAB X.
Импортировал готовый проект. Симулятор програмный. Компилятор C18. Проц PIC18F46K22. Mplab X 2.35
Пытаюсь поставить точку останова breakpoint в Line. Красным подсвечивается,запускаю прогу она эту точку пролетает. Символ слева имеет красный квадратик с "закорючкой"
Ставлю точку останова по адресу (в dissasem) останавливается.
Попробовал с Real Ice то же самое.
Сделал проект "ручками" с нуля,то же самое.
Сделал пустой проект с Nop() - все работает.
radioman вне форума   Ответить с цитированием
Старый 04.03.2015, 09:38   #394
yeskela
Senior Member
 
Аватар для yeskela
 
Регистрация: 28.01.2010
Адрес: Новочеркасск
Возраст: 36
Сообщений: 1,129
Вес репутации: 3762/82
yeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond repute
По умолчанию Re: MPLAB IDE X

Цитата:
Сообщение от AleksBak Посмотреть сообщение
Тут "Сбросить настройки в дефолтные" нет такой кнопки.
Надо грохнуть c:\Users\%USER%\AppData\Roaming\mplab_ide - там всё, включая плагины установленные руками.
Цитата:
Сообщение от AleksBak Посмотреть сообщение
Решил еще раз новую поставить и обязательно сохранить настройки (можно прямо в папке с проектом и указать дату в имени файла настроек). Интересно вот получится в новой 3.хх и сам "ворспейс" сохраненным оставлять?
Настройки IDE(синтаксис, форматирование, шаблоны и т.д.) можно выгрузить и загрузить в Tools->Options->Import/Export (слева внизу кнопки).
А остаётся что - расположение окошек, да список открытых проектов? Может и это можно, но как то не требовалось пока, так что не искал
__________________
Отсутствие доступа в интернет с рабочего места очень замедляет работу. Наличие - полностью парализует её.
yeskela вне форума   Ответить с цитированием
Старый 04.03.2015, 09:40   #395
yeskela
Senior Member
 
Аватар для yeskela
 
Регистрация: 28.01.2010
Адрес: Новочеркасск
Возраст: 36
Сообщений: 1,129
Вес репутации: 3762/82
yeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond repute
По умолчанию Re: MPLAB IDE X

Цитата:
Сообщение от radioman Посмотреть сообщение
Красным подсвечивается,запускаю прогу она эту точку пролетает.
....
Ставлю точку останова по адресу (в dissasem) останавливается.
...
Сделал пустой проект с Nop() - все работает.
Оптимизация включена?
__________________
Отсутствие доступа в интернет с рабочего места очень замедляет работу. Наличие - полностью парализует её.
yeskela вне форума   Ответить с цитированием
Старый 04.03.2015, 09:48   #396
radioman
Member
 
Регистрация: 01.04.2009
Сообщений: 46
Вес репутации: 100/38
radioman will become famous soon enoughradioman will become famous soon enough
По умолчанию Re: MPLAB IDE X

Цитата:
Сообщение от yeskela Посмотреть сообщение
Оптимизация включена?
Да,включена. Но пробовал отключать (разные режимы оптимизации),не помогло.
radioman вне форума   Ответить с цитированием
Старый 04.03.2015, 09:51   #397
yeskela
Senior Member
 
Аватар для yeskela
 
Регистрация: 28.01.2010
Адрес: Новочеркасск
Возраст: 36
Сообщений: 1,129
Вес репутации: 3762/82
yeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond repute
По умолчанию Re: MPLAB IDE X

Цитата:
Сообщение от radioman Посмотреть сообщение
Да,включена. Но пробовал отключать (разные режимы оптимизации),не помогло.
Disasm попробуй посмотреть (window->debugging->disassembly). Может этой C строчке не досталось ASM кода)))
__________________
Отсутствие доступа в интернет с рабочего места очень замедляет работу. Наличие - полностью парализует её.
yeskela вне форума   Ответить с цитированием
Старый 04.03.2015, 09:54   #398
radioman
Member
 
Регистрация: 01.04.2009
Сообщений: 46
Вес репутации: 100/38
radioman will become famous soon enoughradioman will become famous soon enough
По умолчанию Re: MPLAB IDE X

Цитата:
Сообщение от yeskela Посмотреть сообщение
Disasm попробуй посмотреть (window->debugging->disassembly). Может этой C строчке не досталось ASM кода)))
Да я в разных местах программы пробовал. Везде одно и то же.
radioman вне форума   Ответить с цитированием
Старый 04.03.2015, 12:07   #399
yeskela
Senior Member
 
Аватар для yeskela
 
Регистрация: 28.01.2010
Адрес: Новочеркасск
Возраст: 36
Сообщений: 1,129
Вес репутации: 3762/82
yeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond reputeyeskela has a reputation beyond repute
По умолчанию Re: MPLAB IDE X

Цитата:
Сообщение от radioman Посмотреть сообщение
Да я в разных местах программы пробовал. Везде одно и то же.
И всё таки, я бы посмотрел дизассемблер. Оно как-то предметней тогда будет.
__________________
Отсутствие доступа в интернет с рабочего места очень замедляет работу. Наличие - полностью парализует её.
yeskela вне форума   Ответить с цитированием
Старый 04.03.2015, 12:22   #400
radioman
Member
 
Регистрация: 01.04.2009
Сообщений: 46
Вес репутации: 100/38
radioman will become famous soon enoughradioman will become famous soon enough
По умолчанию Re: MPLAB IDE X

Цитата:
Сообщение от yeskela Посмотреть сообщение
И всё таки, я бы посмотрел дизассемблер. Оно как-то предметней тогда будет.
Да,все оказалось просто.
Как я и думал глупый вопрос
Основной модуль был не main.c а main_xxx.c т.к. ранее использовал разные конфигурации. В MPLAB IDE проходило а тут нет. Переименовал все пошло.
Эх стандартов надо придерживаться
radioman вне форума   Ответить с цитированием
Ответ


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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обновление MPLAB IDE Илья Продукция MICROCHIP 4 24.12.2009 20:08
MPLab IDE 8.30 и коннект ICD2 Romantic Продукция MICROCHIP 13 14.08.2009 23:29
ICD2 VladG Продукция MICROCHIP 25 05.05.2009 11:26
Помогите плизз с PIC16LF628A dbosh Продукция MICROCHIP 49 11.10.2008 01:03
MPLAB IDE v8.02 - ошибка дизассемблирования кода el_eng Продукция MICROCHIP 12 21.03.2008 14:26


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


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