A szakirányos laboratórium házi feladataként készült el egy USB-s hőmérő, amely OneWire buszra kapcsolódó szenzorok adatait tudja kiolvasni.
Az eszköz alapja az STM32F4 Discovery kit, amely egy Cortex-M4 maggal rendelkező 168 MHz-es mikrokontrollert tartalmaz. Az áramkört a kiten található tüskesorra kell illeszteni, és máris működésre kész. Megtalálható rajta három darab hétszegmenses kijelző, két gomb, egy buzzer és a hőmérők busza. Kihívást jelentett a OneWire busz kezelése, amely egy vezetéken (nyilván a mellette lévő földvezetékkel együtt) valósít meg kétirányú kommunikációt. Nagyon fontos a kommunikáció időzítése. Az eszköz képes automatikusan felismerni a buszra csatlakoztatott hőmérőt. A gombokkal beállítható egy hőmérsékleti érték, és ha bármelyik hőmérő túllépi ezt, akkor a buzzer szirénázó hangot ad ki.
A számítógéppel való kapcsolatot az ST USB könyvtárával valósítottam meg, amely egy soros portot emulál. Az adatok fogadását és feldolgozását egy MATLAB script végzi, amely képes a szenzorok mért értékeinek grafikus megjelenítésére, valamint exportálni is tudja az adatokat.
További fejlesztési lehetőségek is rejlenek a dologban, például az értékek szűrése már az STM32-ben, illetve használhatóbb felületet lehetne készíteni hozzá.

