Hirdetés

Új hozzászólás Aktív témák

  • don_peter
    senior tag

    MPLAB-al zeró a tapasztalatom, a mikroe IDE-ket viszont nagyon tudom ajánlani! Van C, Pascal, Basic alapú is 8/16/32 bites PIC, AVR, 8051 és ARM procikhoz egyaránt. Maguk az IDE-k is tele vannak hasznos függvénykönyvtárakkal, valamint a libstock rendszerében is már rengeteg plussz anyagot töltöttek fel a lelkes felhasználók. A VisualTFT / VisualGLCD segítségével pedig egészen látványos grafikákat is össze lehet kalapálni viszonylag kevés tudással - jobban mondva segít elindulni, kitanulni az alapokat - később már nyilván egyre kevesebb dolognál fogja használni az ember a kész/félkész megoldásokat és egyre többet farag sajátokat...

    Igazából nem tudom hogy mennyire fér bele az általános C programozásba az ilyen téma, de azért leírhatnád hogy egyáltalán meddig jutottál el az élesztéssel, teszteléssel... Megy már valami csak bugos és nem tudsz úrrá lenni rajta, vagy már a PIC élesztéséig sem jutottál el?

    Köszönöm az ajánlásokat, de én még az a programozó vagyok aki a kódokat szereti látni és megtanulni őket leírni :D
    Természetesen megy az élesztés és kisebb programokat már írtam is mint pl.: while ciklusok számolása, nyomógombok használata magas és alacsony szintetek beállítása és kezelése, ledek villogtatása vagy éppen csak kapcsolgatása, és természetesen mindezek értékeit LCD-re kiíratom folyamatos frissítéssel.

    Alap programozói tapasztalataim a webes irányzatból vannak így némileg el tudok gravírozni az egyes főbb függvények közt. (HTML, CSS, JS, PHP SQL ismereteim vannak)

    A gondom az hogy elakadtam az analóg jelek bekérésénél és azok feldolgozásánál.
    Egyenlőre beállítom a PIC A0-ás lábára, hogy analóg bemenet legyen és a beépített ReadADC() függvénnyel próbálom kiolvasni a rákerülő jeleket.

    A fő program része:
    #include <p18f4550.h> //chip beállítása
    #include <stdio.h> //I/O portok beállítása
    #include <delays.h> //Időzítő
    #include <tesztheader.h>
    #include "lcd.c"
    #include <adc.h>
    #define ANALOG_IN ADC_CH0 //a potméter AN0-ra csatlakozik

    volatile unsigned char a;
    void main(){

    lcd_init(); // Az LCD modulinicializálása
    lcd_init_cgram(); // Az ékezetes betűk feltöltése
    stdout = _H_USER; // Az LCD legyen a standard kimenetnt

    TRISAbits.TRISA0 = 1; //analog A0 láb legyen bemenet
    ADCON0=0b00000001;
    OpenADC(ADC_FOSC_64 | ADC_RIGHT_JUST | ADC_20_TAD, ANALOG_IN | ADC_INT_OFF | ADC_REF_VDD_VSS, ADC_2ANA);

    TRISBbits.TRISB7 = 0;
    LATBbits.LATB7 = 1;

    while(1){
    a=0L;
    Delay10TCYx(80);
    a = ReadADC();
    printf("Valami %u", a);
    lcd_write(0xC0,0,1,1);

    }
    }

    Elviekben a header állományban minden deklarálva van ami szükséges lehet mivel a program nem figyelmeztet, hogy hiányolna valamit :D
    Előre is köszi a segítséget.

Új hozzászólás Aktív témák