Skocz do zawartości

Początki programowanie.


Lyserg

Pomocna odpowiedź

$regfile = "m16def.dat"                                     'najpierw określamy typ proca
$crystal = 16000000                                         'definiujemy z jakim taktowaniem będzie pracował


Config Portd = &B1111110
      Portd = &B0000000                                    'wszędzie stan spoczynkowy-0



Do                                                         'pętla nieskończona

 If Pind.7 = 1 Then                                        'jeżeli przycisk 1 wciśnięty
  Portd.6 = 1
Else
   Portd.6 = 0
End If                                                      'koniec bloku warunkowego

Loop                                                       'koniec pętli

End                       

Zastosowałem taki program i dalej nic 🙁. Jedynie gdy wsadzę niebieską diodę i dotknę palcem rezystora przed diodą to świeci bardzo małym światłem.

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Dalej nic. Tak wygląda aktualnie program:

$regfile = "m16def.dat"                                     'najpierw określamy typ proca
$crystal = 16000000                                         'definiujemy z jakim taktowaniem będzie pracował


Config Pind.7 = Input
Portd.7 = 1
Config Pind.6 = Output                                      'wszędzie stan spoczynkowy-0



Do                                                         'pętla nieskończona

 If Pind.7 = 1 Then                                        'jeżeli przycisk 1 wciśnięty
  Portd.6 = 1
Else
   Portd.6 = 0
End If                                                      'koniec bloku warunkowego

Loop                                                       'koniec pętli

End              
Link do komentarza
Share on other sites

Dalej nic. Tak wygląda aktualnie program:
$regfile = "m16def.dat"                                     'najpierw określamy typ proca
$crystal = 16000000                                         'definiujemy z jakim taktowaniem będzie pracował


Config Pind.7 = Input
Portd.7 = 1
Config Pind.6 = Output                                    'wszędzie stan spoczynkowy-0



Do                                                         'pętla nieskończona

 If Pind.7 = 1 Then                                        'jeżeli przycisk 1 wciśnięty
  Portd.6 = 1
Else
   Portd.6 = 0
End If                                                      'koniec bloku warunkowego

Loop                                                       'koniec pętli

End              

W twoim programie znalazłem kilka błędów

np

Config Pind.6 = Output   

a powinno być

Config Portd.6 = Output

z twojego programu wynika że przycisk podłączony pod pind.7 zwiera do GND jesli tak to powinno być

If Pind.7 = 0 Then                                        'jeżeli przycisk 1 wciśnięty
  Portd.6 = 1
Else
   Portd.6 = 0
End If 

A jeśli do VCC to

Config Pind.7 = Input
Portd.7 = 0
Config Pind.6 = Output  

jeszcze dobrze by było jak by programowo pind.6 podciągnąć do GND

Mam nadzieję że pomogłem

Link do komentarza
Share on other sites

jeszcze dobrze by było jak by programowo pind.6 podciągnąć do GND

Mam nadzieję że pomogłem

Co masz na myśli ? Po Twoich radach dalej nic nie ruszyło. Ostatecznie kod wygląda tak:
$regfile = "m16def.dat"                                     'najpierw określamy typ proca
$crystal = 16000000                                         'definiujemy z jakim taktowaniem będzie pracował


Config Portd.7 = Input
Portd.7 = 1
Config Portd.6 = Output                                     'wszędzie stan spoczynkowy-0



Do                                                         'pętla nieskończona

If Pind.7 = 0 Then                                          'jeżeli przycisk 1 wciśnięty
  Portd.6 = 1
Else
   Portd.6 = 0
End If                                                      'koniec bloku warunkowego

Loop                                                       'koniec pętli

End                                                         'koniec programu

Nie mam pojęcia co może być nie tak. Schemat sprawdzałem już parę razy.

Link do komentarza
Share on other sites

Lyserg, widzę, że nie masz zielonego pojęcia o tym co robisz, niezależnie czy to jest program czy sprzęt. Korzystasz z tej wtykanej płytki, czy sprawdziłeś miernikiem czy połączenia są poprawne? Czy nie pomyliłeś się gdzieś? Przecież co chwila ktoś na forum pisze, że te płytki mu nie stykają, pomylił się, albo linie wewnątrz tej płytki stykają się inaczej niż ktoś myślał. Czy masz pin od przycisku podciągnięty do Vcc? Jeśli nie (a nawet jeśli masz podciąganie do Vcc na Portd.7) to kod powinien wyglądać tak:

$regfile = "m16def.dat"                                     'najpierw określamy typ proca
$crystal = 16000000                                         'definiujemy z jakim taktowaniem będzie pracował


Config Portd.7 = Input
Portd.7 = 1
Config Portd.6 = Output                                     'wszędzie stan spoczynkowy-0



Do                                                         'pętla nieskończona

Set Portd.7                                              'włączenie wewnętrznego podciągania do Vcc na Portd.7  
If Pind.7 = 0 Then                                          'jeżeli przycisk 1 wciśnięty
  Portd.6 = 1
Else
   Portd.6 = 0
End If                                                      'koniec bloku warunkowego

Loop                                                       'koniec pętli

End                                                         'koniec programu
Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.