LED auf Knopfdruck leuchten lassen in C

Im Unterforum Microcontroller - Beschreibung: Hardware - Software - Ideen - Projekte

Elektronik Forum Nicht eingeloggt       Einloggen       Registrieren




[Registrieren]      --     [FAQ]      --     [ Einen Link auf Ihrer Homepage zum Forum]      --     [ Themen kostenlos per RSS in ihre Homepage einbauen]      --     [Einloggen]

Suchen


Serverzeit: 22 12 2025  20:05:34      TV   VCR Aufnahme   TFT   CRT-Monitor   Netzteile   LED-FAQ   Oszilloskop-Schirmbilder            


Elektronik- und Elektroforum Forum Index   >>   Microcontroller        Microcontroller : Hardware - Software - Ideen - Projekte

Gehe zu Seite ( Vorherige Seite 1 | 2 )      


Autor
LED auf Knopfdruck leuchten lassen in C
Suche nach: led (32775)

    







BID = 870633

basti2s

Gelegenheitsposter



Beiträge: 94
Wohnort: Leutkirch
 

  


Glaube ich jetzt weniger, da dies sogar der Microchip Support bestätigt hat. Auf einem anderem Pin funktioniert mein Programm einwandfrei.

BID = 870649

Ltof

Inventar



Beiträge: 9386
Wohnort: Hommingberg

 

  

Das originale Demoprogramm des 16F690 beim PICKit2 hat ein Lauflicht, das auf Knopfdruck an RA3 die Richtung wechselt. Das würde gar nicht funktionieren, wenn RA3 durch das angesteckte PICKit2 blockiert wäre.
(Lesson 7 im Dokument "Low_Pin_Count_Demo_Board.pdf")

Und:
Das steht nicht nur da drin, sondern funktioniert auch.

_________________
„Schreibe nichts der Böswilligkeit zu, was durch Dummheit hinreichend erklärbar ist.“
(Hanlon’s Razor)

BID = 870879

basti2s

Gelegenheitsposter



Beiträge: 94
Wohnort: Leutkirch

kann sein dass ich vermutlich eine alte Revision habe.

Zum Schluss noch eine kurtze Frage, ich möchte einen kleinen Countdowntimer mit dem Timer0 oder 1 programmieren, funktioniert allerdings nicht, ich vermute, dass die Frequenz einfach zu schnell ist, und ich es garnicht mitbekomme. Wie kann ich denn den Takt runtersetzen?

BID = 870901

Ltof

Inventar



Beiträge: 9386
Wohnort: Hommingberg


Zitat :
basti2s hat am 28 Jan 2013 18:50 geschrieben :

kann sein dass ich vermutlich eine alte Revision habe.

Daran liegt es nicht. Mein PICKit2 ist auch uralt - die Firmware ist allerdings die letzte veröffentlichte Version.

Dein Taster hätte auch nicht funktioniert, wenn das Demo-Board anders als über PICKit versorgt worden wäre. RA3 muss extra als digital Input im "Configuration Word" definiert werden bzw. "MCLRE_off". Ansonsten ist der Pin der Reset. Wenn Du keine Lust hast, Dich mit den Grundlagen auseinanderzusetzen, wirst Du immer wieder auf die Nase fallen und ein PIC macht für Dich nicht nachvollziehbare Sachen.

Ich würde Dir auch dringend empfehlen, mal die Assembler-Beispiele von Sprut auszuprobieren und vor allem: zu verstehen. Einfach in C draufloszuprogrammieren geht in die Hose.

_________________
„Schreibe nichts der Böswilligkeit zu, was durch Dummheit hinreichend erklärbar ist.“
(Hanlon’s Razor)

BID = 871878

Ltof

Inventar



Beiträge: 9386
Wohnort: Hommingberg

So, hier eine auf's Wesentliche reduzierte Assembler-Version eines "LED-reagiert-auf-Knopfdruck-an-RA3-Programms". Das Ganze spielt auf dem "Low pin count demo board" an PICkit2! Der Haken bei "/MCLR" darf nicht gesetzt sein. Das Programm belegt gerade mal 8 Zellen im Programmspeicher.

Es leuchten zwei LEDs. Drückt man auf den Taster, gehen die LEDs aus und zwei andere gehen an. Würde man, wie bei Basti auf die Konfiguration verzichten bzw. "MCLRE_ON" setzen, passiert etwas Anderes: Es gehen alle LEDs aus, weil der µC in den Reset geht.

Bastis Programm würde scheinbar (nicht "anscheinend"!) funktionieren, wenn die LED z.B. immer an ist und auf Knopfdruck ausgehen soll.



Code :


#include <p16F690.inc>
__config (_INTRC_OSC_NOCLKOUT & _WDT_OFF & _PWRTE_OFF & _MCLRE_OFF & _CP_OFF & _BOR_OFF & _IESO_OFF & _FCMEN_OFF)

org 0
Start
bsf STATUS,RP0
clrf TRISC
bcf STATUS,RP0

Loop
movlw 0x0A
btfsc PORTA,3
movlw 0x05
movwf PORTC
goto Loop

end



Ich habe das nicht für Basti gemacht (der glaubt mir sowieso nicht), sondern für zufällige Leser die wirklich etwas lernen wollen. Und um zu zeigen, dass der Taster an PICkit2 sehr wohl funktioniert.

Noch etwas:
In meinem Beispielprogramm habe ich bewusst auf Initialisierungen von Port A verzichtet, um zu zeigen wo es wirklich klemmt. Beim Einsatz eines PICs sollte man aber genau nachschauen, wie man einen Port zu initialisieren hat, damit er auf die richtige Funktionsweise eingestellt wird. Hier ist das aber noch eine Ebene tiefer angesiedelt (Reset-Pin).

_________________
„Schreibe nichts der Böswilligkeit zu, was durch Dummheit hinreichend erklärbar ist.“
(Hanlon’s Razor)


Vorherige Seite      
Gehe zu Seite ( Vorherige Seite 1 | 2 )
Zurück zur Seite 1 im Unterforum          Vorheriges Thema Nächstes Thema 


Zum Ersatzteileshop


Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation!
Impressum       Datenschutz       Copyright © Baldur Brock Fernsehtechnik und Versand Ersatzteile in Heilbronn Deutschland       

gerechnet auf die letzten 30 Tage haben wir 18 Beiträge im Durchschnitt pro Tag       heute wurden bisher 6 Beiträge verfasst
© x sparkkelsputz        Besucher : 187883807   Heute : 16138    Gestern : 15438    Online : 428        22.12.2025    20:05
7 Besucher in den letzten 60 Sekunden        alle 8.57 Sekunden ein neuer Besucher ---- logout ----viewtopic ---- logout ----
xcvb ycvb
0.0285799503326