|
Kein Boot Hier kann man allgemeinen Small Talk halten. Es muß ja nicht immer um Boote gehen. |
|
Themen-Optionen |
#1
|
||||
|
||||
PIC programmieren
Hallo, ich möchte einen PIC 16F627 mit einer einfachen logischen Schaltung programmieren - hat jemand Erfahrung aus der Praxis damit - ich bin für alles offen, aber das I-Net bringt mich nicht weiter
__________________
gruß detlef -- der mit seiner Sonne weiter macht |
#2
|
||||
|
||||
Hast du denn überhaupt schon Erfahrungen mit Microcontrollern? Was willst du als Entwicklungsumgebung nutzen?
__________________
Gruß Christian
|
#3
|
||||
|
||||
Zitat:
ud goggle bringt mich nicht wirklich nach vorn
__________________
gruß detlef -- der mit seiner Sonne weiter macht |
#4
|
||||
|
||||
vielleicht hilft dir für den Anfang etwas einschlägige Literatur. Danach finden sich mit Google auch Antworten auf Detailfragen.Denn so pauschal wüsste ich nicht wo dein Problem momentan liegt.
__________________
Gruß Christian
|
#5
|
||||
|
||||
mein Problem ist die Zeit ich möchte so schnell wie möglich die Syntax verstehen - zumindest für meine Idee - PortA = Schalter - PortB = Ausgänge - drei Schalter sollen abgefragt werden und auf vier Ausgänge gebracht werden - Logiktabelle habe ich erstellt
__________________
gruß detlef -- der mit seiner Sonne weiter macht |
#6
|
||||
|
||||
Bevor Du da einsteigst... reicht eventuell eine diskret aufgebaute Schaltung mit Standard-IC, zB 74.. ?
Oder möchtest Du eine SPS-Funktionalität, dann kann Dir eine Siemens LOGO (PaidLink) (für wenig Geld bei Ebay, auch für 12/24V) helfen. Zeig doch mal Deine Logiktabelle !
|
#7
|
|||||
|
|||||
Zitat:
__________________
gruß detlef -- der mit seiner Sonne weiter macht
|
#8
|
||||
|
||||
Suche mal nach Adriano Board...
Damit habe ich gerade in der Schule ein Auto gebaut das einer schwarzen Linie folgt Hier mal ein link zum Hersteller aber ist alles open source. http://arduino.cc/
|
#9
|
||||
|
||||
Hi Detlef,
ist mein IC (Atmel) nicht bei Dir angekommen? Viele Grüße aus Wien, Thilo
__________________
___________________________________________ WSC Krossinsee e.V. "Im Winter boarden, im Sommer waken!"
|
#10
|
||||
|
||||
nein - sonst hätte ich mich bei Dir gemeldet
__________________
gruß detlef -- der mit seiner Sonne weiter macht |
#11
|
||||
|
||||
Hi Detlef,
bitte schick mir eine PN mit Deiner aktuellen Adresse. Ich habe es an die Adresse geschickt, unter der ich Dich schon besucht habe. Es hätte schon vor 2 Wochen bei Dir sein müssen - war ein brauner Umschlag mit Luftpolster. Ich brenne Dir morgen ein neues IC, da ich bis heute Abend in Wien bin. Den Programmcode und den Anschlußplan poste ich hier später in der Mittagspause. VG Thilo
__________________
___________________________________________ WSC Krossinsee e.V. "Im Winter boarden, im Sommer waken!" |
#12
|
||||
|
||||
Hallo,
anbei der Schaltplan für eine Atmel Atmega8-CPU und der Programmcode in C entsprechend Deiner Logiktabelle. VG Thilo Code:
#include <stdint.h> #include <string.h> #include <avr/io.h> #include <avr/interrupt.h> #include <avr/pgmspace.h> #include <avr/wdt.h> #include <ctype.h> #include "main.h" // main routine int16_t main( void ) { uint8_t inpd; cli(); // no interrupts wdt_disable(); // disable watchdog PORTD = 0b00000000; // Pull-Up disabled DDRD = (1 << DDD3) | (1 << DDD4) | (1 << DDD5) | (1 << DDD6); // Port D 3-6 (Pin 5,6,11,12) output inpd = 0; for(;;) { inpd = PIND; inpd &= 0b00000111; // mask all input lines; // LSB = S1; output starts with 4th bit if (inpd == 0b00000000){ // S1=0 S2=0 S3=0 PORTD = 0b00000000; } if (inpd == 0b00000100){ // S1=0 S2=0 S3=1 PORTD = 0b00011000; } if (inpd == 0b00000010){ // S1=0 S2=1 S3=0 PORTD = 0b00110000; } if (inpd == 0b00000110){ // S1=0 S2=1 S3=1 PORTD = 0b01000000; } if (inpd == 0b00000001){ // S1=1 S2=0 S3=0 PORTD = 0b00001000; } if (inpd == 0b00000101){ // S1=1 S2=0 S3=1 PORTD = 0b01000000; } if (inpd == 0b00000011){ // S1=1 S2=1 S3=0 PORTD = 0b01000000; } if (inpd == 0b00000111){ // S1=1 S2=1 S3=1 PORTD = 0b01000000; } } // endless loop return 0; } // end of main() VG Thilo
__________________
___________________________________________ WSC Krossinsee e.V. "Im Winter boarden, im Sommer waken!"
|
#13
|
||||
|
||||
Hi Thilo, PN ist raus . In C sieht das ja recht übersichtlich aus - ich versuch es grad mit Assembler und einem PIC16f627. Das ist jetzt nicht unbedingt verschwendete Zeit, da ich ein weiteres Projekt in Planung habe, das etwas umfangreicher wird. Vielleicht findet sich hier im noch jemand, der mit diesem MC spielt
__________________
gruß detlef -- der mit seiner Sonne weiter macht |
#14
|
||||
|
||||
Hi Detlef,
anbei das C-Programm für den PIC 16F627. Download für den compiler schicke ich Dir per PN. Rest am Telefon. VG Thilo Code:
/* POSI-Beleuchtung Compiler: CC5X IC: PIC 16F627 Port I/O Name A.0 I S1 A.1 I S2 A.2 I S3 A.3 I - B.0 O A1 B.1 O A2 B.2 O A3 B.3 O A4 B.4 O - */ #pragma chip PIC16F627 /* IO-CONFIGURATION: */ #define Config_portA 0xFF #define Init_portA 0x00 #define Config_portB 0x00 #define Init_portB 0x00 #define Config_comp 0x07 #pragma bit S1 @ PORTA.0 #pragma bit S2 @ PORTA.1 #pragma bit S3 @ PORTA.2 #pragma bit A1 @ PORTB.0 #pragma bit A2 @ PORTB.1 #pragma bit A3 @ PORTB.2 #pragma bit A4 @ PORTB.3 void main ( void) { CMCON = Config_comp; PORTA = Init_portA; TRISA = Config_portA; PORTB = Init_portB; TRISB = Config_portB; while (1) { if ((S1 == 0) && (S2 == 0) && (S3 == 0)) { A1 = 0; A2 = 0; A3 = 0; A4 = 0; } if ((S1 == 0) && (S2 == 0) && (S3 == 1)) { A1 = 1; A2 = 1; A3 = 0; A4 = 0; } if ((S1 == 0) && (S2 == 1) && (S3 == 0)) { A1 = 0; A2 = 1; A3 = 1; A4 = 0; } if ((S1 == 0) && (S2 == 1) && (S3 == 1)) { A1 = 0; A2 = 0; A3 = 0; A4 = 1; } if ((S1 == 1) && (S2 == 0) && (S3 == 0)) { A1 = 1; A2 = 0; A3 = 0; A4 = 0; } if ((S1 == 1) && (S2 == 0) && (S3 == 1)) { A1 = 0; A2 = 0; A3 = 0; A4 = 1; } if ((S1 == 1) && (S2 == 1) && (S3 == 0)) { A1 = 0; A2 = 0; A3 = 0; A4 = 1; } if ((S1 == 1) && (S2 == 1) && (S3 == 1)) { A1 = 0; A2 = 0; A3 = 0; A4 = 1; } } }
__________________
___________________________________________ WSC Krossinsee e.V. "Im Winter boarden, im Sommer waken!"
|
#15
|
|||||
|
|||||
Zitat:
__________________
Gruß aus Ulm Claus
|
#16
|
|||||
|
|||||
Zitat:
http://www.mikrocontroller.net und diese http://www.roboternetz.de und andere - ein Buch habe ich nun auch Jetzt versuch ich mal Thilo's Programm zum Laufen zu bewegen
__________________
gruß detlef -- der mit seiner Sonne weiter macht
|
|
|