Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту


 
Опции темы
Непрочитано 24.02.2016, 21:38  
Dtolok
Гражданин KAZUS.RU
 
Регистрация: 28.11.2007
Адрес: харьков
Сообщений: 850
Сказал спасибо: 339
Сказали Спасибо 43 раз(а) в 23 сообщении(ях)
Dtolok на пути к лучшему
По умолчанию dspic33 PWM

заливаю пример работы с мотором от микрочипа и МК начинает генерить по верхним ключам - хотя бит включения модуля - отключен
Код:
 // Center aligned PWM.
    // Note: The PWM period is set to dLoopInTcy/2 but since it counts up and 
    // and then down =› the interrupt flag is set to 1 at zero =› actual 
    // interrupt period is dLoopInTcy

	PHASE1 = LOOPTIME_TCY;
	PHASE2 = LOOPTIME_TCY;
	PHASE3 = LOOPTIME_TCY;
	PTPER = 2*LOOPTIME_TCY+1;

	PWMCON1 = 0x0204;	// Enable PWM output pins and configure them as 
	PWMCON2 = 0x0204;	// complementary mode
	PWMCON3 = 0x0204;

	//I/O pins initially controlled by GPIO
	IOCON1 = 0;
	IOCON2 = 0;
	IOCON3 = 0;

	//configure deadtime
	DTR1 = 0x0000;
	DTR2 = 0x0000;
	DTR3 = 0x0000;

	ALTDTR1 = DDEADTIME;	// 700 ns of dead time
	ALTDTR2 = DDEADTIME;	// 700 ns of dead time
	ALTDTR3 = DDEADTIME;	// 700 ns of dead time

	
	FCLCON1 = 0x3;     //Fault disabled
	FCLCON2 = 0x3;     //Fault disabled
	FCLCON3 = 0x3;     //Fault disabled

	PTCON2 = 0x0000;	// Divide by 1 to generate PWM

    PDC1 = MIN_DUTY;   // Initialise the duty registers
    PDC2 = MIN_DUTY;
    PDC3 = MIN_DUTY;

	IPC23bits.PWM1IP = 4;	// PWM Interrupt Priority 4
	IPC23bits.PWM2IP = 4;	// PWM Interrupt Priority 4
	IPC24bits.PWM3IP = 4;	// PWM Interrupt Priority 4
	IFS5bits.PWM1IF=0;		// Clearing the PWM Interrupt Flag
	IEC5bits.PWM1IE=0;		// Enabling the PWM interrupt

    // PTCON = 0x8000;         // Enable PWM for center aligned operation

	//I/O pins controlled by PWM
	IOCON1 = 0xC000;
	Delay(100);			    // Adding this delay allows enough time for high-ESR-type C61 to recover
	IOCON2 = 0xC000;
	Delay(100);			    // Adding this delay allows enough time for high-ESR-type C61 to recover	
	IOCON3 = 0xC000;

    // SEVTCMP: ??????????? ??????????? ?????????? ??????? ????? 
    //???? ????????? ADC ????????????? ???????????? ????? PWM: 0 ???????? ? ???????
	SEVTCMP = 0;

	// ============= ADC - Measure Current & Pot ======================
    // ADC setup for simultanous sampling on 
    //      CH0=AN13, CH1=AN0, CH2=AN1, CH3=AN2. 
    // Sampling triggered by PWM and stored in signed fractional form.

    // Signed fractional (DOUT = sddd dddd dd00 0000)
    AD1CON1bits.FORM = 3;    
	AD1CON1bits.SSRC = 3;
	AD1CON1bits.SSRCG = 0;
    // Simultaneous Sample Select bit (only applicable when CHPS = 01 or 1x)
    // Samples CH0, CH1, CH2, CH3 simultaneously (when CHPS = 1x)
    // Samples CH0 and CH1 simultaneously (when CHPS = 01)
    AD1CON1bits.SIMSAM = 1;  
    // Sampling begins immediately after last conversion completes. 
    // SAMP bit is auto set.
    AD1CON1bits.ASAM = 1;  


    AD1CON2 = 0;
    // Samples CH0, CH1, CH2, CH3 simultaneously (when CHPS = 1x)
    AD1CON2bits.CHPS = 2;  


    AD1CON3 = 0;
    // A/D Conversion Clock Select bits = 6 * Tcy
    AD1CON3bits.ADCS = 6;  


 /* ADCHS: ADC Input Channel Select Register */
    AD1CHS0 = 0;
    // CH0 is AN13 for POT
    AD1CHS0bits.CH0SA = 3;
    // CH1 positive input is AN0, CH2 positive input is AN1, CH3 positive input is AN2
    AD1CHS123bits.CH123SA = 0;

    /* ADCSSL: ADC Input Scan Select Register */
    AD1CSSL = 0;

    // Turn on A/D module
    AD1CON1bits.ADON = 1;

	// Wait until first conversion takes place to measure offsets.
	Delay(100);

    //Fault enabled 
    FCLCON1 = 0x00FD;  //Fault enabled Fault SRC - Fault 32
	FCLCON2 = 0x00FD;  //Fault enabled Fault SRC - Fault 32
	FCLCON3 = 0x00FD;  //Fault enabled Fault SRC - Fault 32
	return;
}



