Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 7 odgovora
  • 2.504 pregleda

Najnovija ↓

Stellaris Evalution Kit-EKK LM3S8962 25.02.2011. u 13:50 · pre 190 meseci #1
Postovana gospodo, radim sa gore pomenutom opremom i u fazi sam provaljivanja. Radio sam primere gde sam koristio GPIO pinove, tajmere, PWM, ispisivao svasta na ekran, crtao a sada sam zapeo kod analognog komparatora. Kao analognu vrednost koristim obican potenciometar ciji su krajevi na +3,3V , GND a srednji sam prosledio na PB6, odnosno C+ ulaz. CIlj mi je da imam indikaciju da je testirani napon (srednji kraj pot.) visi ili nizi od internog referentnog napona.

Pozdrav i hvala!
Re: Stellaris Evalution Kit-EKK LM3S8962 25.02.2011. u 14:30 · pre 190 meseci #2
to je neki cortex m3?

probaj ovako:

Code:

#include "inc/hw_types.h"
#include "driverlib/debug.h"
#include "driverlib/sysctl.h"
#include "drivers/rit128x96x4.h"

#include "driverlib/comp.c"
#include "driverlib/comp.h"
#include "driverlib/adc.c"
#include "driverlib/adc.h"
#include "driverlib/gpio.c"
#include "driverlib/gpio.h"

#include <stdio.h>
#include <LM3Sxxxx.H>           // LM3Sxxxx library definitions

int i;

//*****************************************************************************
//
// The error routine that is called if the driver library encounters an error.
//
//*****************************************************************************
#ifdef DEBUG
void
__error__(char *pcFilename, unsigned long ulLine)
{
}
#endif

int
main(void)
{
    //
    // Set the clocking to run directly from the crystal.
    //
    SysCtlClockSet(SYSCTL_SYSDIV_1 | SYSCTL_USE_OSC | SYSCTL_OSC_MAIN | SYSCTL_XTAL_8MHZ);

    SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOE);                                                     // dozvola rada porta E
    SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF);                                                     // dozvola rada porta F
    SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOC);                                                     // dozvola rada porta C
    SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOG);                                                     // dozvola rada porta G
    SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOD);                                                     // dozvola rada porta D
    SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA);                                                     // dozvola rada porta A
    SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB);                                                     // dozvola rada porta B

    GPIOPinTypeComparator(GPIO_PORTB_BASE,GPIO_PIN_6);
    GPIOPadConfigSet(GPIO_PORTB_BASE, GPIO_PIN_6, GPIO_STRENGTH_2MA, GPIO_PIN_TYPE_ANALOG);
    ComparatorRefSet(COMP_BASE, COMP_REF_2_371875V);
    ComparatorConfigure(COMP_BASE, 0, (COMP_TRIG_NONE | COMP_INT_BOTH | COMP_ASRCP_REF | COMP_OUTPUT_NORMAL));


    //
    // Initialize the OLED display.
    //
    RIT128x96x4Init(1000000);

    RIT128x96x4StringDraw("Analog comparator",  15,  6, 12);
    RIT128x96x4StringDraw("      test...",         15, 15, 12);
    RIT128x96x4StringDraw("Comparator:", 0, 40, 12);
    RIT128x96x4StringDraw("***Set...", 0, 50, 12);
    RIT128x96x4StringDraw("***Configured...", 0, 60, 12);

    for(i=0;i<10000;i++);
 
    while(1){
        if(ComparatorValueGet(COMP_BASE, 0)){
            RIT128x96x4StringDraw("HIGH", 0, 80, 12);
        }else{
            RIT128x96x4StringDraw("LOW ", 0, 80, 12);
        }
    
    }
}
Potpis
arhimed
http://www.mysql.rs/ | http://elco.crsndoo.com/
Re: Stellaris Evalution Kit-EKK LM3S8962 25.02.2011. u 14:33 · pre 190 meseci #3
takodje proveri da li mozda treba da dovedes analogni signal na B4 a ne na B6 .. tj

Code:

    GPIOPinTypeComparator(GPIO_PORTB_BASE,GPIO_PIN_4);
    GPIOPadConfigSet(GPIO_PORTB_BASE, GPIO_PIN_4, GPIO_STRENGTH_2MA, GPIO_PIN_TYPE_ANALOG);


