-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!news.task.gda.pl!news.mm.pl!.POSTED!not-for-mail
From: Zbych <z...@o...pl>
Newsgroups: pl.misc.elektronika
Subject: Re: [OT] Zarządzanie konfiguracją modułów kodu źródłowego
Date: Sun, 06 May 2012 15:59:13 +0200
Organization: Multimedia Polska SA
Lines: 59
Message-ID: <jo604f$8pe$1@news.mm.pl>
References: <o...@j...jedi> <jo5q8q$5u9$1@news.mm.pl>
<o...@j...jedi> <jo5u0n$810$1@news.mm.pl>
<o...@j...jedi>
NNTP-Posting-Host: host-62-141-227-0.tomaszow.mm.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: news.mm.pl 1336312783 9006 62.141.227.0 (6 May 2012 13:59:43 GMT)
X-Complaints-To: a...@m...pl
NNTP-Posting-Date: Sun, 6 May 2012 13:59:43 +0000 (UTC)
User-Agent: Mozilla/5.0 (X11; Linux i686; rv:11.0) Gecko/20120411 Thunderbird/11.0.1
In-Reply-To: <o...@j...jedi>
Xref: news-archive.icm.edu.pl pl.misc.elektronika:630684
[ ukryj nagłówki ]W dniu 06.05.2012 15:44, Andrzej Ekiert pisze:
> Dnia 06-05-2012 o 15:23:06 Zbych <z...@o...pl> napisał(a):
>
>>>> A to już zwykłe makra, definy, funkcje inline, specjalizacje szablonów
>>>> nie wystarczą do ukrycia fizycznego położenia pinów?
>>>
>>> Wystarczą, ale dla każdego projektu trzeba te define'y inaczej ustawić -
>>> ta sama nazwa, inna wartość.
>>
>> Zgadza się i zakładam, że rzeczy specyficzne dla projektu trzymasz w
>> osobnym pliku, który leży sobie w katalogu z projektem i jest przez
>> bibliotekę tylko includowany. Zgadza się?
>>
>
> Tak.
No to dużo więcej już nie wymyślisz. Co najwyżej możesz w przypadku
dokładania nowych stałych/parametrów napisać:
#ifndef XYZ
#define XYZ 12345
#endif
Wtedy biblioteka ze starym programem nie będzie krzyczała, że nie ma
zdefiniowanych parametrów.
>
>> Ja jak na razie na I2c wieszałem jakieś pamięci, RTC itp. badziewie.
>> Do jego obsługi wystarczały mi 3 funkcje typu wyślij blok danych,
>> odbierz blok danych, sprawdź gotowość. Współdzielenie zabezpieczałem
>> mutexami.
>> Funkcje RTC czy obsługa pamięci wprost wołały te funkcje. W innym
>> procku dodawałem tylko inną bibliotekę do I2c. Interface zostawał ten
>> sam. Zero narzutu.
>
> Masz driver do RTC w bibliotece. Procesor ma 2 moduły sprzętowe I2C1 i
> I2C2. Musisz przekazać driverowi RTC informację, funkcje dotyczące
> którego modułu ma wywołać: odbierz_blok_danych_z_I2C1() czy
> odbierz_blok_danych_z_I2C2(). Albo to robisz na poziomie #define, albo
> definiując "driver" do I2C i przekazując modułowi I2C handle do tego
> drivera (jest narzut). Ja chcę na poziomie #define, ale pragnę sobie
> usprawnić zarządzanie takimi #define.
No to użyj tego define. I tak jak podałem wyżej możesz zrobić domyślną
definicję dla starych programów.
>>>> Wolę zrobić kopię biblioteki z projektu x-1 i nanieść poprawki.
>>>
>>> Wykrywasz błąd albo robisz usprawnienie w x-1 i dopiero masz poprawianie
>>> wszędzie gdzie ta kopia jest. Brrr...
>>
>> To jest niewątpliwie wada. Ale powiedzmy sobie szczerze, ile można
>> spieprzyć w kodzie obsługi I2C, uarta itp?
>
> Spieprzyć zawsze można. Poza tym moduł może być czymś bardziej złożonym.
> Np. implementacją protokołu sieciowego.
Takie rzeczy jak protokół to już dla mnie warstwa wyższa :-) i tu nie
mam obaw o współdzielenie.
Następne wpisy z tego wątku
- 06.05.12 16:10 Andrzej Ekiert
- 06.05.12 16:24 Jacek Domański
- 06.05.12 16:28 Zbych
- 06.05.12 16:42 Sebastian Biały
- 06.05.12 16:50 Andrzej Ekiert
- 06.05.12 16:55 Michoo
- 06.05.12 17:08 Andrzej Ekiert
- 06.05.12 17:21 mk
- 06.05.12 17:35 Sebastian Biały
- 06.05.12 17:41 marek
- 06.05.12 17:41 Andrzej Ekiert
- 06.05.12 18:18 mk
- 06.05.12 18:32 Zbych
- 06.05.12 19:00 Sebastian Biały
- 06.05.12 21:32 mk
Najnowsze wątki z tej grupy
- w czasach LED komary mają ciężko
- walizka z kodami
- Rejestrator temperatur - termopara, siec
- Router LTE z możliwością zmian MTU
- Fajny film widziałem...
- Jaka ładowarka sieciowa do Iphona?
- Taśma izolacyjna do prac elektrycznych
- Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Wkrętarki, wiertarki...
- Zasilacz impulsowy 12V 10A, coś godnego uwagi jako zamiennik akumulatora wkrętarki
- Mouser - koszt wysyłki
- [OT] Jak wycinac ksztalt w piance lub styropianie?
Najnowsze wątki
- 2025-07-19 Zakrzewo => SAP HCM Consultant <=
- 2025-07-19 Poznań => Konsultant SAP HCM <=
- 2025-07-19 Poznań => SAP HCR Consultant <=
- 2025-07-18 celnicy pobili policjanta
- 2025-07-18 Warszawa => Technik IT - Konfiguracja i Wsparcie Sprzętowe <=
- 2025-07-18 Warszawa => Specjalista ds. Sprzętu IT i Wsparcia Technicznego <=
- 2025-07-18 Białystok => Kotlin Developer <=
- 2025-07-18 Warszawa => Sales Director (Cloud solutions) <=
- 2025-07-18 Spalinowa trauma
- 2025-07-18 Polska => Senior Key Account Manager <=
- 2025-07-18 Białystok => Programista Kotlin <=
- 2025-07-18 Szczecin => Key Account Manager IT <=
- 2025-07-18 Łódź => Programista Mainframe (z/OS, Assembler) <=
- 2025-07-18 Łódź => Mainframe (z/OS, Assembler) Developer <=
- 2025-07-18 Lublin => Delphi Programmer <=