Teade

Collapse

Foorumi reeglid.

Foorumi reeglistik on uuendatud. Palume tutvuda ja arvesse võtta.
See more
See less

STM32 Design Contest

Collapse
X
 
  • Filter
  • Kellaaeg
  • Show
Clear All
new posts

    #16
    Vs: STM32 Design Contest

    cortex proses pole vaja olnud asmi väänata aga ARM7 puhul küll. Raua suhtlused jms tasuks ikka C-s teha. ASM-i ARM-i puhul läks näiteks vaja startup puhul ja eriti mis muudutas Nested interrupte. ARM7 teatavasti puudub NVIC. Cortexil on aga jub aga NVIC sees seega pole vaja selle pärast ka muretseda. Startupil pole vaja ka erilist maagiat väänata. Aga noh ma tegelen STM cortex prosedega seega kasutan ST raua klotsi, seal pole speski vaja väga lapata ja rauaga ajusid väänata. Väike näide timer initist(tasub märkidaa etkuna timerid sarnased ja sama lib siis koodi teisel timeril kasutamine on käkitegu.)
    Kood:
        NVIC_InitTypeDef NVIC_InitStructure;
        TIM_TimeBaseInitTypeDef  TIM_TimeBaseStructure;
        TIM_OCInitTypeDef  TIM_OCInitStructure;
        ErrorStatus HSEStartUpStatus;
        GPIO_InitTypeDef GPIO_InitStructure;
    
    
    
        GPIO_PinRemapConfig(GPIO_FullRemap_TIM3, ENABLE);
        RCC_APB1PeriphClockCmd( RCC_APB1Periph_TIM3, ENABLE);
        RCC_APB2PeriphClockCmd(   RCC_APB2Periph_GPIOC , ENABLE);
    
    
       /*PWM IO config*/
      GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;
      GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
      GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
      GPIO_Init(GPIOC, &GPIO_InitStructure);
     
          /* Enable the TIM3 gloabal Interrupt */
      NVIC_InitStructure.NVIC_IRQChannel = TIM3_IRQChannel;
      NVIC_InitStructure.NVIC_IRQChannelSubPriority = 3;
      NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
      NVIC_Init(&NVIC_InitStructure);
    
    
    
      /* Time base configuration */
      TIM_TimeBaseStructure.TIM_Period = 71;
      TIM_TimeBaseStructure.TIM_Prescaler = 1;
      TIM_TimeBaseStructure.TIM_ClockDivision = 0;
      TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;
    
      TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure);
    
      /* PWM1 Mode configuration: Channel1 */
      TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1;
      TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;
      TIM_OCInitStructure.TIM_Pulse = 31;
      TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;
    
    
      TIM_OC4Init(TIM3, &TIM_OCInitStructure);
      TIM_OC4PreloadConfig(TIM3, TIM_OCPreload_Enable);
      
      TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_Timing;
      TIM_OCInitStructure.TIM_Pulse = 1;
      TIM_OC2Init(TIM3, &TIM_OCInitStructure);    
      TIM_OC2PreloadConfig(TIM3, TIM_OCPreload_Enable);
    
      TIM_ARRPreloadConfig(TIM3, ENABLE);
    
      /* TIM IT enable */
      TIM_ITConfig(TIM3, TIM_IT_CC2 , ENABLE);
      /* TIM3 enable counter */
      TIM_Cmd(TIM3, ENABLE);
    Modelleerimises ja tootmises kehtivad:
    1. Avariikindel vooluring lühistab kõik teised.
    2. Transistor, millel on kiiresti toimiv kaitse, säästab kaitset, sulades kõigepealt ise.

    Comment


      #17
      Vs: STM32 Design Contest

      Nädal peale regamist demoplaat käes.
      Ripendas lumetormis postkasti katuse vahele kilekoti servapidi surutult. Esialgu ei ole juhetki, et proovida. Tütar tuleb homme koju, võibolla tema valduses kõik need pleierite ja fotokate juhtmed.
      Olen varem vaadanud Winavr ja Mega 88. Hakkaski juba kitsaks jääma.
      Kavatsus teha omatehtud päikesevee süsteemi kontroller. A´la LM35 5tk, analoog rõhu kontroll 4-20mA, välisõhu temp PT100 4-20mA,Real time, RS-232 ja võibolla Nokia display kohapeale.
      Ei ole mingi programmeerija ja ei kavatse selleks ka hakata. Talvel võiks kontrolleriga veidi hullata küll.
      K.: Millist kompilaatorit hakata kasutama taoliste väikeprojektide jaoks?
      1.XDuino

      2.Atollic Lite

      3.Keil
      Create, build, and debug embedded applications for Arm-based microcontrollers.

      Jälgides demo koode, tundus esialgu üsna hirmutav STM32 tööks vajalike algsätete seadmine, aga võibolla see standartne kõigi projektide jaoks.
      NB! Müügimehed, ärge hakake mingit kontrollerit pakkuma. Tglt süsteem toimis juba teist suve ilma mingit lisaenergiat-kontrollerit raiskamatta. Soe tarbevesi olemas.
      A´la

      Comment


        #18
        Vs: STM32 Design Contest

        No KEIL kylge saab panna tasuta GCC.
        Ei ole seal midagi hirmuäratavat kui kasutad valmis klotse ST-lt.
        Iga raua kasutamise eel tuleb sellele CLK ja power confida.
        Vajadusel interrupt vector.
        Ja muidugi raua enda init.
        Võin abistada üle MSN-i muude asjade kõrvalt confimist+ koodinäited kui otsustad keil+GCC kasuks.
        Ehk kellelgi rohkem vaba aega/viitsimist ja teeb juhendi ka mu õpetuste baasil valmis.
        Võin selleks veebiruumi ka anda.
        Modelleerimises ja tootmises kehtivad:
        1. Avariikindel vooluring lühistab kõik teised.
        2. Transistor, millel on kiiresti toimiv kaitse, säästab kaitset, sulades kõigepealt ise.

        Comment

        Working...
        X