veltronic Napisano Listopad 3, 2021 Udostępnij Napisano Listopad 3, 2021 Witam, mam drobny kłopot z obsługą przetwornika MCP3208. Po podłączeniu go a także podłączeniu Soil Moisture Sensor, wyniki jakie mi się wyświetlają odbiegają od wartości które powinny przedstawiać (czerwone kółko w załączniku), Czy coś źle deklaruje/ odczytuje ? Po błędach przy próbie otworzenia pliku przez " python WIlgotność gleby.py" internet przyniósł mi rozwiązanie użycia sudo python3 WilgotnoscGleby.py . Dlaczego muszę tak otwierać skrypt? Podczas gdy otwarcie innych wymaga tylko użycia python ....py Również prosiłbym o sprawdzenie czy dobrze rozumiem w jaki sposób przebiega obsługa przetwornika MCP w kodzie (komentarze w załączniku).
H1M4W4R1 Listopad 3, 2021 Udostępnij Listopad 3, 2021 15 minut temu, veltronic napisał: Po błędach przy próbie otworzenia pliku przez " python WIlgotność gleby.py" internet przyniósł mi rozwiązanie użycia sudo python3 WilgotnoscGleby.py . Dlaczego muszę tak otwierać skrypt? Podczas gdy otwarcie innych wymaga tylko użycia python ....py Python2 jest przestarzały i z reguły powinno się używać Pythona3. Dodatkowo Python3 posiada wiele ulepszeń, co by być bardziej świeżakoodpornym Jak byś zadeklarował encoding # coding=utf8 też powinno zadziałać, ale Pythona używam bardzo sporadycznie. Problem wynika z tego, że w pliku są polskie znaki, a interpreter oczekuje ASCII, gdzie plik jest zapisany w UTF-8, przez co znajduje nieznany znak spoza zakresu ASCII i wyrzuca błąd. --- Linijki 12-14 to inicjacja magistrali SPI, pinu CS dla SPI oraz samego przetwornika (stworzenie odpowiednich obiektów, które są inicjowane z poziomu konstruktora. Linijka 17 to przypisanie kanału przetwornika do zmiennej (bardziej stworzenie obiektu służącego do odczytu wartości danego pinu przetwornika). Linijka 20 - pętla programu (coś jak loop w arduino) --- Co do innych wartości - nie mam pomysłu.
veltronic Listopad 3, 2021 Autor tematu Udostępnij Listopad 3, 2021 Niestety po zadeklarowaniu encodingu dalej występuje błąd, jest opcja jakos przerobic plik, żeby ten błąd nie występował ?
ethanak Listopad 3, 2021 Udostępnij Listopad 3, 2021 A możesz wyjaśnić, dlaczego plik przeznaczony dla Pythona 3 chcesz koniecznie otworzyć w Pythonie 2? Jak by nie było, to są różne języki... Teoretycznie na początku powinno być: #!/usr/bin/env python #coding: utf-8 i nic przed tym. Spróbuj, może się uda.
veltronic Listopad 3, 2021 Autor tematu Udostępnij Listopad 3, 2021 Mam kilka skryptów juz napisanych w pythonie 2, które będę najprawdopodobniej łączył w jedną całość. Ale jednak chyba przeniosę się na pythona3. Dziękuje.
Pomocna odpowiedź
Bądź aktywny - zaloguj się lub utwórz konto!
Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony
Utwórz konto w ~20 sekund!
Zarejestruj nowe konto, to proste!
Zarejestruj się »Zaloguj się
Posiadasz własne konto? Użyj go!
Zaloguj się »