STM32Butterfly2 i akcelerometr LIS35D
W ostatnim czasie bardzo dużą popularność zdobyły układy MEMS. Szczególnie widoczne są one w postaci akcelerometrów montowanych w telefonach komórkowych, umożliwiając automatyczną zmianę orientacji, obrazu i wykrywanie gestów w sterowaniu aplikacjami. Układy te można także zastosować we własnych aplikacjach.
Poniższy projekt przedstawia obsługę akcelerometru LIS35DE, jest on dostępny także w postaci modułu KAmodMEMS2 (fotografia 1). Działanie aplikacji polega na pomiarze pozycji w osiach X, Y i Z oraz prezentacji jej na wyświetlaczu pochodzącego z telefonu Nokia 3310 (w tym przypadku moduł KAmodLCD1). Komunikacja z układem LIS35DE może być realizowana przez magistrale I2C lub SPI, w przedstawionej aplikacji została wykorzystana ta pierwsza.
Fot. 1. Wygląd modułu KAmodMEMS2
Rys. 2. Schemat elektryczny modułu KAmodMEMS2
Projekt został przygotowany dla zestawu STM32Butterfly2 oraz STM32Butterfly. W obu przypadkach używane elementy są w identycznej konfiguracji, w związku z tym aplikacja nie wymaga wprowadzania dodatkowych zmian przy przejściu na drugą platformę. Projekt do poprawnego działania wymaga modułów: KAmodeMEMS2 i KAmodLCD1. Połączenie ich do zestawu ewaluacyjnego zostało przedstawione na rysunku 3. Układ LIS35D wymaga zasilania z zakresu 2,16V do 3,6V, w związku z tym zasilanie modułu nie powinno być pobierane ze złącza magistrali I2C, tylko ze złącza z wyprowadzonymi liniami portów.
Rys. 3. Zalecany sposób podłączenia modułu KAmodMEMS2 (z układem LIS35D) do STM32Butterfly2
Poniżej przedstawiono program główny aplikacji prezentującej pozycję modułu KAmodMEMS2.
int main(void)
{
//Initialize system timer
time_init();
//Initialize nokia display
nlcd_init();
//Initialize the i2c module
i2cm_init(I2C_SPEED);
//Initialize temp controller
int res = lis35_init();
if(res<0)
{
print_error(res);
for(;;); //Fail never end loop
}
else
{
nlcd_put_string( "www.boff.pl", 0, 0 );
}
for(pos_t x=0,y=0,z=0;;)
{
res = lis35_get(&x,&y,&z);
if(res%gt;=0)
{
print_value(x,y,z);
}
else
{
print_error(res);
for(;;); //Failed infinite loop
}
wait_ms(MEASURE_DELAY_TIME);
}
return 0;
}




Technologie End of Life i bezpieczeństwo sieci – wyzwania Europy związane z tzw. długiem technologicznym
Najczęstsze błędy firm przy wyborze dostawcy energii i jak ich uniknąć
Fotorezystor, czyli czujnik światła dwojakiego działania. Przykład innowacji w automatyce i elektronice możliwej dzięki technologii fotooporników 



