A privát üzenet rendszerben karbantartásokat végzünk. Lassulások előfordulhatnak!
Fórum témák

» Több friss téma
Fórum » MikroPascal kérdések
 
Témaindító: bozsokiandras, idő: Máj 15, 2006
Témakörök:
Lapozás: OK   29 / 29
(#) SzilCsong válasza jefflynn hozzászólására (») Márc 2, 2021 /
 
Az a gáz, hogy nem találok rá példát, ezt is úgy halásztam össze.
Tudnál segíteni, hogy mit kellene módosítani?
(#) jefflynn válasza SzilCsong hozzászólására (») Márc 2, 2021 /
 
Valami hasonló:
  1. ansel:= 0;
  2. CMCON0 := 7;
  3. if  gpio.4= 0 then
  4.  begin
  5.      gpio.2:=1;
(#) SzilCsong válasza jefflynn hozzászólására (») Márc 3, 2021 /
 
Ez nem ugyanaz, amit én írtam?
De mindegy is, mert most épp tönkrement a pk2-m, úgy néz ki amnéziás lett a lelkem, (tegnap még jó volt)
(#) jefflynn válasza SzilCsong hozzászólására (») Márc 3, 2021 /
 
De igen, szerintem az úgy jó.
(#) Elektro.on válasza SzilCsong hozzászólására (») Márc 3, 2021 /
 
A MikroPaskal súgójában ott a példa. Szoftveres pergésmentesítéssel együtt.

Egyéb iránt, ugyan nem látom a kódod többi részét, de ha nem megszakításba teszed akkor pollingolni kéne a port figyelését.
A kódrészletedből csak annyi látszik, hogy egy adott pillanatban beolvassa az állapotát.
(#) SzilCsong válasza jefflynn hozzászólására (») Márc 3, 2021 /
 
Valamiért csak az adc_read működik, tehát csak nem vált át digitális bemenetbe.
De mindegy, jó lesz ez így nekem, most nem sok időm van ezen agyalni, ezzel oldom meg.
Köszi.
(#) SzilCsong válasza Elektro.on hozzászólására (») Márc 3, 2021 /
 
Természetesen végtelen ciklusba van foglalva:
  1. While true do
  2.  begin
(#) ha1drp válasza SzilCsong hozzászólására (») Márc 4, 2021 /
 
Reset után az összes láb bemenet (TRISIO = 0x3F)
Ha kimenetként akarod használni, ekkor törölni kell a lábhoz tartozó bitet itt:
  1. TRISIO.2 := 0;

míg a TRISIO.4 := 1 ; nem szükséges, ha csak nem előtte nem állítottad át.
Mi a helyzet a felhúzó ellenállással ?
(#) SzilCsong hozzászólása Márc 17, 2021 /
 
Hi Urak
Megakadtam egy bugyuta kérdéssel.
Pergésmentesítve akarok egy nyomógombot használni a Button függvénnyel.
  1. var nyomogomb : sbit at gpio.3;
  2. var gomb:  bit ;
  3. var nyomogomb_Direction :  sbit at gpio.3;
  4.  
  5. { Declarations section }
  6.  
  7. begin
  8.  gomb:=  not nyomogomb;
  9. //nyomogomb:= not nyomogomb;
  10.   { Main program }
  11.   trisio.2:=1;
  12.     trisio.0:=0;
  13.   gpio.0:=0;
  14.   CMCON0:=0x07;
  15. //adcon0:=0;      ///
  16. ansel:=0;
  17. while true do
  18.  begin
  19.  gomb:=  not nyomogomb;
  20.  if  Button(gpio,3, 255, 1) then            //255 ms-ig nyomva
  21.  gpio.0:=0 else gpio.0:=1;
  22.  end;
  23. end.


A "Button"-nál a fordító elakad " Identifier "Button" was not declared -----.mpas"

Ami azért furcsa, mert ez egy működő programrészletből másoltam ki, ott működik, itt nem... Furcsa , nincs valakinek ötlete?
(#) nedudgi válasza SzilCsong hozzászólására (») Márc 17, 2021 /
 
A másik programot kellene végigbogarászni, hol deklarálták a "Button"-t.
(#) SzilCsong válasza nedudgi hozzászólására (») Márc 17, 2021 /
 
Köszi a gyors választ, végignéztem és semmi eltérést nem látok, ugyanaz a pic. 12f683. minden ugyanaz.
(#) SzilCsong válasza nedudgi hozzászólására (») Márc 17, 2021 /
 
De egyébként lehet, hogy rosszul értem, de a Button az nem egy beépített függvény?!

"function Button(var port : byte; pin, time, active_state : byte) : byte;"

Akkor ezt nem is kellene deklarálni, de akkor egy új projectnél miért nem működik? Még a Project editor is ugyanolyan
(#) Elektro.on válasza SzilCsong hozzászólására (») Márc 17, 2021 /
 
Szia!

A MikroPascal súgójában minden részlet benne van. Azt olvasd át.
(#) SzilCsong válasza Elektro.on hozzászólására (») Márc 17, 2021 /
 
Szia

Most lehet, hogy én vagyok a vak, de mindenről (eeprom, one wire, lcd....) van egy normális példa felhozva, valahogy pont a buttonról nincs és a neten se nagyon.
Button library:

  1. while true do
  2. begin
  3.   if Button(PORTB, 0, 1, 1) then oldstate := 255;
  4.   if oldstate and Button(PORTB, 0, 1, 0) then
  5.   begin
  6.     PORTD := not(PORTD);
  7.     oldstate := 0;
  8.   end;
  9. end;


ennyi, idáig eljutottan én is, de hogy kell deklarálni a buttont, az nem derül ki.
(#) SzilCsong válasza SzilCsong hozzászólására (») Márc 17, 2021 /
 
Elég vicces megoldást találtam a problémára: project mentés másként átnevezem, majd kedvem szerint módosítom és minden oké.
Az, hogy mi a külömbség, ha egy új projectet kezdek és e között, hát nem tudok rájönni.
Az is rejtély, hogy miért kell mindig 2x megnyitni egy projectet, hogy tényleg be is töltse, ez lehet, hogy az ingyenesség átka.
(#) Dr.PCB válasza SzilCsong hozzászólására (») Márc 17, 2021 / 1
 
Szia SzilCsong!

A library manager-ben be kell pipálni azokat a függvényeket amit használsz a programodban. Én régen használtam, de ugyanígy jártam; nem értettem mért nem mennek a beépített függvények. Bepipálás után ha újra fordítasz jó lesz. Üdv.
(#) SzilCsong válasza Dr.PCB hozzászólására (») Márc 18, 2021 /
 
Köszi!
Nálad a megoldás!
Hálás köszönet
Következő: »»   29 / 29
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