ne secam se vise gde to ide, batalio sam TI arm verziju ... ST mi se mnogo vise svidja
Potpis
arhimed
http://www.mysql.rs/ | http://elco.crsndoo.com/
Re: Stellaris Evalution Kit-EKK LM3S8962 25.02.2011. u 14:53 · pre 190 meseci #4
U sustini meni funkcije tipa:

RIT128x96x4StringDraw("Comparator:", 0, 40, 12);
RIT128x96x4StringDraw("***Set...", 0, 50, 12);

uopste ne trebaju. Koristim ih samo posle funkcija konfigurisanja kako bih video dokle program radi jer se desavalo da prodje kroz jednu funkciju ali blokira na sledecoj nego ok. PB6 i PB4 su analogni ulazi gde je PB4 (C-) eksterni referentni napon a PB6 test napon, obzirom da koristim interni ref. napon C- mi ne treba...valjda. Mada probao sam i na PB6 i na PB4 da dovedem an. ulaz i ne radi. Inace u pitanju je ARM® Cortex™-M3...
Re: Stellaris Evalution Kit-EKK LM3S8962 25.02.2011. u 15:14 · pre 190 meseci #6
Na zalost ne radi, probao sam upravo. Displej ne prikazuje apsolutno nista. Problem pravi "COMP_BASE", kada ga zamenim sa "GPIO_PORTB_BASE" prolazi ali komparator se i dalje ne odaziva. Nigde na netu nisam nasao primer za AC...
Re: Stellaris Evalution Kit-EKK LM3S8962 25.02.2011. u 15:31 · pre 190 meseci #7
cudno .. u library pdf-u stoji comp_base ..

pogledaj http://e2e.ti.com/support/micr...ller/f/471/p/46476/163353.aspx
i http://e2e.ti.com/support/micr...ller/f/476/p/68827/249149.aspx

ovaj prvi je za lm3s800 i on gadja D7 --> GPIODirModeSet( GPIO_PORTD_BASE , GPIO_PIN_7 , GPIO_DIR_MODE_HW) ;

ovaj drugi je LM3S9B96-DK (mislim da ima isti mcu kao tvoj board, isto B4 minus i B6 plus) ... on doduse koristi interapt ali konfiguracija je ista .. (on je vezao pot na - ulaz ac-a) .. probaj njegov kod ..

sve u svemu - http://e2e.ti.com/support/micr...microcontroller/f/default.aspx - je pravo mesto za pretragu i postavljanje pitanja ... ima dosta ljudi tamo koji znaju znanje a ima i par likova koji rade za TI koji tu daje odgovore .. tako da za neke stvari za koje nema teorije da bi provalio sam bez nekog extra iskustva dobijes odgovor :) .. vrlo iskusno .. forum jeste malo ruznjikav al .. vredi

inace, ovaj drugi link - lik je rekao da mu je CAN modul pravio problem, a inace se na netu spominju i neki jumperi ... (nisam video taj dev board nikad, kao sto rekoh ja sam odlucio da koristim STM32 za cortex m3 posto mi se nekako vise svidja, ali kapiram da ima neke jumpere koji biraju sta je gde vezano posto ako ti je neki externi modul vezan za te Bx pinove mozda moras da ga jumperima otkacis da bi imao pristup nesmetan na ac)
Potpis
arhimed
http://www.mysql.rs/ | http://elco.crsndoo.com/
Re: Stellaris Evalution Kit-EKK LM3S8962 25.02.2011. u 16:13 · pre 190 meseci
izmenjeno 1 put, poslednji put Brelak 25.02.2011. u 17:49
  1. Brelak25.02.2011. u 17:49zapis iz teksta poruke
#8
Ok, problem je resen! Hvala Bogdane, linkovi su bili od koristi. Problem je bio taj sto sam umesto COMP_BASE pisao GPIO_PORTB_BASE, gde je prvi "unsigned long ulPort" a drugi "unsigned long ulBase". Prikacio sam kod pa kome treba neka koristi kao referencu.

Funkcije:

GPIOPinTypeComparator(GPIO_PORTB_BASE,GPIO_PIN_6);
GPIOPadConfigSet(GPIO_PORTB_BASE, GPIO_PIN_6, GPIO_STRENGTH_2MA, GPIO_PIN_TYPE_ANALOG);

su u ovom primeru visak, program radi i bez njih.
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme