Fórum témák

» Több friss téma
Fórum » PIC programozás mikroC fejlesztőkörnyezetben
Lapozás: OK   2 / 10
(#) röntgen válasza Programmer hozzászólására (») Ápr 15, 2012 /
 
Köszi az infót, valszeg megfogadom.
(#) Krisszes hozzászólása Júl 12, 2012 /
 
Sziasztok,

az lenne a kérdésem, hogy miért nem tudok "valós" idejű szimulációt végezni a mikroc-ben? (csak akkor frissül a watch ablak tartama ha az kurzort áthúzom rajta)
(#) djadji hozzászólása Júl 13, 2012 /
 
Hello!

Mit tudok tenni, ha program hiányolja a pic16f628a.h file-t? Már bemásoltam neki a mappába, hozzá is adtam a projecthez (igaz csak utólag, de ez nem gond remélem). Mégis fordításkor beszól, hogy nincs meg a file.
Amikor Leszedtem egy másik ilyen file-t a netről, amost meg amikro fordítani akarom, akkor megnyílik egy új ablak a MikroC-ben és ott néz rám ez a 628a.h file.
Lehet hogy nem jót töltöttem le? Tud nekem adni valaki egy oldalt ahol érdemes leszedni? (
(ez lenne az első kisérletem és szeretném azt tudni, hogy működik e egyáltalán az égető).

Tök kezdő vagyok, és nem tudom hogy miket is kell a program elején megadnom. PL hogy belső órajelet akarok használni, azt hol, hogyan adom meg? A program elején, vagy az Edit Project -en belül lehet ezt meghatározni?
Tudom van a honlapon egy kezdő program leírás, de az szerintem nem ad magyarázatot semmire sem.
(#) user hozzászólása Aug 16, 2012 /
 
Hi!

Mikroc-ben talátam egy programot ds1820-as hőmérőre, és egy megadott hőmérsékletre kellene bekapcsolnom egy relét.A pic16f877-es mikro jól kiírja lcd-re a hőmérsékletet,de a 28 fok elérésekor nem kapcsolja be a relét, ami RB0-n van. A kapcsolást proteusban szimulálom,de a mikroc kódban nem tudom hogy mit kellene módosítani hogy a feltétel jó legyen.Tudna ebben valaki segíteni?

  1. // LCD module connections
  2. sbit LCD_RS at RD0_bit;
  3. sbit LCD_EN at RD1_bit;
  4. sbit LCD_D4 at RD4_bit;
  5. sbit LCD_D5 at RD5_bit;
  6. sbit LCD_D6 at RD6_bit;
  7. sbit LCD_D7 at RD7_bit;
  8.  
  9. sbit LCD_RS_Direction at TRISD0_bit;
  10. sbit LCD_EN_Direction at TRISD1_bit;
  11. sbit LCD_D4_Direction at TRISD4_bit;
  12. sbit LCD_D5_Direction at TRISD5_bit;
  13. sbit LCD_D6_Direction at TRISD6_bit;
  14. sbit LCD_D7_Direction at TRISD7_bit;
  15. // End LCD module connections
  16.  
  17. //  Set TEMP_RESOLUTION to the corresponding resolution of used DS18x20 sensor:
  18. //  18S20: 9  (default setting; can be 9,10,11,or 12)
  19. //  18B20: 12
  20.  
  21. const unsigned short TEMP_RESOLUTION = 9;
  22.  
  23. char *text = "000.0000";
  24. unsigned temp;
  25.  
  26.  
  27. void Display_Temperature(unsigned int temp2write) {
  28.   const unsigned short RES_SHIFT = TEMP_RESOLUTION - 8;
  29.   char temp_whole;
  30.   unsigned int temp_fraction;
  31.  
  32.   // Check if temperature is negative
  33.   if (temp2write & 0x8000) {
  34.      text[0] = '-';
  35.      temp2write = ~temp2write + 1;
  36.      }
  37.      
  38.   // Extract temp_whole
  39.   temp_whole = temp2write >> RES_SHIFT ;
  40.  
  41.   // Convert temp_whole to characters
  42.   if (temp_whole/100)
  43.      text[0] = temp_whole/100  + 48;
  44.   else
  45.      text[0] = '0';
  46.  
  47.   text[1] = (temp_whole/10)%10 + 48;   // Extract tens digit
  48.   text[2] =  temp_whole%10     + 48;         // Extract ones digit
  49.  
  50.   // Extract temp_fraction and convert it to unsigned int
  51.   temp_fraction  = temp2write << (4-RES_SHIFT);
  52.   temp_fraction &= 0x000F;
  53.   temp_fraction *= 625;
  54.  
  55.   // Convert temp_fraction to characters
  56.   text[4] =  temp_fraction/1000    + 48; // Extract thousands digit
  57.   text[5] = (temp_fraction/100)%10 + 48;//Extract hundreds digit
  58.   text[6] = (temp_fraction/10)%10  + 48; // Extract tens digit
  59.   text[7] =  temp_fraction%10      + 48;     // Extract ones digit
  60.  
  61.   // Print temperature on LCD
  62.   Lcd_Out(2, 5, text);
  63.  
  64.   if(temp == 0x00)       //itt kellene a feltétélt megadni,ami 28fok
  65.     {
  66.     PORTB.B0 = 0x01;
  67.     Lcd_Out(1, 1, "Hatarertek");
  68.     }
  69.     PORTB.B0 = 0x00;
  70.  
  71. }
  72.  
  73. void main() {
  74.   ADCON1=0x06;
  75.   TRISB=0;
  76.   PORTB=0;
  77.  
  78.   Lcd_Init();       // Initialize LCD
  79.   Lcd_Cmd(_LCD_CLEAR);    // Clear LCD
  80.   Lcd_Cmd(_LCD_CURSOR_OFF);// Turn cursor off
  81.   Lcd_Out(1, 1, " Temperature:   ");
  82.   // Print degree character, 'C' for Centigrades
  83.   Lcd_Chr(2,13,223);// Different LCD displays have different char code for degree
  84. // If you see greek alpha letter try typing 178 instead of 223
  85.  
  86.   Lcd_Chr(2,14,'C');
  87.  
  88.   //Main loop
  89.   do {
  90.     //--- Perform temperature reading
  91.     Ow_Reset(&PORTE, 1);// Onewire reset signal
  92.     Ow_Write(&PORTE, 1, 0xCC);// Issue command SKIP_ROM
  93.     Ow_Write(&PORTE, 1, 0x44);// Issue command CONVERT_T
  94.     Delay_us(120);
  95.  
  96.     Ow_Reset(&PORTE, 1);
  97.     Ow_Write(&PORTE, 1, 0xCC);// Issue command SKIP_ROM
  98.     Ow_Write(&PORTE, 1, 0xBE);// Issue command READ_SCRATCHPAD
  99.  
  100.     temp =  Ow_Read(&PORTE, 1);
  101.     temp = (Ow_Read(&PORTE, 1) << 8) + temp;
  102.  
  103.     //--- Format and display result on Lcd
  104.     Display_Temperature(temp);
  105.    
  106.     Delay_ms(500);
  107.   } while (1);
  108. }

picplc_6.DSN
    
(#) vilmosd válasza user hozzászólására (») Aug 16, 2012 /
 
Mondjuk igy nem is kapcsolja be csak egy rovid idore. Talan "if...else" modon kellene a kimenetet vezerelni. A Te programod igy nez ki (a komparalas):
  1. if(temp == 0x00)       //itt kellene a feltétélt megadni,ami 28fok
  2.     {
  3.     PORTB.B0 = 0x01;
  4.     Lcd_Out(1, 1, "Hatarertek");
  5.     }
  6.     PORTB.B0 = 0x00;
Mi is tortenik itt? Amikor a temp valtozo erteke azonos a (jelen pillanatban) 0x00 ertekkel, H szintre allitod a kimenetet, de rogton utana L szintet adsz ki ra, tehat ki is kapcsolod a relet. Talan ebben a valtozatban inkabb mukodne:
  1. if(temp >= 0x1C)       //itt kellene a feltétélt megadni,ami 28fok
  2.     {
  3.     PORTB.B0 = 0x01;
  4.     Lcd_Out(1, 1, "Hatarertek");
  5.     }
  6.     else
  7.     PORTB.B0 = 0x00;
Figyelj a komparalasra mert a "nagyobb-egyenlo" a helyes, nem az "azonos".
(#) user válasza vilmosd hozzászólására (») Aug 17, 2012 /
 
Működött, köszönöm.
(#) Villamos hozzászólása Feb 11, 2013 /
 
Sziasztok. Nekem az lenne a kérdésem, hogy bírom meg csinálni hogy 0 foknál kiírja a pic (FAGYVESZÉLY). Legyetek szívesek segíteni. Még csak amatőr szinten vagyok a programozással.
És még annyit hogy lehet proggres bar-t csinálni nem találok minta programokat csak basic-ban nekem meg mikroC van és ez tanulom jó ideje és gomb nyomásra kiírjon nekem valamit hogy lehet meg oldani ehez se találok minta programot??!!!!! Segítsetek legyetek szívesek.
(#) Villamos válasza Villamos hozzászólására (») Feb 13, 2013 /
 
Megint én vagyok megtaláltam a nyomógomb kezelését a mikroC-hez de nem jól működik mert mihelyt elér a pic a nyomógomb parancshoz a kijelzőről elmegy a hőmérő és a volt mérő és csak reset után jön vissza de utána megint elmegy hol lehet a hiba vagy rosszul raktam össze a programot. Mellékelem a fájlokat létszíves nézzétek már át nekem. Előre is köszönöm.
(#) janimester hozzászólása Okt 5, 2013 /
 
Üdv. Facebookon csinálok egy csoportot Mikroc for PIC Hungary néven akinek van facebookja és szeretne csatlakozni kérem szóljon üzenetben. A csoport célja az lenne hogy egymáson segítsünk és megosszuk az érdekes projekteket, legalább egy ember kellene hogy el tudjam indítani. És bocsi az offolásért. Időközben sikerült elindítanom a csoportot itt az elérhetőség : Bővebben: Link
A hozzászólás módosítva: Okt 5, 2013
(#) baracklekvár hozzászólása Okt 27, 2013 /
 
Sziasztok! nagy bajban vagyok mert rám bíztak egy feladatot és nem tudom hol kezdjek bele. arról lenne szó hogy egy illető azt kérte tőlem hogy
Idézet:
„Fényképezőgép kioldására használnám hang hatására. Pl. egy poharat összetörök kalapáccsal, és le akarom fotózni a pohár törését. így, amikor megütöm a poharat, akkor, vagy utána az általam beállított késleltetéssel oldja ki a gépet a távkioldó.
Vagy egy léggömböt kipukkantok. Stb. [...] A késleltetés kb. századmásodpercek lehetnek ilyenkor (tized másodpercekig), habár még sosem mértem ki ezt pontosan.
A kioldó egyszerű legyen, 1-2 ceruzaelemmel működjön, a késleltetést egy potméterrel lehessen állítani (nem kell kalibrálni és nem kell túl nagy idő intervallum sem) és legyen rajta egy 2,5 vagy 3.5 mm-es jack dugó kimenet, amin keresztül a fényképezőgéphez lehet csatlakoztatni.”

valaki meg tudná nekem mutatni hogy hogyan kell csinálni naon kezdő vagyok erre kéne megírni a progit: PIC10F222
A hozzászólás módosítva: Okt 27, 2013
(#) marty hozzászólása Jan 10, 2014 /
 
Sziasztok!

Írtam egy egyszerű kis programot hogy a pic16F887-es pic-em egy 7 szegmenses kijelzőn elszámoljon 9 ig. Sajnos nem tudok bemenetet beállítani még mindig, a példaprogram nekem nem működik és hiába olvasgatok nem jövök rá hogyan is lehetne jól megcsinálni. Tudnátok segíteni hogy mit kellene módosítanom ezen a kódon hogy ha azt akarom hogy PORTC nulladik bitje ha kap +5v -t akkor indítsa el a számolást addig amíg el nem engedem ?

Sokat segítene a tanulásban köszi.
  1. void main() {
  2.  
  3.   ANSEL  = 0;                                  
  4.   ANSELH = 0;
  5.   C1ON_bit = 0;                                  
  6.   C2ON_bit = 0;
  7.  
  8.   TRISB = 0x00;                                
  9.  
  10.   do {
  11.  
  12.  
  13.      PORTB = 0x86;
  14.      Delay_ms(200);
  15.      PORTB = 0x00;
  16.      PORTB = 0xDB;
  17.      Delay_ms(200);
  18.      PORTB = 0x00;
  19.      PORTB = 0xCF;
  20.      Delay_ms(200);
  21.      PORTB = 0x00;
  22.      PORTB = 0xE6;
  23.      Delay_ms(200);
  24.      PORTB = 0x00;
  25.      PORTB = 0xED;
  26.      Delay_ms(200);
  27.      PORTB = 0x00;
  28.      PORTB = 0xFD;
  29.      Delay_ms(200);
  30.      PORTB = 0x00;
  31.      PORTB = 0x87;
  32.      Delay_ms(200);
  33.      PORTB = 0x00;
  34.      PORTB= 0xFF;
  35.      Delay_ms(200);
  36.      PORTB = 0x00;
  37.      PORTB = 0xEF;
  38.      Delay_ms(200);
  39.      PORTB = 0x00;
  40.      } while(1);                                  
  41.      }
A hozzászólás módosítva: Jan 11, 2014
(#) Iryon válasza marty hozzászólására (») Feb 18, 2014 /
 
Szia,

nem a legelegánsabb, de működik. annyi hogy így mindig elszámol 9-ig.

  1. void main(){
  2.  
  3.   ANSEL  = 0;
  4.   ANSELH = 0;
  5.   C1ON_bit = 0;
  6.   C2ON_bit = 0;
  7.  
  8.   TRISB = 0x00;
  9.   PORTB = 0x00;
  10.  
  11.   TRISC = 0x01;
  12.   PORTC = 0x00;
  13.  
  14.   if (PORTC_B0 == 1){
  15.   do{
  16.  
  17.      PORTB = 0x86;
  18.      Delay_ms(200);
  19.      PORTB = 0x00;
  20.      PORTB = 0xDB;
  21.      Delay_ms(200);
  22.      PORTB = 0x00;
  23.      PORTB = 0xCF;
  24.      Delay_ms(200);
  25.      PORTB = 0x00;
  26.      PORTB = 0xE6;
  27.      Delay_ms(200);
  28.      PORTB = 0x00;
  29.      PORTB = 0xED;
  30.      Delay_ms(200);
  31.      PORTB = 0x00;
  32.      PORTB = 0xFD;
  33.      Delay_ms(200);
  34.      PORTB = 0x00;
  35.      PORTB = 0x87;
  36.      Delay_ms(200);
  37.      PORTB = 0x00;
  38.      PORTB= 0xFF;
  39.      Delay_ms(200);
  40.      PORTB = 0x00;
  41.      PORTB = 0xEF;
  42.      Delay_ms(200);
  43.      PORTB = 0x00;
  44.      } while(1);
  45.    }
  46. }
(#) janimester hozzászólása Feb 23, 2014 /
 
Sziasztok, valaki nem tud valami forrást c-ben arra hogy a kijelzőn pl. az ADC értéket BAR-graph kijelzéssel is ki tudjam íratni?
(#) Schliemann hozzászólása Nov 16, 2014 /
 
Üdv!
Tudna nekem valaki segíteni egy ST7920 GLCD bekötésében?
Illetve valami egyszerű tesztprogramot hozzá, mikroC-ben?
PIC16F887-el szeretném működtetni.

Köszönöm
(#) ebyborz hozzászólása Jan 2, 2015 /
 
Üdv!

Szeretnék belekezdeni egy szervó vezérlős projektbe. No eddig nem lenne érdekes.
Android alkalmazással szeretném állítani az értékeket. Nézegettem már erre hajazó dolgokat (Pl.: Andoid IOIO bord) de ezek telefon készülék nélkül buták. Mindenképpen önálló működésre képesnek kell lennie.

A probléma még az is hogy ilyet sosem csináltam. Nem tiszta hogy mik a kezdő lépések.

Ha valaki csinált már ilyet és megosztaná velem tapasztalatait azt nagyon megköszönném.
(#) csiberaptor hozzászólása Jan 28, 2015 /
 
A librarykat szeretném megnyitni, de a .mcl kiterjesztés miatt nem sikerült eddig. Próbáltam több programmal, de a legjobb eddig a sima notepad volt, de még ott sem jelent meg normálisan.
Ötlet?
(#) Hp41C válasza csiberaptor hozzászólására (») Jan 28, 2015 /
 
Ezek lefordított library -k, a linker tudja kezelni őket.
(#) Henrik1996 hozzászólása Feb 10, 2015 /
 
Sziasztok, segítséget szeretnék kérni.
van egy char-om ami txt[20]-ként van megadva, tehát:
char txt[20];

Ezt szeretném valahogy egy 18F2550-es EEPROMjába beleerőszakolni.
Tudnátok segíteni?, mert teljesen elakadtam, hogy hogyan oldjam meg a dolgot.

a char tartalma: "teszt szoveg"
(#) Hp41C válasza Henrik1996 hozzászólására (») Feb 11, 2015 /
 
Byte -onként, ahogy az EEPROM library -ban le van írva.
A hozzászólás módosítva: Feb 11, 2015
(#) matheattila válasza lastewer hozzászólására (») Máj 3, 2015 /
 
Szia,

Itt van egy program részlet egy régebbi programomból (mikroC-ben), 18F4620-ra, 10MHz-es kvarccal és PLL-el.
Itt a timer0-t használtam egy 20ms-os megszakításra, minden 20ms-ban generálódik egy megszakítás, amit magas priorításúra állítottam. Semmilyen változtatást nem végez a portokon, de bármit beállíthatsz a megadott helyeken.
Ha egyszerre több megszakítást akarsz használni akkor ugyanúgy teszel még if-eket mint a timer0 esetén.
  1. /*##### MAIN #####*/
  2. void main(void){
  3.         /*****  INIT  *****/
  4.         TRISD = 0x00;
  5.         PORTD = 0x00;
  6.  
  7.         INTCON.GIEH  = 1;     // Enables high priority interrupts
  8.         INTCON.GIEL  = 1;     // Enables low priority interrupts
  9.         RCON.IPEN  = 1;       // Enables interrupt priority
  10.  
  11.         /*****  TIMER 0  *****/
  12.         T0CON = 0b10000011;   // TMR0 16 bit, TMR0 OFF, presc ON, presc = 16
  13.         TMR0H = 0xCF;         // Fosc=40MHz, F=40MHz/4 = 10MHZ =>  T = 0.1 us
  14.         TMR0L = 0x2C;         // [:16], 20ms => 65536 - 12500(20ms/16*0.1us) = 53036 = 0xCF2C
  15.         INTCON2.TMR0IP = 1;   // TIMER 0 priority is high
  16.  
  17.         INTCON.TMR0IE  = 1;   // TMR0 Interrupt Enable
  18.         T0CON.TMR0ON = 1;     // TMR0 ON
  19.  
  20.         while(1)
  21.         {
  22.                         //main program
  23.         }
  24. }
  25.  
  26. /*#####  HIGH PRIORITY INTERRUPTS  #####*/
  27. void interrupt( void )
  28. {
  29.         /*++++++++++  20ms INTERRUPT  +++++++++*/
  30.         if (INTCON.TMR0IF && INTCON.TMR0IE)
  31.         {
  32.                 INTCON.TMR0IF = 0;
  33.                 INTCON.TMR0IE = 0;
  34.                 T0CON.TMR0ON = 0;
  35.                 TMR0H  = 0xCF;
  36.                 TMR0L  = 0x2C;
  37.                 // any other settings here
  38.                 T0CON.TMR0ON = 1;
  39.                 INTCON.TMR0IE = 1;
  40.         }
  41. }
  42. /*#####  LOW PRIORITY INTERRUPTS  #####*/
  43. void interrupt_low( void )
  44. {
  45.         // low priority interrupt handling
  46. }
  47. /*#####   END OF PROGRAM  #####*/
(#) lastewer válasza matheattila hozzászólására (») Máj 3, 2015 /
 
Köszönöm. Nem vagyok képben teljesen a megszakításokat illetően.

Van egy 8 Mhz-s kvarcom amivel hajtom a pic18f4520-at. Tehát ezt a kvarcot rá kell kötnöm valamelyik interrupt lábára a picnek?
(#) matheattila válasza lastewer hozzászólására (») Máj 3, 2015 /
 
Ez itt megint OFF, mert a kedves moderátor ezt is áthelyezi majd valahova, hogy aztán még véletlenül se lehessen megkapni a választ a kérdésre!!!
Az adott kvarcnak semmi köze a megszakításhoz, én csak azért említettem meg, hogy tisztában legyél a timer beállításokkal ha komolyabban utána akartál volna számolni...
A megszakításokkal csak annyi a dolgod, hogy be kell kapcsolni őket a használni kívánt perifériánál (a példámban a 15 és 17. sorok) de mindezekhez a globális megszakítást is engedélyezni kell, különben nem fog megszakítás generálódni. Természetesen nem muszáj alacsony és magas priorításokat is használni, elég csak egyiket is, de így a biztosabb. Persze ez függ a perifériától is, mert azért mindegyik rá van kötve valamelyikre hardveresen így csak úgy tudod használni (nézd meg részletesen az adatlap Interrupts fejezetét).
Miután megfelelően beállítottad az adott perifériát es engedélyezted a megszakítást nincs is más dolgod mint kezelni őket. Ehhez van a két függvény (interrupt és interrupt_low), ezeknek ez a neve, így kell használni őket, amit ezekbe írsz azokat fogja elvégezni mikor megtörténik a megszakítás.
Ahhoz, hogy tudd éppen melyik periféria okozta a megszakítást meg kell vizsgálni őket, erre való a 30. sor. Itt kell figyelni az xxxIF (interrupt flag)-eket, ha ez "1" akkor megszakítás történt, viszont nem árt figyelni azt is, hogy éppenséggel be is van kapcsolva egyáltalán az adott periféria, ezért kell figyelni az Interrupt Enable flag-et is (xxxIE), ha a kettő együtt igaz akkor generálódott egy olyan megszakítás amire neked sükséged van és csak ekkor kell elvégezni azokat amik benne vannak. Ha több megszakítást akarsz figyelni akkor több if-et teszel az interrupt függvényekbe.
Mindegyik megszakítás kezelésénél törölni kell a flag-et (32. sor), mert ha nem akkor amint lekezeli ismét belefut, mivel a flag még mindig "1", emellett ajánlott ez idő alatt letiltani is az adott megszakítást (33. sor), majd a végén megint engedélyezni (39. sor), a többi az periféria függő, a kettő között azt csinálsz amit akarsz, csak nagyon gyorsan és kevés műveletet, különben "lefagy" a program, mert lehet hogy több időbe telik lekezelni mint amilyen gyakran generálódik, ezér fontos elkerülni a várakozó ciklusokat a megszakításokban.
Röviden ennyi lett volna.
(#) DJozso hozzászólása Máj 5, 2015 /
 
Kedves fórumtársak! Most kezdtem el foglalkozni GLCD kijelzőkkel, mikroC környezetben. A bajom, hogy nem tudom a kiirt szöveg fontját állítani. Gondolom hozzá kellene adni a projekthez valami *.h kiterjesztésű fájlt(szerintem), amit a fő rutinba meghívni"#INCLUDE paranccsal. Nem így van? Legyetek kedvesek mondjátok már el elméletben hogyan kellene csinálni. Köszönöm szépen. Csak az alap font típus van.
A hozzászólás módosítva: Máj 5, 2015
(#) kriszrap válasza DJozso hozzászólására (») Máj 11, 2015 /
 
hogy lehet egy picket vagy is ezt:http://www.hestore.hu/prod_10029882.html
és ezt a shiftregiszeter http://www.hestore.hu/prod_10030777.html
ugy mond összekötni led kockának a sorválasztojához
ötlet kéne hogy programozzam be öket mert még sötét a dolog
valaki tud segíteni?
A hozzászólás módosítva: Máj 11, 2015
(#) kriszrap válasza kriszrap hozzászólására (») Máj 11, 2015 /
 
szerk.: mikroCbe dolgozom
(#) mark.budai hozzászólása Máj 19, 2015 /
 
Sziasztok! Ma frissítettem a 6.4-re. Nincs ehhez a programhoz magyar nyelvi csomag? Megértem az angolt is, de ha magyar lenne a program, az sokkal jobb lenne.
(#) t_ricsi hozzászólása Máj 28, 2015 /
 
Sziasztok.

mikroC-vel kezdtem el ismerkedni a pic-ek világában. Eddig minden jól is ment de egy idő után már nem működött az ami eddig igen. "specifier needed" és "identifier redefined" hibákat kapok sorra
trisb és char i és sound init soroknál. Eddig ment minden tökéletesen most valahogy nem akar. Valaki tud rá megoldást ?
(#) SKY hozzászólása Nov 28, 2015 /
 
Valakinek volna ötlete, hogy miért nem lehet bitenként írni az alábbi a regiszterbe? SSPSTAT7_bit így már nem fogadja el, csak egyben a 8 bites regisztert. Ennek csak a felső 2 bitje írható.
Undeclared identifier 'SSPSTAT7_bit' in expression hibát ír ki.
(#) SSzz válasza röntgen hozzászólására (») Feb 15, 2016 /
 
Szerintem rettentő bug-os! Én a 6.6.2-est használom, és a következő problémák fordultak elő: valamiért újraindul a program amikor a pic-en fut. Volt, hogy úgy csinált, mintha lefordította volna a programot, de egy régebbi változtatott fordított le. Volt olyan prg, amit lefordított, de a pic-be már nem lehetett beégetni. A 4 soros LCD vezérlő egyik sora eltolva jelenik meg, kézzel kellett kiigazítani. Szóval mindenre fel kell készülni, ha ezt a programot akarod használni.
(#) pompidu hozzászólása Ápr 10, 2016 /
 
Sziasztok egy kis segítséget szeretnék kérni, mostanában kezdem beleásni magam a programozás világába és elkezdtem írni egy egyszerű kis indexvezérlő programot mikroC-ben de az a bajom, hogy bármit csinálok nem tudom megcímezni a lábakat mivel aláhúzza pirossal és hibát ír viszont egy videó sorozatban pont így címezik meg a lábakat és ott működik.
mikroC 6-os verzióját használom.

  1. PORTGP.F0=1;
  2.       Delay_ms(1000);
  3.       PORTGP.F0=0;
  4.       Delay_ms(1000);


Ez a pic egy 12F683-as pic ahol GP portok vannak.
A hozzászólás módosítva: Ápr 10, 2016
Következő: »»   2 / 10
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem