FAQ | Points | Add... | Recent posts | Search | Register | Log in


prosty program w C dla mikrokontrolera ST7FLIT19BF1Mb...


Post new topic  Reply to topic      Main Page -> Forum Index -> Microcontrollers Generally -> prosty program w C dla mikrokontrolera ST7FLIT19BF1Mb...
Author
Message
kraver1981
Poziom 6
Poziom 6


Joined: 24 Jul 2006
Posts: 16
Location: Koszalin

Post#1 Post from the author of the topic 16 Oct 2007 13:54   

prosty program w C dla mikrokontrolera ST7FLIT19BF1Mb...


Witam wszystkich zainteresowanych moim problemem. Muszę napisać prościutki program na ST7FLIT19BF1Mb. Dysponuję zestawem REVA STARTER KIT firmy RAISONANCE (z programatorem R-LINK), oraz środowiskiem RIDE. Chodzi o prościutki programik (ot, parę przekaźników, parę mikrostyków, jeden timer), który w CCs-ie na PIC'a napisałbym w jakieś pół godziny. Mikrokontrolery ST7, oraz wspomniany komplilator to dla mnie całkowita nowość. W helpie nie znalazłem nic w stylu "built-in C functions", ani nic na temat szkieletu programu, czy składni. Wygenerowany przez RBuilder'a fragment kodu też niewiele zawiera, a znane mi funkcje z CCS'a nie są rozumiane przez kompilator.

Czy ktoś z Was dysponuje może listą funkcji C wraz z opisem, dla wspomnianego kompilatora?

Wszelkie sugestie, linki są bardzo mile widziane. Zainteresowanym pomocą chętnie opisze mój problem dokładniej.

Załączam pozdrowienia...
Back to top
   
Google

Google Adsense


Post# Post from the author of the topic 16 Oct 2007 13:54   





Back to top
   
Pituś Bajtuś
Poziom 20
Poziom 20


Joined: 11 Feb 2005
Posts: 841
Location: Żabieniec

Post#2 16 Oct 2007 15:57   

Re: prosty program w C dla mikrokontrolera ST7FLIT19BF1Mb...


kraver1981 wrote:
Czy ktoś z Was dysponuje może listą funkcji C wraz z opisem, dla wspomnianego kompilatora?


C to C, wszędzie taki sam. Różnice mogą występować w bibliotekach funkcji, ale znajomość paru podstawowych zagadnień języka C i architektury mikrokontrolera (tu niestety potrzebna jest dokumentacja mikrokontrolera). Dokumentacja kompilatora Ride jest bardzo obszerna i można tam znaleźć wszystko - wystarczy poszukać.

I jeszcze taka moja jedna uwaga : nie korzystaj z RBuildera tylko zacznij od pustego pliku. Inaczej się niczego nie nauczysz.
Back to top
   
Google

Google Adsense


Post# 16 Oct 2007 15:57   





Back to top
   
kraver1981
Poziom 6
Poziom 6


Joined: 24 Jul 2006
Posts: 16
Location: Koszalin

Post#3 Post from the author of the topic 16 Oct 2007 17:25   

Re: prosty program w C dla mikrokontrolera ST7FLIT19BF1Mb...


Zgadzam się z Tobą w kwestii, że dla różnych MCU język jest taki sam. Ja jednak przywykłem do PICów i środowiska CCS (na którym uczę się programowania MCU), gdzie np. na "dzień dobry" nie deklaruje się czy dany port jest wejściem, czy wyjściem... a to już różnica. Wystarczy funkcja "output_high(pin_XX)", lub sprawdzenie "if(!input(pin_XX))", żeby kompilator "wiedział co jest co". To wprawdzie szczegóły, ale jak wiadomo, diabeł tkwi... :) A tych szczegółów jest pewnie więcej.

Jak wspomniałem, help do RIDE'a jest moim zdaniem ubogi, a wyszukanie dokumentacji z "built-in C functions" dla tego kompilatora idzie mi na razie dość mizernie. Jeśli pisałeś kiedyś jakieś programiki pod jakieś ST7, to byłbym wdzięczny za wklejenie do postu kawałka kodu z paroma komentarzami (najbardziej zależałoby mi na tych liniach od konfiguracji MCU, które są nad main'em).

Tymczasem tak jak mówisz, powęszę jeszcze gdzieś po necie i może znajdę. Apropos: znasz jakieś przyjemne linki, gdzie mógłbym rzucić okiem na jakieś listingi, lub funkcje z C dla RIDE'a ?
Back to top
   
Google

Google Adsense


Post# Post from the author of the topic 16 Oct 2007 17:25   





Back to top
   
Pituś Bajtuś
Poziom 20
Poziom 20


Joined: 11 Feb 2005
Posts: 841
Location: Żabieniec

Post#4 16 Oct 2007 17:40   

Re: prosty program w C dla mikrokontrolera ST7FLIT19BF1Mb...


