www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

delayms(100);
Pojdi na stran 1, 2  Naslednja
 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Microchip PIC
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
mrsmoke
Član
Član



Pridružen-a: Sob 26 Feb 2005 23:22
Prispevkov: 47
Aktiv.: 0.20

PrispevekObjavljeno: Tor Nov 22, 2005 10:21 am    Naslov sporočila:  delayms(100); Odgovori s citatom

Živjo!
Za programiranje picev uporabljem prevajalnik hi-tech. Uporabljam program
mplab ide.
Vse lepo deluje razen ukaza delayms(100)
Primer za zakasnitev 2 sekund:

delayms(250);
delayms(250);
delayms(250);
delayms(250);
delayms(250);
delayms(250);
delayms(250);
delayms(250);

vendra mi ledica utripa enako kot če bi napisal samo 1x delayms(250)

za odgovor se vam že vnaprej zahvalujem.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo MSN Messenger - naslov
Sokrat
Član
Član



Pridružen-a: Čet 25 Avg 2005 11:00
Prispevkov: 5584
Aktiv.: 23.57

PrispevekObjavljeno: Tor Nov 22, 2005 11:23 am    Naslov sporočila:   Odgovori s citatom

Za odgovor moras postaviti tudi vprasanje Wink

Moja nadcutna zaznava pravi, da te zanima, zakaj LEDica blinka hitreje kot z 1/2 Hz. Odgovor na to vprasanje se glasi: napisi cel relevantni del kode - ne moremo vedeti, kako ti to LEDico prizigas in ugasas (ce to recimo naredis s PWM, potem tvoji delayi sploh ne vplivajo nanj). Ko bos ze pri tem, objavi tudi assembly listing tega dela tvojega programcka, ce slucajno prevajalnik pocne kaksne neumnosti.
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
mrsmoke
Član
Član



Pridružen-a: Sob 26 Feb 2005 23:22
Prispevkov: 47
Aktiv.: 0.20

PrispevekObjavljeno: Sre Nov 23, 2005 9:22 am    Naslov sporočila:   Odgovori s citatom

Moj program:

Koda:

/*
ledica naj bi utipalala z frekvenco 1/2 Hz.
vendar utipa enako hitro kot če bi namesto da sem 8x napisal delayms(250)
napisal samo 1x delayms(250).
ledico sem priključil na pin RB3 z preduporom na +5V.
*/
#include <pic.h>
#include <delay.h>
#define led RB3

void main(){
TRISA=0;
TRISB=0;
begin:
DelayMs(250);
DelayMs(250);
DelayMs(250);
DelayMs(250);
DelayMs(250);
DelayMs(250);
DelayMs(250);
DelayMs(250);
led=!led;
goto begin;   
}



Nevem kaj je to "assembly listing". Upam da sem dal pravo datoteko:
test.lst:

Koda:

HI-TECH Software PICC Macro Assembler V8.05PL2
                                                      Wed Nov 23 08:32:46 2005


     1                              processor   16F84A
     2                              opt   pw 79
     3                              psect   text0,local,class=CODE,delta=2
     4                              psect   text1,local,class=CODE,delta=2
     5  0000                     
     6  0000                     
     7  0000                     
     8  0000                     
     9  0000                     
    10  0000                     
    11  0000                     
    12  0000                     
    13  0000                     
    14  0000                     
    15                           
    16                              psect   text0
    17  03E9                     _main
    18                           ;test.c: 12: TRISA=0;
    19  03E9  1683                  bsf   3,5
    20  03EA  0185                  clrf   5   ;volatile
    21                           ;test.c: 13: TRISB=0;
    22  03EB  0186                  clrf   6   ;volatile
    23  03EC                     l2
    24                           ;test.c: 14: begin:
    25                           ;test.c: 15: DelayMs(250);
    26  03EC  30FA                  movlw   -6
    27  03ED  1283                  bcf   3,5
    28  03EE  23DC                  call   _DelayMs
    29                           ;test.c: 16: DelayMs(250);
    30  03EF  30FA                  movlw   -6
    31  03F0  23DC                  call   _DelayMs
    32                           ;test.c: 17: DelayMs(250);
    33  03F1  30FA                  movlw   -6
    34  03F2  23DC                  call   _DelayMs
    35                           ;test.c: 18: DelayMs(250);
    36  03F3  30FA                  movlw   -6
    37  03F4  23DC                  call   _DelayMs
    38                           ;test.c: 19: DelayMs(250);
    39  03F5  30FA                  movlw   -6
    40  03F6  23DC                  call   _DelayMs
    41                           ;test.c: 20: DelayMs(250);
    42  03F7  30FA                  movlw   -6
    43  03F8  23DC                  call   _DelayMs
    44                           ;test.c: 21: DelayMs(250);
    45  03F9  30FA                  movlw   -6
    46  03FA  23DC                  call   _DelayMs
    47                           ;test.c: 22: DelayMs(250);
    48  03FB  30FA                  movlw   -6
    49  03FC  23DC                  call   _DelayMs
    50                           ;test.c: 23: RB3=!RB3;
    51  03FD  3008                  movlw   8
    52  03FE  0686                  xorwf   6
    53                           ;test.c: 24: goto begin;
    54  03FF  2BEC                  goto   l2
    55                           
    56                              psect   text1
    57  0000                     
    58  0000                     
    59  0000                     
    60  0000                     
    61  0000                     
    62  0000                     
    63  0000                     
    64  0000                     
    65  0000                     
    66  0000                     
    67  0000                     
    68  0000                     
    69  0000                     
    70  0000                     
    71  0000                     
    72  0000                     
    73  0000                     
    74  0000                     
    75  0000                     
    76  0000                     
    77  0000                     
    78  0000                     
    79  0000                     
    80  0000                     
    81  0000                     
    82  0000                     
    83  0000                     
    84  0000                     
    85  0000                     
    86  0000                     
    87  0000                     
    88  0000                     
    89  0000                     
    90  0000                     
    91  0000                     
    92  0000                     
    93  0000                     
    94  0000                     
    95  0000                     
    96  0000                     
    97  0000                     
    98  0000                     
    99  0000                     
   100  0000                     
   101  0000                     
   102  0000                     
   103  0000                     
   104  0000                     
   105  0000                     
   106  0000                     
   107  0000                     
   108  0000                     
   109  0000                     
   110  0000                     
   111  0000                     
   112  0000                     
   113  0000                     
   114  0000                     
   115  0000                     
   116  0000                     
   117  0000                     
   118  0000                     
   119  0000                     
   120  0000                     
   121  0000                     
   122  0000                     
   123  0000                     
   124  0000                     
   125  0000                     
   126  0000                     


HI-TECH Software PICC Macro Assembler V8.05PL2
Symbol Table                                          Wed Nov 23 08:32:46 2005

      l2 03EC  _DelayMs 03DC     _main 03E9     start 0004    status 0003 

Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo MSN Messenger - naslov
Sokrat
Član
Član



Pridružen-a: Čet 25 Avg 2005 11:00
Prispevkov: 5584
Aktiv.: 23.57

PrispevekObjavljeno: Sre Nov 23, 2005 12:14 pm    Naslov sporočila:   Odgovori s citatom

Nenavadno, da je delayms() izrezana iz listinga, ali pa jaz to berem narobe.

Ce das delayms(250) samo enkrat, potem preverjeno utripa enako hitro kot z osmimi delayms(250) ?
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
ma73
Član
Član



Pridružen-a: Ned 04 Jan 2004 21:56
Prispevkov: 49
Aktiv.: 0.21

PrispevekObjavljeno: Sre Nov 23, 2005 2:26 pm    Naslov sporočila:   Odgovori s citatom

Smiselno bi bilo uporabiti FOR zanko, kjer jo pokličeš osemkrat namesto, da pišeš
delayms tolikokrat. Zakaj pa jo obravnava samo kot enkrat nimam ideje.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
<ales>
Član
Član



Pridružen-a: Čet 17 Mar 2005 19:59
Prispevkov: 28
Aktiv.: 0.12

PrispevekObjavljeno: Čet Nov 24, 2005 11:10 pm    Naslov sporočila:   Odgovori s citatom

Sem praktično preizkusil pa mi normalno dela, le pri kodi sem še dodal
__CONFIG (XT & WDTDIS & PWRTEN )

Koda:

#include <pic.h>
#include <delay.h>
#define led RB3

__CONFIG (XT & WDTDIS & PWRTEN )

void main(){
TRISA=0;
TRISB=0;
begin:
DelayMs(250);
DelayMs(250);
DelayMs(250);
DelayMs(250);
DelayMs(250);
DelayMs(250);
DelayMs(250);
DelayMs(250);
led=!led;
goto begin;   
}


Lp, Aleš
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
mrsmoke
Član
Član



Pridružen-a: Sob 26 Feb 2005 23:22
Prispevkov: 47
Aktiv.: 0.20

PrispevekObjavljeno: Sre Nov 30, 2005 8:30 pm    Naslov sporočila:   Odgovori s citatom

Še vedno mi noče delovati.Kaj naj naredim glede tega? Zanima me še nekaj.
Ali nebi mogel naslednji program preklapljati ledico na vsake 15 sekund?

Koda:

#include <pic.h>
#include <delay.h>
#define led RA2
int a;

