Embedded Systems and Power Electronics

Total Pageviews

About Me

My photo
I am currently a PhD student at UC Berkeley, following a 6-year journey working at Apple after my undergrad years at Cornell University. I grew up in Dhaka, Bangladesh where my interest in electronics was cultivated, resulting in the creation of this blog.

BTemplates.com

Powered by Blogger.

Jan 6, 2011

16 comments:

  1. Please give us the schematic and code.
    Regargs.

    ReplyDelete
  2. where is the schematic MR tahmid and the code

    ReplyDelete
  3. Pls help with schematic with code here is my email: abduldesigner007@gmail.com

    ReplyDelete
  4. Hello, kindly share the controller hex file or C code.

    ReplyDelete
  5. hello Mr. Tahmid , I am ravi kumar yadaw from chennai(India). Do you have any idea about 18 scr based 3 phase to 3 phase cycloconverter. if yes then please send pulse pattern for gate control and how to change frequency as well as firing angle... please reply fast .. i am using FPGA (SPARTAN6) as a controller. i am waiting for your positive response.

    ReplyDelete
  6. This is very nice I want to build this but I can't see the codes sir please sir upload them.

    ReplyDelete
  7. //----------------------------------------------------------------------------------------
    //Programmer: Syed Tahmid Mahbub
    //Target Microcontroller: PIC16F684
    //Compiler: mikroC PRO for PIC (Can easily port to any other compiler)
    //-----------------------------------------------------------------------------------------

    unsigned char sin_table[32]={0,25,49,73,96,118,137,
    159,177,193,208,220,231,239,245,249,250,249,245,
    239,231,220,208,193,177,159,137,118,96,73,49,25};


    unsigned int TBL_POINTER_NEW, TBL_POINTER_OLD, TBL_POINTER_SHIFT, SET_FREQ;
    unsigned int TBL_temp;
    unsigned char DUTY_CYCLE;

    void interrupt(){
    if (TMR2IF_bit == 1){
    TBL_POINTER_NEW = TBL_POINTER_OLD + SET_FREQ;
    if (TBL_POINTER_NEW < TBL_POINTER_OLD){
    CCP1CON.P1M1 = ~CCP1CON.P1M1; //Reverse direction of full-bridge
    }
    TBL_POINTER_SHIFT = TBL_POINTER_NEW >> 11;
    DUTY_CYCLE = TBL_POINTER_SHIFT;
    CCPR1L = sin_table[DUTY_CYCLE];
    TBL_POINTER_OLD = TBL_POINTER_NEW;
    TMR2IF_bit = 0;
    }
    }

    void main() {
    SET_FREQ = 410;
    TBL_POINTER_SHIFT = 0;
    TBL_POINTER_NEW = 0;
    TBL_POINTER_OLD = 0;
    DUTY_CYCLE = 0;
    ANSEL = 0; //Disable ADC
    CMCON0 = 7; //Disable Comparator
    PR2 = 249;
    TRISC = 0x3F;
    CCP1CON = 0x4C;
    TMR2IF_bit = 0;
    T2CON = 4; //TMR2 on, prescaler and postscaler 1:1
    while (TMR2IF_bit == 0);
    TMR2IF_bit = 0;
    TRISC = 0;
    TMR2IE_bit = 1;
    GIE_bit = 1;
    PEIE_bit = 1;

    while(1);
    }
    //-------------------------------------------------------------------------------------
    PLZ CONVERT INTO HEX
    PLZZZZZZZZ

    ReplyDelete
  8. //----------------------------------------------------------------------------------------
    //Programmer: Syed Tahmid Mahbub
    //Target Microcontroller: PIC16F684
    //Compiler: mikroC PRO for PIC (Can easily port to any other compiler)
    //-----------------------------------------------------------------------------------------

    unsigned char sin_table[32]={0,25,49,73,96,118,137,
    159,177,193,208,220,231,239,245,249,250,249,245,
    239,231,220,208,193,177,159,137,118,96,73,49,25};


    unsigned int TBL_POINTER_NEW, TBL_POINTER_OLD, TBL_POINTER_SHIFT, SET_FREQ;
    unsigned int TBL_temp;
    unsigned char DUTY_CYCLE;

    void interrupt(){
    if (TMR2IF_bit == 1){
    TBL_POINTER_NEW = TBL_POINTER_OLD + SET_FREQ;
    if (TBL_POINTER_NEW < TBL_POINTER_OLD){
    CCP1CON.P1M1 = ~CCP1CON.P1M1; //Reverse direction of full-bridge
    }
    TBL_POINTER_SHIFT = TBL_POINTER_NEW >> 11;
    DUTY_CYCLE = TBL_POINTER_SHIFT;
    CCPR1L = sin_table[DUTY_CYCLE];
    TBL_POINTER_OLD = TBL_POINTER_NEW;
    TMR2IF_bit = 0;
    }
    }

    void main() {
    SET_FREQ = 410;
    TBL_POINTER_SHIFT = 0;
    TBL_POINTER_NEW = 0;
    TBL_POINTER_OLD = 0;
    DUTY_CYCLE = 0;
    ANSEL = 0; //Disable ADC
    CMCON0 = 7; //Disable Comparator
    PR2 = 249;
    TRISC = 0x3F;
    CCP1CON = 0x4C;
    TMR2IF_bit = 0;
    T2CON = 4; //TMR2 on, prescaler and postscaler 1:1
    while (TMR2IF_bit == 0);
    TMR2IF_bit = 0;
    TRISC = 0;
    TMR2IE_bit = 1;
    GIE_bit = 1;
    PEIE_bit = 1;

    while(1);
    }
    //-------------------------------------------------------------------------------------
    PLZ CONVERT INTO HEX
    PLZZZZZZZZ

    ReplyDelete
  9. Can we use this spwm code for 3 phase inverter with required switching frequency is 20 kHz

    ReplyDelete
  10. Please send me the schematic and code...i want to try it...by the way i'm from indonesia....this is my email (hery.potler@gmail.com)

    ReplyDelete
  11. Why you are begging him he is gonna give you nothing....

    ReplyDelete
  12. Pls help with schematic with code here is my email: p4.npcpctb@gmail.com

    ReplyDelete
  13. please I need the code and schematic diagram.

    Thanks.

    ReplyDelete