kraver1981 wrote:
Wystarczy funkcja "output_high(pin_XX)", lub sprawdzenie "if(!input(pin_XX))", żeby kompilator "wiedział co jest co". To wprawdzie szczegóły, ale jak wiadomo, diabeł tkwi... :) A tych szczegółów jest pewnie więcej.

Ale te funkcje nie są przewidzianie w standardzie języka C i należy ich unikać! Właśnie ze względu na kłopoty w przenoszeniu się na inny kompilator. Każdy rejestr procesora czy port I/O należy traktować jak komórkę pamięci i na tej komórce wykonywać operacje. Stosowanie funkcji których przykład podałeś stwarza same problemy. Tak samo było z sbi i cbi w avr-gcc. Każde zboczenie od standardu C jest niepożądane i prędzej czy później spowoduje poważne problemy.

kraver1981 wrote:
Jak wspomniałem, help do RIDE'a jest moim zdaniem ubogi

Bo sam "help" (czyli F1 albo Help->Index) dotyczy tylko edytora. Natomiast cała dokumentacja kompilatora bibliotek itp itd jest ukryta w menu Help->PDF->ST7 Tools

kraver1981 wrote:
(najbardziej zależałoby mi na tych liniach od konfiguracji MCU, które są nad main'em).

Chyba masz złe przyzwyczajenia z poprzedniego kompilatora...

kraver1981 wrote:
Apropos: znasz jakieś przyjemne linki, gdzie mógłbym rzucić okiem na jakieś listingi, lub funkcje z C dla RIDE'a ?

Podkatalog "Examples" w katalogu Ride?

Przykładowy program w C dla RIDE (działający) :
Code:
#include <st7lite1.h>

#define S1    (1 << 0)
#define S2   (1 << 2)
#define LED   (1 << 7)

void main(void)
{
PADDR |= LED; // skonfigurowanie PA7 jako wyjście
PADR    |= LED; // ustawienie na PA7 stanu wysokiego
while(1){   // pętla nieskończona
if((PADR & S1)==0) // jeśli wciśnięto S1
   PADR &= ~LED;   // włączenie diody LED
if((PADR & S2)==0) // jeśli wciśnięto S2
   PADR |= LED;    // wyłączenie diody LED
}
}

Back to top
   
kraver1981
Poziom 6
Poziom 6


Joined: 24 Jul 2006
Posts: 16
Location: Koszalin

Post#5 Post from the author of the topic 17 Oct 2007 11:54   

Re: prosty program w C dla mikrokontrolera ST7FLIT19BF1Mb...


Dzięki za ten krótki programik. Za sprawą tego coś u mnie ruszyło "z kopyta". Moją naukę programowania MCU zacząłem od CCS'a dla PIC i może wydać Ci się to dość egzotyczne, ale konfiguracja I/O za sprawą operacji na rejestrach i sama konieczność tego zabiegu to dla mnie praktycznie nowość (choć faktycznie otarłem się o ten temat przed laty). Poważnie :) Wydaje mi się w tym przypadku , jesli mogę tak powiedzieć, że "zszedłem do niższego poziomu programowania" i czuję tu assembler:). No, ale nie będę usprawiedliwiać mojej niewiedzy:)

Czy możesz mi powiedzieć które rejestry, poza wspomnianymi, muszę skonfigurować na "dzień dobry" programu, aby moja aplikacja (własny PCB, nie kit) ruszyła bezproblemowo - chodzi o wewn. RC, I/O itp...

I jescze dobiazg: jak byś zaproponował obsługę timera, który powiedzmy co 20min. zmieni stan jednego z bitów portu? Przy okazji pomógłbyś mi jednocześnie przećwiczyć przerwanie czasowe:)

Będę wdzięczny, jeśli będę mógł spytać jeszcze o jakieś drobiazgi w trakcie programowania.

I jeszcze raz dzięki, służę rewanżem, niekoniecznie w technice uP:)
Back to top
   
Post new topic  Reply to topic      Main Page -> Forum Index -> Microcontrollers Generally -> prosty program w C dla mikrokontrolera ST7FLIT19BF1Mb...
Page 1 of 1
Similar topics
Interfejs ICC dla mikrokontrolera ST7FLIT19B... (3)
Pilnie potrzebny program do mikrokontrolera 8051 (1)
Zamiennik dla mikrokontrolera 80C31BCCN40 (3)
Dodatkowe 30 wejśc dla mikrokontrolera (13)
Fotorezystor dla mikrokontrolera (14)
"Prosty" program dla PIC12F675 (1)
prosty tester mikrokontrolera at90s2313 czy wszystko dobrze? (6)
PROSTY PROGRAM DLA 89C2051 GENERUJACY DWA STANY (14)
Program PIŁA dla mikrokontrolera 51 (2)
Kolorowy wyświetlacz LCD dla mikrokontrolera (6)

Page generation time: 0.091 seconds


FAQ || Administrator || Moderators || Widgets and banners || Contact
elektroda.pl topic RSS feed