void main(){
TRISA=0;
TRISB=255;
begin:
for (a=0;a<=255;a++){
   for (a=0;a<=255;a++){
         DelayUs(230);
   }
}
   
      
led=!led;
goto begin;
}
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo MSN Messenger - naslov
mrsmoke
Član
Član



Pridružen-a: Sob 26 Feb 2005 23:22
Prispevkov: 47
Aktiv.: 0.20

PrispevekObjavljeno: Čet Dec 01, 2005 4:14 pm    Naslov sporočila:   Odgovori s citatom

A mi lahko kdo pošlje ali pripne datoteko *.hex za utripanje ledice na vsake 10 sekund. Za pic 16f84a. Da vidim ali je težava v prevajalniku ali v picu.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo MSN Messenger - naslov
igor_k
Član
Član



Pridružen-a: Pon 19 Jul 2004 11:44
Prispevkov: 1011
Aktiv.: 4.27
Kraj: Rače

PrispevekObjavljeno: Čet Dec 01, 2005 4:58 pm    Naslov sporočila:   Odgovori s citatom

V programu ni videti napake. Povej na koliko časa utripa LEDka.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
mrsmoke
Član
Član



Pridružen-a: Sob 26 Feb 2005 23:22
Prispevkov: 47
Aktiv.: 0.20

PrispevekObjavljeno: Čet Dec 01, 2005 5:00 pm    Naslov sporočila:   Odgovori s citatom

Pribljižno 2x na sekundo.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo MSN Messenger - naslov
igor_k
Član
Član



Pridružen-a: Pon 19 Jul 2004 11:44
Prispevkov: 1011
Aktiv.: 4.27
Kraj: Rače

PrispevekObjavljeno: Čet Dec 01, 2005 6:01 pm    Naslov sporočila:   Odgovori s citatom

Kaj pa Watchdog?!
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
mrsmoke
Član
Član



Pridružen-a: Sob 26 Feb 2005 23:22
Prispevkov: 47
Aktiv.: 0.20

PrispevekObjavljeno: Čet Dec 01, 2005 7:29 pm    Naslov sporočila:   Odgovori s citatom

Vse sem že probal. Ali je možno da je XT oscilator zanič ali pic? Ali pa da imam zanič prevajalnik ali delay.h datoteko.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo MSN Messenger - naslov
Highlag
Član
Član



Pridružen-a: Pet 23 Jan 2004 20:42
Prispevkov: 4034
Aktiv.: 17.03
Kraj: Črnuče

PrispevekObjavljeno: Čet Dec 01, 2005 8:01 pm    Naslov sporočila:   Odgovori s citatom

Če bi bil kristal zanič, potem procesor sploh nebi deloval? Razen če bi nihal z neko čudno frekvenco.

Sam bi najprej poizkusil prevedno kodo potegniti v MPLAB, in sprožiti simulacijo. Potem lahko pogledaš kaj se dogaja v simulatorju.

Sam pred peko PICa vedno sprožim simulacijo, ker se mi velikokrat zgodi, da pozabim kje kakšno zadevo. Samo jaz se trudim z asemblerjem.

PIC je drugače pravilno sprogramiran? Sam lahko program tudi preberem iz procesorja, če ni zaščiten.

_________________
If at first you don't succeed, destroy all evidence that you tried.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
mrsmoke
Član
Član



Pridružen-a: Sob 26 Feb 2005 23:22
Prispevkov: 47
Aktiv.: 0.20

PrispevekObjavljeno: Pet Dec 02, 2005 1:11 am    Naslov sporočila:   Odgovori s citatom

Jutri downloadam nov mplab in hitech-ov prevajalnik. Videl sem da mi tudi
v programu pic simulator ide dela narobe. Če pa še to ne pomaga se bom lotil programirati atmele v c-ju, ker imam dosti ze [cenzurirano]. V pice sem vložil že veliko truda. Asamblerja se mi pa brezvezno zdi učiti. Prosim če mi kdo pošlje *.hex datoteko za utripanje ledice na 10 sekund.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo MSN Messenger - naslov
ma73
Član
Član



Pridružen-a: Ned 04 Jan 2004 21:56
Prispevkov: 49
Aktiv.: 0.21

PrispevekObjavljeno: Pet Dec 02, 2005 11:47 am    Naslov sporočila:   Odgovori s citatom

na katerem pinu želiš utripanje na 10skeund? Ti jest pošljem!

Zakaj 2sekundi, pa so dve varianti nisi napisal kateri kvarc uporabljaš ali
pa sem spregledal?
Pa jest bi v for zanki raje uporabil enkrat spremenljivko A drugič B.
Question
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Microchip PIC Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Pojdi na stran 1, 2  Naslednja
Stran 1 od 2

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 492 dni


Powered by phpBB © 2001, 2005 phpBB Group