Hirdetés
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Amazfit Active 2 NFC - jó kör
- Az Oppo Find X8 Ultra lett a legvékonyabb kameramobil
- Vivo X300 Pro – messzebbre lát, mint ameddig bírja
- Samsung Galaxy A55 - új év, régi stratégia
- Xiaomi 15T - reakció nélkül nincs egyensúly
- Megtartotta Európában a 7500 mAh-t az Oppo
- Android Autót minden mobilra!
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- Google Pixel topik
-
Mobilarena
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
#70211840
törölt tag
Nem tudom mennyire illik a topicba (bár szerepel a címben), kezdőként programozási kérdésem volna.
Szóljatok, ha off és menjek át a C++ programozás topicba.Elakadtam egy referencia átadásnál, nem értem miért nem csinálja meg.
Egy egyszerű I2C Scan a példa, aminél a main-ben hoznék létre és indítanék a TwoWire-t és egy másik osztályban szeretném ezt használni.
Viszont egyetlen eszközt sem talál, míg visszapakolva a loop()-ba a WireScanner::scanI2C tartalmát, rendben fut és listázza az eszközök címeit.Mit rontok el?
Test.ino
#include <Wire.h>#include "WireScanner.h"TwoWire wirePort(PB11, PB10); // STM32F103 I2C_2WireScanner ws(wirePort);void setup() {Serial.begin(9600);wirePort.begin();}void loop() {ws.scanI2C();delay(5000); // wait 5 seconds for next scan}WireScanner.h
#ifndef WireScanner_h#define WireScanner_h#include <Wire.h>class WireScanner {public:WireScanner(TwoWire& i2cPort);void scanI2C(void);};#endifWireScanner.cpp
#include "WireScanner.h"TwoWire _i2cPort;WireScanner::WireScanner(TwoWire& i2cPort) {_i2cPort = i2cPort;}void WireScanner::scanI2C(void) {byte error, address;int nDevices;Serial.println("Scanning...");nDevices = 0;for (address = 1; address < 127; address++) {_i2cPort.beginTransmission(address);error = _i2cPort.endTransmission();if (error == 0) {Serial.print("I2C device found at address 0x");if (address < 16)Serial.print("0");Serial.println(address, HEX);nDevices++;} else if (error == 4) {Serial.print("Unknown error at address 0x");if (address < 16)Serial.print("0");Serial.println(address, HEX);}}if (nDevices == 0)Serial.println("No I2C devices found");elseSerial.println("done");}
Új hozzászólás Aktív témák
- Milyen routert?
- WLAN, WiFi, vezeték nélküli hálózat
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Nikon DSLR topik
- Konzolokról KULTURÁLT módon
- Egérpad topik
- Amazfit Active 2 NFC - jó kör
- Az Oppo Find X8 Ultra lett a legvékonyabb kameramobil
- Épített vízhűtés (nem kompakt) topic
- Ne már! Drágább lesz a GPU a memóriapánik miatt?
- További aktív témák...
- LG 27GR83Q-B - 27" IPS / QHD 2K / 240Hz & 1ms / NVIDIA G-Sync / FreeSync / DisplayHDR 400
- Sanitas SBM 21 felkaros vérnyomás mérő / 12 hó jótállás
- BESZÁMÍTÁS! 32GB(4x8GB) G.Skill Trident Z RGB 4000MHz DDR4 memória garanciával hibátlan működéssel
- Eredeti Lenovo 230W töltők - 4X20Z83995
- iPhone 12 mini emelt kapacitású 2460mAh diagnosztizálható akkumulátor, +ajándék ragasztó
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
ekkold

