Diese Seite enthält einfache Beispiele für die Anwendung von PICs. Diese sind weniger als praktische Anwendungen gedacht (eine Uhr hat ja schon jeder) sondern sie sollen als Lernübungen dazu dienen, sich mit den Prozessoren vertraut zu machen.
Titel | Was wird gemacht | Übungsschwerpunkt | PIC-Typ |
Lauflicht | 8 Leuchtdioden bilden ein einfaches Lauflicht | Pin-Einstellung, Warteschleifen, Zyklen | 16F84 |
Tastatur | Eine Matrixtastatur wird abgefragt | In- und Out-Befehle | 16F84 |
Tastatur 2 | Eine Matrixtastatur wird eleganter abgefragt | In- und Out-Befehle | 16F84 |
LCD-Display | Darstellung auf einem intelligenten LCD-Display | Dot-Matrix-Display-Ansteuerung | 16F84 |
Tastatur und LCD an einem Port | die Verbindung von Tastatur und LCD-Beispiel | #define | 16F62x |
Blinklicht mit 10F202 | eine LED blinkt | cblocks ... endc, 12-Bit-PIC, OSCCAL | 10F202 |
Rotary-Encoder | ein Rotary-Encoder wird abgefragt | Rotary-Encoder | 16F62x |
'Power-Sequencer' | 5 Leitungen werden nacheinander eingeschaltet | Timer, Interrupt, PIC12F6xx, SLEEP | 12F629 |
LCD-Uhr mit 32kHz-Quarz | eine einfache Uhr mit LCD-Display | Timer, Interrupt, LP-Mode | 16F62x |
LCD-Uhr (mit 10 MHz-Quarz) | eine einfache Uhr mit LCD-Display | Timer, Interrupt | 16F84 |
LED-Ziffernanzeige | eine 7-Segment LED-Ziffernanzeige wird angesteuert | Timer, Interrupt, Datentabelle | 16F84 |
LED-Stopp-Uhr | Eine Stopp-Uhr mit 7-Segment Ziffernanzeige | Timer Interrupt, LED-Display | 16F84 |
LED-Frequenzzähler 1 |
ein 4-stelliger Frequenzzähler für 1..50 MHz | Timer Interrupt, LED-Display | 16F84 |
LED-Frequenzzähler
2 |
ein 4-stelliger Frequenzzähler für 10..9999 Hz | Capture-Modul, Bibliothek, Makros |
16F62x |
Rechteckgenerator |
einfacher Rechteckgenerator mit
synchronem seriellem Interface (Schieberegister) |
Interrupts |
16F62x |
RS-232-Interface per Software | eine RS-232-Schnittstelle mit einem PIC16F84 | RS232 | 16F84 |
Schwellwertschalter
mit
ADC |
analoger Spannungspegel schaltet
eine LED |
ADC |
12F675 |
Spannungsmessung mit 16F876 | eine Eingangsspannung (0..5V) wird gemessen und mit LEDs angezeigt | ADC | 16F87x |
spannungsgesteuerte PWM | eine Eingangsspannung (0..5V) steuert das Tastverhältnis einer Rechteckschwingung | ADC, PWM | 16F87x |
spannungsgesteuertes
Sinus-Oszillator
(VCO) |
eine Eingangsspannung (0..5V) steuert die Frequenz einer Sinuswelle | DAC, ADC, Datentabelle,
PCLATCH |
16F87x |
Voltmeter mit LCD | eine Eingangsspannung (0..5V) wird in Millivolt umgerechnet und am LCD angezeigt | 16-Bit-Berechnungen, BCD | 16F87x |
ELKO-Kapazitäts-Messer | Messgerät für die Kapazität von ELKOS von 10µF .. 65000µF | ADC, 16-Bit-Berechnungen, BCD | 16F87x |
Sägezahn mit Referenzspannungsquelle | mit der Referenzspannungsquelle des 16F628 wird ein grober Sägezahn ausgegeben | Vref | 16F62x |
Komparator als 10-Bit-ADC | PICs ohne ADC-Hardware können Spannungen mit dem Komparator messen | Komparator | 16F62x |
EEPROM lesen | ein LED-Muster wird aus dem EEPROM gelesen und angezeigt | EEPROM | 16F62x |
PWM
mit Tasten und Encoder |
ein PWM-Signal wird mit Tasten
oder Rotaryencoder eingestellt |
Timer, Interrupt, EEPROM, PWM,
Rot.-Encoder |
12F683 |
Rotary-Encoder,
flexibel |
in Rotary-Encoder wird
abgefragt, dieses mal etwas flexibler |
Rotary-Encoder, Datentabelle |
16F62x |
RC-5-IR-Fernbedienung | Fernbedienung für Phillips-Geräte | SLEEP, Warteschleifen | 16F62x |
LCD
mit
speziellen
Symbolen |
Anzeige selbst entworfener
Symbole am Dotmatrixdisplay |
Dot-Matrix-Display-CGRAM, Datentabelle | 16F62x |
Thermometer mit I2C-Sensor | Emulation eines I2C-Interfaces per Software | I2C | 16F62x |
David Taids WALK | 4 Leuchtdioden bilden ein einfaches Lauflicht | Programmanalyse, WDT | 16F84 |
Autor: sprut
letzte Änderung: 17.12.2010