-
Data: 2017-02-14 08:30:26
Temat: Programowanie AT89Cxx51
Od: Atlantis <m...@w...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Wiem, że mikokontrolery oparte na 8051 powoli wychodzą z mody, ale
obecnie muszę napisać nowy wsad do istniejącego urządzenia. Nie mam
zamiaru uczyć się assemblera tej rodziny ani bawić się w BASCOM-ie, więc
skorzystam z C. W czasach świetności tych MCU powszechnie korzystano z
kompilatora Keil, ja jednak postawię na SDCC - z tego co widzę,
podobieństwa są dość spore, przynajmniej na pierwszy rzut oka. Proste
projekty przykładowe się kompilują.
Mam jednak kilka pytań:
1) Widzę, że możliwy jest dostęp do pinów GPIO za pomocą konstrukcji w
rodzaju Px_y, gdzie x oznacza numer portu, a y numer pinu w porcie.
Można dzięki temu przypisywać wartość bezpośrednio do pinu, (np.
P0_1=1). Czym jest taka konstrukcja? Można zdefiniować jakąś zmienną
wskaźnikową, która umożliwi mi dostęp do tak zdefiniowanego pinu?
Chciałbym przeportować pewną prostą bibliotekę do obsługi przycisków.
Dobrze by było, gdybym mógł przekazać informację o pinie właśnie w ten
sposób, jako argument funkcji, a potem trzymać ją w strukturze
opisującej przycisk.
2) Czy możliwe jest korzystanie z portów w sposób taki, jak w AVR-ach?
To znaczy coś w rodzaju P0 |= (1<<2).
3) Dobrze rozumiem, że te mikrokontrolery nie posiadają żadnych
rejestrów konfiguracyjnych, jeśli chodzi o kierunek pinu i działają
podobnie do prostych ekspanderów I2C?
Następne wpisy z tego wątku
- 14.02.17 09:31 MKi
- 14.02.17 10:03 Zbych
- 14.02.17 10:55 J.F.
- 14.02.17 11:24 w systemie siła 'PO/EU
- 15.02.17 06:16 Atlantis
- 15.02.17 09:56 MKi
- 15.02.17 13:27 Marek
- 16.02.17 08:33 Atlantis
- 16.02.17 08:40 Zbych
- 16.02.17 09:18 Atlantis
- 20.02.17 18:36 Atlantis
- 20.02.17 19:04 J.F.
- 23.02.17 08:38 MKi
- 23.02.17 10:20 Piotr Gałka
- 23.02.17 21:07 Zbych
Najnowsze wątki z tej grupy
- Re: Kompensacja mocy biernej przy 230VAC
- Totaliztyczny obowiązek naprawy maszyn i urządzeń
- Niby uziom ale nie
- Położyłem dwa telefony obok siebie
- Przekaźnik na szynę DIN (?)
- Taśma LED
- Jak odróżnić myjki wibrujące od ultradźwiękowych.
- Ledy na wyłączniku czasowym błyskają
- Re: Kompensacja mocy biernej przy 230VAC
- Re: Kompensacja mocy biernej przy 230VAC
- RCD wybija
- Re: Kompensacja mocy biernej przy 230VAC
- Łożysko ślizgowe - jaki olej
- Re: Kompensacja mocy biernej przy 230VAC
- Re: Kompensacja mocy biernej przy 230VAC
Najnowsze wątki
- 2025-04-12 Katowice => Key Account Manager (ERP) <=
- 2025-04-12 Weryfikacja PESEL na listach poparcia kandydata
- 2025-04-12 mój pierwszy miernik grubości lakieru
- 2025-04-12 China-Kraków => Production Coordinator / Representant Product Dev <=
- 2025-04-12 Warszawa => Junior Rekruter <=
- 2025-04-12 Gliwice => Business Development Manager - Dział Sieci i Bezpieczeńst
- 2025-04-12 Warszawa => Account Manager - Sprzedaż Usług Rekrutacyjnych <=
- 2025-04-12 Kraków => Backend/Data Engineer (Java, Scala or Python) <=
- 2025-04-12 Kraków => Backend/Data Engineer (Java, Scala lub Python) <=
- 2025-04-12 Kraków => Engineering Manager (Clojure, Java) <=
- 2025-04-12 Re: [Media] Wysoki Sąd wskazał (Mentzenom) jak WŁAŚCIWIE dokopywać kandydatom koalicji tuskiej :-)
- 2025-04-12 Warszawa => Developer Microsoft Dynamics 365 Finance & Operations (D36
- 2025-04-12 Bateria
- 2025-04-12 Warszawa => MENA New Business Manager <=
- 2025-04-12 Warszawa => SQL Developer <=