 |

|
Elektronika.lt portalo forumas
Jūs esate neprisijungęs lankytojas. Norint dalyvauti diskusijose, būtina užsiregistruoti ir prisijungti prie forumo.
Prisijungę galėsite kurti naujas temas, atsakyti į kitų užduotus klausimus, balsuoti forumo apklausose.
Administracija pasilieka teisę pašalinti pasisakymus bei dalyvius,
kurie nesilaiko forumo taisyklių.
Pastebėjus nusižengimus, prašome pranešti.
Dabar yra 2025 07 13, 21:41. Visos datos yra GMT + 2 valandos.
|
|
|
 |
Forumas » Mikrovaldikliai » Kas negerai?? C kalba
|
Jūs negalite rašyti naujų pranešimų į šį forumą Jūs negalite atsakinėti į pranešimus šiame forume Jūs negalite redaguoti savo pranešimų šiame forume Jūs negalite ištrinti savo pranešimų šiame forume Jūs negalite dalyvauti apklausose šiame forume
|
|
|
 |
 |
Kas negerai?? C kalba |
Parašytas: 2006 03 04, 14:26 |
|
|
|
Kodas: |
#include "io2313.h"
void main()
{
int a=0,b=0,c=0,d=0,e=0;
DDRB = 255;
DDRD = 0;
while(1)
{
if ((PIND&2)==2) a=1;
if ((PIND&2)==0) a=0;
if (a==1) b=1;
if ((a==0)&(b==1)) c++,b=0,a=0;
PORTB=c;
}
} |
Esu visiškai pasimetęs. Vos padavus į PD1 vieneta c reikšme pasidaro betkokia, o padavus vėl 0 dar kitokia. Kas čia du cirkai?
Visa mano idėja neveikia vien dėl to,kad c reikšmė turi pakisti tik kai a tampa 0, o čia abiem atvejeis kinta. Senesnės tokiu principu rašytos programos veikė  |
|
Paskutinį kartą redagavo Vytautasr, 2006 03 04, 14:38. Redaguota 1 kartą _________________ Teorija - kai viską žinai, bet niekas neveikia,
Praktika - kai viskas veikia, bet nežinai kodėl.
Skype : VytautasRX |
|
|
|
 |
 |
Kas negerai?? C kalba |
Parašytas: 2006 03 04, 14:33 |
|
|
|
Pagal mano durna galvelę po kiekvieno I O cilko ant PD1 kojos c reikšnė turėtų padidėt vienetu.  |
|
_________________ Teorija - kai viską žinai, bet niekas neveikia,
Praktika - kai viskas veikia, bet nežinai kodėl.
Skype : VytautasRX |
|
|
|
 |
Kas negerai?? C kalba |
Parašytas: 2006 03 04, 14:49 |
|
|
|
Nemoki naudoti if'ų...
Kodas: |
if ((PIND&2)==2) a=1; |
O kas čia? Tikrini ar ant kojos yra 2? |
|
|
|
|
 |
Kas negerai?? C kalba |
Parašytas: 2006 03 04, 14:53 |
|
|
|
BLASTER rašo: |
Nemoki naudoti if'ų...
Kodas: |
if ((PIND&2)==2) a=1; |
O kas čia? Tikrini ar ant kojos yra 2? |
Na kaip čia pasakius. Parašius:
(d=(PORTD&2));
PORTB=d;
man yra 1 ant PB1 ant visų kitų 0, taigi darau prielaidą ,kad ten 2 gaunasi kaškaip.
Beja datasheet'e parašytą kad galima perrašyti 1000 kartų, o kas poto ?nebeveikia? |
|
_________________ Teorija - kai viską žinai, bet niekas neveikia,
Praktika - kai viskas veikia, bet nežinai kodėl.
Skype : VytautasRX |
|
|
|
 |
Kas negerai?? C kalba |
Parašytas: 2006 03 04, 15:56 |
|
|
|
Vytautasr rašo: |
Beja datasheet'e parašytą kad galima perrašyti 1000 kartų, o kas poto ?nebeveikia? |
Kai kurie FLASH atminties bitai pradeda nebelaikyti įrašytos informacijos.. |
|
|
|
|
 |
Kas negerai?? C kalba |
Parašytas: 2006 03 04, 15:59 |
|
|
|
Veiks ir po 1000 ir po 2000. Tiesiog gamintojas GARANTUOJA, kad 1000 tikrai galesite irasyti. O poto neaisku, gal ir 10x tiek. |
|
_________________ -----
That's what she said. |
|
|
|
 |
Kas negerai?? C kalba |
Parašytas: 2006 03 04, 16:59 |
|
|
|
Įsirašiau seną programą kuri tikrai turi veikti, ir veikė su klaida  |
|
_________________ Teorija - kai viską žinai, bet niekas neveikia,
Praktika - kai viskas veikia, bet nežinai kodėl.
Skype : VytautasRX |
|
|
|
 |
