Mircy czy ktoś mi może powiedzieć jakim cudem na wyjściach wya, wyb, wyc mam wartości między 400 a 600 skoro pota, potb, potc są zmienną zmieniającą się w zakresie 0-255 ( ͡°ʖ̯͡°) ?
@Efeljot: Ej ale Ty zapisujesz wartość sięgającą 1023 do zmiennej co mieści max 255. To przecież tam będą Ci się cuda dziać. Nie wiem czy arduino robi wtedy cast i obcina co ponadto czy się może wartość na bitach przekręcić ale #!$%@? panie :D
@Efeljot: A na serio to tu masz dużo błędów w tym kodzie. A odp na twoje pytanie jest taka że analogRead zwraca wartość z przetwornika który jest 10cio bitowy, czyli ma zakres 0-1023. https://www.arduino.cc/en/Reference/AnalogRead
@Efeljot: zmienne POT zrób int i styknie. Albo wywal: analogWrite(3, analogRead(A0)/4); natomiast wszystko związane z WYa itd wywal bo to nie ma sensu wg mnie - czytasz port wyjściowy po co?
@Efeljot: A dokładna wartość ustawiona w PWM jest do odczytania z któregoś z rejestrów OCR, patrz tu gdzie jest to wpisane: `void analogWrite(uint8t pin, int val) { // We need to make sure the PWM output is enabled for those pins // that support it, as we turn it off when digitally reading or // writing with them. Also, make sure the pin is in output mode // for consistenty
@atehxx: @echelon_: Tak naprawdę jak sobie podzieliłem sygnał z potencjometru na 4 to mi wychodzi przecie dokładnie to co idzie na PWM :D więc po prostu sobie podzieliłem sygnały pot/4 i to sobie wyświetlam tak jak zasugerowałeś @atehxx :D i to powinno być to :D
Mircy czy ktoś mi może powiedzieć jakim cudem na wyjściach wya, wyb, wyc mam wartości między 400 a 600 skoro pota, potb, potc są zmienną zmieniającą się w zakresie 0-255 ( ͡° ʖ̯ ͡°) ?
https://www.arduino.cc/en/Reference/AnalogRead
0 - 1023
takie cuś ma bardziej sens:
analogWrite (3, pota/4);
analogWrite (5, potb/4);
analogWrite (6, potc/4);
zmienne ustawiłem teraz z grubej rury na float - a kto bogatemu zabroni ( ͡° ͜ʖ ͡°)
ale wyświetla mi dalej wyniki do 1023 - czy da sie zrobic coś, żebym miał wartości faktyczne jakie leca na pwm w
analogWrite(3, analogRead(A0)/4);
natomiast wszystko związane z WYa itd wywal bo to nie ma sensu wg mnie - czytasz port wyjściowy po co?
@echelon_ zrobiłem cuś takiego Serial.println(wyc*(255/1023)); ale mam teraz same 0
`void analogWrite(uint8t pin, int val)
{
// We need to make sure the PWM output is enabled for those pins
// that support it, as we turn it off when digitally reading or
// writing with them. Also, make sure the pin is in output mode
// for consistenty
więc po prostu sobie podzieliłem sygnały pot/4 i to sobie wyświetlam tak jak zasugerowałeś @atehxx :D i to powinno być to :D
Dzięki mircy, że za pomoc :) !!!