/*+++++++++++++++++++++++++++++++++++++++++++++++++  +++++++++++++++++++++++++++*/
/**************************************************  ****************************/
/* Function name: ResetPeriph                                                 */
/* Function parameters: None                                                  */
/* Function return: None                                                      */
/* Description: Reset the peripherals during runtime/reset configurations     */
/**************************************************  ****************************/
/*+++++++++++++++++++++++++++++++++++++++++++++++++  +++++++++++++++++++++++++++*/
void ResetPeriph(void)
{


    // clear and Enable ADC interrupt 
    IFS0bits.AD1IF = 0; 
    IEC0bits.AD1IE = 1;

   /* Initialise duty regs */ 
    PDC1 = MIN_DUTY;
    PDC2 = MIN_DUTY;
    PDC3 = MIN_DUTY;
    return;
Реклама:
Dtolok вне форума  
Непрочитано 25.02.2016, 00:36  
Dtolok
Гражданин KAZUS.RU
 
Регистрация: 28.11.2007
Адрес: харьков
Сообщений: 850
Сказал спасибо: 339
Сказали Спасибо 43 раз(а) в 23 сообщении(ях)
Dtolok на пути к лучшему
По умолчанию Re: dspic33 PWM

PTCON = 0x8000; - блин дурень! вместо того чтобы сбросить регистр просто его выдрал из программы!
Dtolok вне форума  
Непрочитано 25.02.2016, 01:00  
Dtolok
Гражданин KAZUS.RU
 
Регистрация: 28.11.2007
Адрес: харьков
Сообщений: 850
Сказал спасибо: 339
Сказали Спасибо 43 раз(а) в 23 сообщении(ях)
Dtolok на пути к лучшему
По умолчанию Re: dspic33 PWM

подскажите - ток на датчике фазы нарастает от минуса до плюса? или от нуля до минуса или плюса - как установлен датчик
Dtolok вне форума  
Непрочитано 01.03.2016, 13:26  
Dtolok
Гражданин KAZUS.RU
 
Регистрация: 28.11.2007
Адрес: харьков
Сообщений: 850
Сказал спасибо: 339
Сказали Спасибо 43 раз(а) в 23 сообщении(ях)
Dtolok на пути к лучшему
По умолчанию Re: dspic33 PWM

до включения модуля PWM по верхним ключам возникает меандр - откуда может быть?
Dtolok вне форума  
Непрочитано 09.03.2016, 23:34  
Dtolok
Гражданин KAZUS.RU
 
Регистрация: 28.11.2007
Адрес: харьков
Сообщений: 850
Сказал спасибо: 339
Сказали Спасибо 43 раз(а) в 23 сообщении(ях)
Dtolok на пути к лучшему
По умолчанию Re: dspic33 PWM

после отключения модуля PWM нужно порт перевести в состояние 0 и будет всем счастье
Dtolok вне форума  
Непрочитано 10.03.2016, 02:23  
Djakovskij
Вид на жительство
 
Регистрация: 14.06.2009
Адрес: Україна Київська обл. м.Буча
Сообщений: 327
Сказал спасибо: 104
Сказали Спасибо 105 раз(а) в 69 сообщении(ях)
Djakovskij на пути к лучшему
По умолчанию Re: dspic33 PWM

Наблюдение за половым актом -10$
Наблюдение за наблюдающим за половым актом - 20$
Djakovskij вне форума  
Сказали "Спасибо" Djakovskij
Easyrider83 (09.05.2016)
Непрочитано 09.05.2016, 23:16  
Dtolok
Гражданин KAZUS.RU
 
Регистрация: 28.11.2007
Адрес: харьков
Сообщений: 850
Сказал спасибо: 339
Сказали Спасибо 43 раз(а) в 23 сообщении(ях)
Dtolok на пути к лучшему
По умолчанию Re: dspic33 PWM

по ходу сам разобрался.. думал на форуме помогут
Dtolok вне форума  
 

Закладки
Опции темы

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
4-pin pwm cristof Микроконтроллеры, АЦП, память и т.д 0 05.08.2013 17:39
PWM НА PIC16F877A sprew Микроконтроллеры, АЦП, память и т.д 13 11.02.2011 09:48
mega168 16 bit PWM ReM37 Микроконтроллеры, АЦП, память и т.д 6 06.05.2010 00:36
Программирование AVR - Fase Correct PWM Mode и флаг TOV2 pinokio3000 Микроконтроллеры, АЦП, память и т.д 2 12.07.2005 12:44


Часовой пояс GMT +4, время: 13:01.


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