Pytania, kody i porady dotyczące nie tylko Bascom.
-
marekszy
- Posty: 99
- Rejestracja: 20 lis 2016, 20:21
Post
autor: marekszy » 03 lis 2018, 22:59
Witam, mam problem z Atmegą328p, mam problem z ustawieniem portu C.0 do C.3, mam tam przyciski .
Config Portc = &B00110000 : Portc = &B00001111
Czy trzeba tam coś wyłączyć programowo ,w atmega32 na przykład trzeba wyłączyć jtag aby używać jako I/0
-
niveasoft
- Posty: 1213
- Rejestracja: 17 sie 2015, 12:13
-
Kontakt:
Post
autor: niveasoft » 04 lis 2018, 3:27
Tak jak masz to powinno działać tylko upewnij się, że sprawdzając stan przycisków odczytujesz rejestr PIN a nie PORT bo mi się ostatnio zdarzył ten szkolny błąd mimo iż myślałem, że to już za mną
Ahahaha
Więc jeden przycisk lub cały port:
$regfile = "m328pdef.dat"
$crystal = 16000000
$hwstack = 40
$swstack = 16
$framesize = 64
Config Portc = &B00110000 : Portc = &B00001111
If Pinc.0 = 0 Then
'jeden pin
End If
'cały port na raz
Dim Stan_sw As Byte
Stan_sw = Pinc And &B00001111
If Stan_sw <> &B00001111 Then
Select Case Stan_sw
Case &B00000111
'przycisk C3
Case &B00001011
'przycisk C2
Case &B00001101
'przycisk C1
Case &B00001110
'przycisk C0
Case &B00001001
'dwa na raz C1+C2
End Select
End If
-
marekszy
- Posty: 99
- Rejestracja: 20 lis 2016, 20:21
Post
autor: marekszy » 04 lis 2018, 14:28
Dzięki za odpowiedź, programowo miałem wszystko ok tylko walnąłem się na płytce i wszystkie SW były zwarte do masy
.Dzięki Twojemu wyjaśnieniu przestałem kombinować w programie i wziąłem się za szukanie błędów na płytce.