ATNEL tech-forum https://forum.atnel.pl/ |
|
Sterowanie dużą ilością diod i dyrektywa #define https://forum.atnel.pl/topic18817.html |
Strona 1 z 1 |
Autor: | Kiriot_Onky [ 16 lip 2017, o 01:04 ] |
Tytuł: | Sterowanie dużą ilością diod i dyrektywa #define |
Witam, mam takie pytanko odnoszące się głównie do dyrektywy #define. Mam na swojej płytce stykowej podłączone do ATmegi16a 26 różnokolorowe diody i właśnie chciałbym migać każdą w określony sposób (niekoniecznie taki sam) no i właśnie definiuje 26 razy każdej diody używając #define no a potem 26 razy makro które zmienia stan każdej z nich i potem jeszcze 26 razy ustawiam piny jako wejściowe no tak "łopatologicznie" zrobione i działa. Chciałbym to jednak jakoś maksymalnie uprościć. Jedyne co przychodzi mi na myśl to oddzielna tablica dla każdego portu i metoda tablicowo-matematyczna Pana Mirka. Ale czy można jakoś prościej ? |
Autor: | mirekk36 [ 16 lip 2017, o 07:42 ] |
Tytuł: | Re: Sterowanie dużą ilością diod i dyrektywa #define |
Kiriot_Onky napisał(a): Jedyne co przychodzi mi na myśl to oddzielna tablica dla każdego portu i metoda tablicowo Kiriot_Onky napisał(a): Ale czy można jakoś prościej ? zapewniam cię - tak jest najprościej i najszybciej, bo działasz na pamięci RAM i tylko wyrzucasz tablice na porty. To może się wydawać trudne tylko wtedy gdy ktoś jeszcze nie poćwiczył i nie zapoznał się dobrze z tablicami w C, a to niestety jest podstawa ... Więc ćwicz - masz ku temu właśnie super okazję Bo oczywiście można jeszcze zastosować inne rzeczy jak np rejestry przesuwne i tylko 3 piny procka nawet na 100 diod LED albo i więcej, można zastosować MAGIC LEDy i tylko jeden pin procka - ale wciąż i tak i tak - będą potrzebne tablice |
Autor: | wojciechgorzolka [ 16 lip 2017, o 09:08 ] |
Tytuł: | Re: Sterowanie dużą ilością diod i dyrektywa #define |
rejestry przesuwne będą super rozwiązaniem. Sam zabieram się za miganie diodami, oraz za multipleksowanie i z poradników Pana Mirka wynika,że z rejestrami przesuwnymi będzie najprościej, ponieważ wystarczą trzy piny z uC. :):) |
Strona 1 z 1 | Strefa czasowa: UTC + 1 |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |