Тема: MPLAB IDE X
Показать сообщение отдельно
Старый 14.10.2019, 11:00   #1085
Aleksey_
Member
 
Регистрация: 12.12.2012
Адрес: Пермь, Чайковский
Возраст: 40
Сообщений: 43
Вес репутации: 100/27
Aleksey_ will become famous soon enoughAleksey_ will become famous soon enough
По умолчанию Re: MPLAB IDE X

Цитата:
Сообщение от petrd Посмотреть сообщение
Это работает. Надо правильно настроить остальное.
Хорошо, обнадёживает, а что нужно настроить??? А то я уже думаю ассемблер нужно вспоминать, года 3 уже не практиковался на нём, время в обрез, проект нужно на работе делать. Прикладываю мой код. На инициализацию регистров не смотрите - пока изучаю этот PIC. Мне нужна правильность работы моей программы. Чтоб вообще заработала хоть как-то.
Код:
#include <xc.h>
//#include <pic12f683.h>

unsigned char start;
unsigned int start_count;

void interrupt my_isr(void)
{TMR2IF = 0;
   if (start)
    {start_count++;
        if (start_count == 300)
        {!start ;
         GP2 = 0;           
         CCP1CON = 0x0F;    //  
         CCPR1L = 500;      
        }
    }
}

void main(void) {
    ADCON0 = 0;
    ANSEL = 0;
    TRISIO = 0x00; 
    GPIO = 0x04;   
    GP1 = 1;    
    start = 1;
    start_count = 0;
    PR2 = 1023;
    T2IE = 1;
    CCP1IE = 1;
    T2CON |= 0x04;
    OPTION_REG = 0x07;
    INTCON = 0xC0;      //
    CCP1CON = 0x0F;     //  
    CCPR1L = 800; 
    while(1)
    {
    };
}
Видел, что обработчик прерывания нужно после Main разместить, но и такой вариант не работает. Также прилагаю мои ошибки.
PHP код:
CLEAN SUCCESSFUL (total time42ms)
make -f nbproject/Makefile-default.mk SUBPROJECTS= .build-conf
make
[1]: Entering directory 'D:/MPLAB_X_IDE_v5.15/PIC12F683/PIC12F683.X'
make  -f nbproject/Makefile-default.mk dist/default/production/PIC12F683.X.production.hex
make
[2]: Entering directory 'D:/MPLAB_X_IDE_v5.15/PIC12F683/PIC12F683.X'
"C:\Program Files (x86)\Microchip\xc8\v2.05\bin\xc8-cc.exe"  
-mcpu=12F683 -c  -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp -Wa,--DXPRJ_default=default  -msummary=-psect,-class,+mem,-hex,-file  -ginhx032 -Wl,--data-init -mno-keep-startup -mno-osccal -mno-resetbits -mno-save-resetbits -mno-download -mno-stackcall   -std=c99 -gdwarf--mstack=compiled:auto:auto     -o build/default/production/PIC12F683.p1 PIC12F683.
::: advisory: (2049C99 compliant libraries are currently not available for baseline or mid-range devices, or for enhanced mid-range devices using a reentrant stackusing C90 libraries
make
[2]: *** [build/default/production/PIC12F683.p1Error 1
make
[1]: *** [.build-confError 2
make
: *** [.build-implError 2
PIC12F683
.c:8:6errorvariable has incomplete type 'void'
void interrupt my_isr(void)
     ^
PIC12F683.c:8:15errorexpected ';' after top level declarator
void interrupt my_isr
(void)
              ^
              ;
2 errors generated.
(
908) exit status 1
nbproject
/Makefile-default.mk:106recipe for target 'build/default/production/PIC12F683.p1' failed
make
[2]: Leaving directory 'D:/MPLAB_X_IDE_v5.15/PIC12F683/PIC12F683.X'
nbproject/Makefile-default.mk:90recipe for target '.build-conf' failed
make
[1]: Leaving directory 'D:/MPLAB_X_IDE_v5.15/PIC12F683/PIC12F683.X'
nbproject/Makefile-impl.mk:39recipe for target '.build-impl' failed

BUILD FAILED 
(exit value 2total time354ms
Приведите пожалуйста рабочий код, если не трудно, исправте мой
Aleksey_ вне форума   Ответить с цитированием