Zdravím a kdo ví, ať odpoví...
Vezmu jakékoli Arduino, připojím Rotary Encoder a použiji jednoduchý program a šlape jak hodinky. BEZ CHYBY
ALE :
Udělám stejný prográmek - úplně stejný co se týče významu instrukcí - pro Picaxe a on kecá a kecá a kecá,
Máte někdo nějaké vysvětlení proč to Picaxe nezvládá?
Napadla mě prasárnička - vezmu Arduino MINI a jeho výstupy pošlu do Picaxe Ale to už je moc
Hlavně mi neraďte, proč rovnou na celou konstrukci nepoužiju Arduino - no protože ho neumím
Má aplikace je moc složitá a v Basicu to umím
Ale neřešte PROČ chci Picaxe, ale spíš, proč to je tak nespolehlivé.
Když mi někdo naučíte, jak sem vložit kód obou programů, vložím je sem.
Picaxe a Rotary Encoder
Re: Picaxe a Rotary Encoder
Na vložení kódu je pátá ikonka zleva nad editačním polem příspěvku
"all your robots are belong to us"
robodoupe.cz
robodoupe.cz
Re: Picaxe a Rotary Encoder
Tak toto je kod pro Arduino :
A toto je kod pro PICAXE :
Kód: Vybrat vše
#define outputA 6
#define outputB 7
int counter = 0;
int aState;
int aLastState;
void setup() {
pinMode (outputA,INPUT);
pinMode (outputB,INPUT);
Serial.begin (9600);
aLastState = digitalRead(outputA); } //ulozi si aktualni pozici
void loop() {
aState = digitalRead(outputA); //precte "current" stav vstupu A
if (aState != aLastState){ //pokud se vstup A zmenil, je to pulz
if (digitalRead(outputB) != aState) { //pokud se vstup A lisi od vstupu B,
counter ++; //tocime se vpravo
} else { counter --; } //jinak vlevo
Serial.print("Position: ");
Serial.println(counter); }
aLastState = aState; //Update noveho stavu vstupu A
}
A toto je kod pro PICAXE :
Kód: Vybrat vše
#Picaxe 08M2
#no_data
setfreq M8
symbol LCD =0
symbol BAUD =N9600_8
symbol outA = pinc.3
symbol outB = pinc.4
symbol aState = b10
symbol aLast = b11
symbol counter = b12
INIT: aLast = outA
counter = 0
START: aState = outA
if aState <> aLast then
if outB <> aState then inc counter
else dec counter
endif
serout LCD,BAUD,($FE,$80,"Counter : ", #counter," ")
endif
aLast = aState
goto START
Re: Picaxe a Rotary Encoder
Já v Basicu taky celkem umím a tak používám Bascom, což je klon Basicu pro Atmely. A Arduino používám jako redukci na mcu.Má aplikace je moc složitá a v Basicu to umím
-
- Příspěvky: 394
- Registrován: 02 dub 2014, 15:30
Re: Picaxe a Rotary Encoder
Nepomohlo by Setfreq m16 nebo m32 ?
Re: Picaxe a Rotary Encoder
Vladimire, měl jsi pravdu. Při 32MHz Picaxe šlape taky dobře. Díky.
Teda toto forum je moc dobrá věc...
Teda toto forum je moc dobrá věc...