Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Szukam kodu źródłowego c++ do odczytu DS18B20 (termometr)

21 Jan 2013 18:24 3306 9
  • Level 16  
    Witam,
    Szukam kodu źródłowego w c++ do odczytu temperatury przez DS18B20.
    Nie znam na tyle dobrze c++, żeby zrobić to od podstaw samemu, a chcę zmodyfikować go do własnych potrzeb.
    Kodu źródłowe znalezione na internecie nie kompilują mi się.
    Dobrze, żeby program odczytywał kilka czujników, a nie tylko jeden.
    Jeżeli ktoś taki kod posiada to proszę o podrzucenie.

    Schemat mojego termometru na RS232 (na gotowych programach czyta temp.)

    Szukam kodu źródłowego c++ do odczytu DS18B20 (termometr)
    Trendy 2021 w branży Internetu rzeczy [Webinar 02.07.2021, g.12.00]. Zarejestruj się za darmo
  • Level 16  
    Cześć,
    Na tej stronie, którą podałeś pliki nie ściągają się tako *zip tylko txt , po otwarciu, których wyskakują krzaki.

    Próbowałem tego:
    http://www.codeforge.com/read/10437/ds18b20.c__html

    Ale co chwila niezadeklarowane zmienne wywala, i rzeczywiście nie są one zdefiniowane w żadnym .h

    Code:
    [C++ Error] DS18B20.h(22): E2141 Declaration syntax error
    
    [C++ Warning] DS18B20.h(22): W8058 Cannot create pre-compiled header: initialized data in header
    [C++ Error] Unit1.cpp(17): E2451 Undefined symbol 'TACTL'
    [C++ Error] Unit1.cpp(17): E2451 Undefined symbol 'TASSEL_2'
    [C++ Error] Unit1.cpp(17): E2451 Undefined symbol 'ID_2'
    [C++ Error] Unit1.cpp(17): E2451 Undefined symbol 'TAIE'
    [C++ Error] Unit1.cpp(17): E2451 Undefined symbol 'TACLR'
    [C++ Error] Unit1.cpp(17): E2451 Undefined symbol 'MC_2'
    [C++ Error] Unit1.cpp(18): E2451 Undefined symbol 'TAR'
    [C++ Warning] Unit1.cpp(18): W8019 Code has no effect
    [C++ Error] Unit1.cpp(51): E2451 Undefined symbol 'P6DIR'
    [C++ Error] Unit1.cpp(51): E2451 Undefined symbol 'BIT3'
    [C++ Error] Unit1.cpp(51): E2451 Undefined symbol 'P6OUT'
    [C++ Error] Unit1.cpp(58): E2451 Undefined symbol 'P6IN'
    [C++ Error] Unit1.cpp(78): E2451 Undefined symbol 'P6DIR'
    [C++ Error] Unit1.cpp(78): E2451 Undefined symbol 'BIT3'
    [C++ Error] Unit1.cpp(78): E2451 Undefined symbol 'P6OUT'
    [C++ Error] Unit1.cpp(108): E2451 Undefined symbol 'P6DIR'
    [C++ Error] Unit1.cpp(108): E2451 Undefined symbol 'BIT3'
    [C++ Error] Unit1.cpp(108): E2451 Undefined symbol 'P6OUT'
    [C++ Error] Unit1.cpp(114): E2451 Undefined symbol 'P6IN'
    [C++ Error] Unit1.cpp(339): E2268 Call to undefined function '_DINT'
    [C++ Error] Unit1.cpp(345): E2268 Call to undefined function '_EINT'
    [C++ Error] Unit1.cpp(391): E2238 Multiple declaration for '__monitor'
    [C++ Error] DS18B20.h(22): E2344 Earlier declaration of '__monitor'
    [C++ Error] Unit1.cpp(391): E2141 Declaration syntax error
  • Level 25  
    A posiada kolega includowane na początku pliki nagłówkowe?

    Code: cpp
    Log in, to see the code


    Czy te 2 pliki znajdują się w katalogu projektu?
  • Level 16  
    Tak mam je dodane, mimo to wywala błędy

    PS: Posiadam je z tej samej strony, którą podałem wyżej
  • Level 27  
    A właściwie na jaki procesor chce kolega pisać ten kod? Podane źródła są pisane na mikrokontroler Texas Instruments MSP430, a schemat widzę z portem RS232 do PC. Nie dziwne, że nie działa, bo w ogóle to nie jest ten kompilator, nie mówiąc już o tym, że program chce się odwoływać do konkretnych portów mikrokontrolera. Ten kod to raczej kiepska ściągawka. W linku, który podał kolega Defice jest kompletny program do odczytu DS18B20 z PC pod port COM. Wystarczy uruchomić.
  • Level 16  
    Cześć, nie zauważyłem nawet, że to jest pisane nie pod PC.
    W linku , który podał Defice owszem są pliki, ale pobierają sie nie jako archiwa, a pliki txt z masą krzaków.
  • Level 27  
    Zamień rozszerzenia .txt na .zip i masz wszystko. Jest gotowy program, są źródła takie, o jakich pisałeś wcześniej.
  • Level 16  
    Teraz można ściągnąć.
    Jednak mam problem przy kompilacji.
    Daje w Visual Studio 2008 File->New->Project->Visual C++> Win32ConsoleApplication

    Potem tworze pliki i biblioteki o takich samych nazwach jak te w folderze dsdemo_src.
    Kompiluje i:
  • Level 27  
    Nie dziwne, że nie działa. W tych źródłach masz bibliotekę do obsługi ds18b20 i kawałek programu pokazującego jak obsługiwać tą konkretną bibliotekę. Nie jest to gotowy projekt. Sam musisz napisać sobie aplikację.