Kas negerai?? C kalba |
Parašytas: 2006 03 04, 18:29 |
|
|
|
Tai gali buti flash klaida, tačiau tai gali būti ir periferijos pagadinimas. Būna, kad nukepa vienas pin'as, vienas portas, uart'as ar pan. |
|
_________________ -----
That's what she said. |
|
|
|
 |
Kas negerai?? C kalba |
Parašytas: 2006 03 05, 21:37 |
|
|
|
Kodas: |
#include "io2313.h"
void main()
{
int a=0,b=0,c=0,d=0,e=0,i=0;
DDRB = 255;
DDRD = 0;
while(1)
{
for(i=0; i<1000; i++){}
if ((PIND&2)==2) a=1;
if ((PIND&2)==0) a=0;
if (a==1) b=1;
if ((a==0)&(b==1)) c++,b=0,a=0;
PORTB=c;
}
} |
Nežinau kaip tai paaiškint, bandžiau ant kito uP tas pats, įdėjus tuščią ciklą pradeda veikti gerai, bet tik mažam dažnume. Gal atsiras protingų dėdžių kurie man paaiškint kodėl taip yra? |
|
_________________ Teorija - kai viską žinai, bet niekas neveikia,
Praktika - kai viskas veikia, bet nežinai kodėl.
Skype : VytautasRX |
|
|
|
 |
Kas negerai?? C kalba |
Parašytas: 2006 03 05, 21:45 |
|
|
|
Sumažinus ciklų skaičių iki 50 lyg ir tvarkingai veikia, bet su mažiau pjauna grybą  |
|
_________________ Teorija - kai viską žinai, bet niekas neveikia,
Praktika - kai viskas veikia, bet nežinai kodėl.
Skype : VytautasRX |
|
|
|
 |
Kas negerai?? C kalba |
Parašytas: 2006 03 07, 00:02 |
|
|
|
pala o kam tam
while(1)
{}
dar for(.....) naudoji?
juk jis nieka gera tau nedara  |
|
|
|
|
 |
Kas negerai?? C kalba |
Parašytas: 2006 03 07, 00:05 |
|
|
|
ai bl nepastebejau kad cia tik kaip taimings(sklaiustai kad baigias:D)
sheip kashkada kashka panashaus bandziau tai ir kashko nenoreja veikt normaliai be uzlaikymo. |
|
|
|
|
 |
Kas negerai?? C kalba |
Parašytas: 2006 03 07, 19:54 |
|
|
|
Sarunas rašo: |
ai bl nepastebejau kad cia tik kaip taimings(sklaiustai kad baigias:D)
sheip kashkada kashka panashaus bandziau tai ir kashko nenoreja veikt normaliai be uzlaikymo. |
Va suprasčiau jai užlaikymas būtų keli ciklai, nu bet 50  |
|
_________________ Teorija - kai viską žinai, bet niekas neveikia,
Praktika - kai viskas veikia, bet nežinai kodėl.
Skype : VytautasRX |
|
|
|
 |
Kas negerai?? C kalba |
Parašytas: 2006 03 12, 21:53 |
|
|
|
Nezinau ar gerai viska supratau, bet yra pora minciu: pirma, jei signala i PD1 paduodi su mygtuko paspaudimu ar pan. tai uC ji gauna su triuksmais (nuo kontaktu ir t.t.) tai jei tuo metu tavo ciklas speja prasisukti keleta kartu tai ir gausi neaiskia c reiksme.
Antra, jei naudoji vien tik PD1 is viso D porto, tai man atrodo geriau daryti sitaip:
if ((PIND&2)!=0) a=1;
else a=0; |
|
|
|
|
|
 |
Google paieška forume |
|
 |
Naujos temos forume |
|
 |
FS25 Tractors
Farming Simulator 25 Mods,
FS25 Maps,
FS25 Trucks |
 |
ETS2 Mods
ETS2 Trucks,
ETS2 Bus,
Euro Truck Simulator 2 Mods
|
 |
FS22 Tractors
Farming Simulator 22 Mods,
FS22 Maps,
FS25 Mods |
 |
VAT calculator
VAT number check,
What is VAT,
How much is VAT |
 |
FS25 Mods
FS25 Harvesters,
FS25 Tractors Mods,
FS25 Maps Mods |
 |
Dantų protezavimas
All on 4 implantai,
Endodontija mikroskopu,
Dantų implantacija |
 |
FS25 Mods
FS25 Maps,
FS25 Cheats,
FS25 Install Mods |
 |
FS25 Mods
Farming Simulator 25 Mods,
FS25 Maps |
 |
ATS Trailers
American Truck Simulator Mods,
ATS Trucks,
ATS Maps |
 |
Football Training Kit
Football Training Equipment,
Football Skills,
Football Training |
|

|
 |