Forum: www.mikrocontroller.net picpicpicpicpicpicpicpicpicpicpic


von ghgh (Gast)


Lesenswert?

Wo bleibt das Furum für PICS ????
Ist die lücke schlecht hin. Habe noch kein gutes im Internet gefunden. 
Bin stark dafür das das Forum um ein weiteres erweitert wird ...

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Es gibt doch ein "Allgemein"-Forum... du kannst dort gerne deine 
PIC-Fragen stellen.

von Peter D. (peda)


Lesenswert?

Ich vermute, das Problem bei den PICs ist, daß es so viele 
unterschiedliche Befehlssätze und Typen gibt.

Ein Programm für einen bestimmten PIC geschrieben, läuft eben nur auf 
diesem und keinen anderen.

Bei den 8051 und den AVRs sind Routinen in der Regel typunabhängig und 
beliebig verschiebbar und beeinflussen sich nicht gegenseitig.

Da macht es dann auch Sinn Funktionen isoliert zu betrachten und Fragen 
dazu zu beantworten, auch wenn man einen anderen Chip verwendet.

Auch allgemein verwendbare Beispielroutinen zu veröffentlichen macht 
Sinn.


Bei den PICs habe ich oft den Eindruck, die Programme sind alle aus 
einem Guß und wirklich nur für die vorgesehene Anwendung auf einem 
bestimmten Typ ausgelegt.


Anders gesagt, bei einem PIC-Forum würden würden die Leute oftmals 
aneinander vorbeireden, wenn sie nicht den genau gleichen Typ benutzen.


Das PIC-Forum ist wirklich nicht sehr gut im Vergleich zu dem 
8051-Forum:

http://www.ml-electronics.co.uk/picboard.htm

http://www.8052.com/forum/


Peter

von Helga (Gast)


Lesenswert?

ich wäre auch für dieses Forum es geht ja auch darum um fehler zu 
vermeiden die andere schon gemacht haben.

von Bernhard T (Gast)


Lesenswert?

Ich glaube,
das sehr viele Leser dieser Seiten früher mal mit PIC's gearbeitet haben 
Bzw. das gelegentlich noch tun. Aber gerade bei Pic's währe es 
vorteilhaft wenn ein Fragender Typ, verwendete Entwicklungstools und 
Quelltext angeben würden. Zumindest bei Fragen zu MPASM würden sich 
sicher einige Antworten finden.

von RoBSki! (Gast)


Lesenswert?

PIC 'old skool'
AVR rules ! :)

Sorry..

von Marko (Gast)


Lesenswert?

Ihr hab ein kleines PIC-Forum gefunden.
Ist glaube ich in der Anfangsphase, aber OK.

www.fernando-heitor.de

Marko

von torsten (Gast)


Lesenswert?

och, avr rult mehr!

:-) :-)

von Gery B (Gast)


Lesenswert?

Hallo

Kann mir da bitte jemand weiter helfen. Ich habe einen Pic16F877
Experimentierboard. Angeschlossen ist nur der Quarz mit 20 MHz und an
PortB (Pin RB0) eine Led mit Widerstand:) Ich habe versucht, eine LED
an Port B zum leuchten zu bringen. Nach erfolgreicher Programmierung
startet der Pic aber nicht. Der Oszillator funktioniert einwandfrei.
Ebenso ist die Spannungsversorgung i.O.

Weiss da jemand vieeleicht eine Lösung.

Vielen Dank im Voraus
Geri

von HDW (Gast)


Lesenswert?

@ Gery B: Das sollte doch einfach gehen.
Ersteinaml muss der PIC mit einem Takt und einem pullup an MCLR besetzt
werden.
Die Led sollte über ein Wid. an z.B. RB0 mit der Anode angeschlossen
sein. Kathode an Masse.
Per Software PORTB, 0 setzten.

Was ist denn der genaue Fehler?. Led geht nicht an?

Vielleicht nicht in bank 1 auf TRIS für Ausgang von PORTB zugegriffen?

von brick top (Gast)


Lesenswert?

Hi (Gery B)

Ich habe einen 16F871 und bräuchte unbedingt mal ein gutes
Pic-Experimentierboard. Wo kann man sowas kaufen? Ich dachte so an max
150 Euro

von o_jee (Gast)


Lesenswert?

ein board mit 877  und 874 zum selber machen:
http://home.foni.net/~helmutholm/

von babu (Gast)


Lesenswert?

Hallo brick top,

das Millenium Board von Blöuebird Electronics ist wirklich klasse.
Gibt es bei Farnel. Kostet so ca 150 €, hat aber schon  ne Menge
drauf.

biss denn

von Achim Gayer (Gast)


Lesenswert?

Ich habe mir das EasyPIC über Internet bestellt. Firma in Belgrad.
100 Euro. Alles drauf: Buttons, LED, AD. Wer will kann auch noch
Display zukaufen. 4 Sockel (40/28/18/8 pin).
Klappt prima. Wird über RS232 programmiert, also keine Zusatzgeräte
nötig. Kommt mit PIC16F877.

Google einfach mal nach 'EasyPIC'.

von Achim Gayer (Gast)


Lesenswert?

Habe gerade mal gegoogelt, um zu sehen, ob mein Tip zum richtigen
Ergebnis führt. Da kommt so mancher porn raus.
Deshalb hier der Link, dann gibt das kein Theater:

http://www.mikroelektronika.co.yu/english/product/tools/piceasy.htm

von Gerhard (Gast)


Lesenswert?

Hallo Achim

Interessanter Link. Vielen Dank. Inzwischen habe ich das Problem
identifiziert. Ein Widerständchen zwischen RB3 und Ground. Sonst
funktioniert die Programmierung des Pic16F877 nicht. Inzwischen, ein
tolles Board. Ja, diese Kleinigkeitgen...

Beste Grüsse
Gerhard

von TomTec (Gast)


Lesenswert?

Hallo!
Ich habe ein Problem mit einem PIC 18F452 ich denke es lieg an der
Taktversorgung und zwar löst er ständig ein Reset aus. Die Zeiten
zwischen den Resets sind völlig zufällig und liegt bei ca. ein paar ms
bis eine Sec. Ich hab schon einiges ausprobiert doch es ändert sich
nicht viel. An besten läuft er bei 10MHz zwei 33pF Kondensatoren und
einem 30 Ohm Wiederstand. Falls irgent Jemand erfahrungen damit hat,
bitttteeeee Hiiilllffffeeeee.

von Christian (Gast)


Lesenswert?

Hallo TomTec,

glaube nicht das es an der Taktversorgung liegt, wahrscheinlich läuft
der WatchdogTimer und löst ständig einen Reset aus!!!!! Entweder
ausschalten oder im Programm rücksetzen!!!


Gruß

Christian

von Steffen Reschke (Gast)


Angehängte Dateien:

Lesenswert?

12F675
Will an GPIO2 eine Spannung auswerten (0,6-2,4V)und mit dieser Spannung
das PWM-Verhältnis an GPIO1 nachregeln, soll eine AFC für einen Tuner
werden (es kommen also noch Berechnungen hinzu). Die konstante
PWM-Frequenz erzeuge ich über TMR0 und Interrupt. Für die Analogabfrage
darf ich also keinen Interrupt verwenden. Funktioniert alles aber nur
für eine unbestimmte Zeit (2-10sek). Irgendwann schlägt die
PWM-Frequenz (also die vom Interrupt erzeugte) in eine unkontrollierte
Schwingung um. Die Analogauswertung gibt mir im Moment nur bei
gesetzten Bit 7 im ADRESL ein Signal an GPIO4 aus.
Auch dieser Ausgang funktioniert dann nich mehr richtig. Vielleicht
kann sich ja mal jemand den Quellcode im Anhang anschauen (ist glaub
ich gut dokumentiert). Verträgt sich eventuell der TMR0 Interrupt mit
der Analogverarbeitung nicht richtig ??
Gruß Steffen

von Guest (Gast)


Lesenswert?

@ Peter Dannegger:
 Hast du überhaupt schon mal was mit Pic´s gemacht, ich denke nicht, so
wie du hier Schreibst. Es liegt am programmierer wie übersichtlich und
portabel man sein Programm schreibt, egal ob AVR, Pic oder sonst ein
Controller.

von Weihnachtsmann (Gast)


Lesenswert?

Nieder mit den PICs ich hasse PICs !!!

Ein HOCH auf AVR !!!

Spass bei Seite, ich mag einfach keine PICs

Gruss

Weihnachtsmann

von T.Stütz (Gast)


Lesenswert?

@Weihnachtsmann
Hier wollen Leute Hilfe finden und nicht dein Gemaule
das gehört (wenn überhaupt) ins OffTopic.
Wie arrogant muß mann/frau sein sowas zu posten ?
Wenn du schon sagst das xxx besser wie yyy ist,
dann poste auch rein wie du yyy auf seiner Hardware integrierst
und für seine Anwendung anpaßt.
Außerdem: für manche (kleinere) Aufgaben ist ein AVR einfach zu
groß/teuer/überdiemensioniert - Also welchen Vorteile hat er wenn er
einen AVR verwendet (er muß dann ja sein ganzes Design umschmeißen).

Bleibt bitte alle mal ein bischen bei der Sache.

(bin echt langsam SAUER, fast in jedem Thread nur gemaule)

Gruss

von René König (Gast)


Lesenswert?

> Außerdem: für manche (kleinere) Aufgaben ist ein AVR einfach zu
> groß/teuer/überdiemensioniert

Dazu sollten wir erstmal klären, was in Deinen Augen
'groß/teuer/überdimensioniert' ist. Die Tinys 11/12/13/15 sind doch
auch nicht gerade groß, wenn auch größer als beispielsweise ein 10F200.
Zumindest der 11er ist aber wenigstens billiger, und schneller ist er
auch noch.

Allerdings gibt es bei Atmel keine für mich passenden USB-Lösungen.
Deswegen bin ich mich auch gerade am Abwenden.

Zum Thema:
Ein eigenes PIC-Forum befürworte ich ebenfalls nicht. Sonst bräuchte es
für jede Familie ein eigenes Forum, und das kann nur unübersichtlich
werden (IMO). Das mit dem allgemeinen Forum gefällt mir dagegen gut. So
schaue ich auch mal bei Fragen zu anderen, von mir nicht verwendeten,
Familien rein und kann so ganz nebenbei meinen Horizont erweitern;
dabei möchte ich mich nicht durch viele Einzelforen klickern müssen.
Alles soll so bleiben wie es ist. ;)

Aber das ist nur meine Meinung.

von Weihnachtsmann (Gast)


Lesenswert?

Ach T.Stütz  du ganz armer

Wenn jemand im Titel "picpicpicpicpicpicpicpicpicpicpic" schreibt
wird er ja wohl noch ein bisschen Spass verstehen. Wenn nicht kann ich
auch nicht verstehen dass man so eine Überschrift hat denn das kann man
auch normal schreiben.

Und wenn ihm die Antwort nicht gefällt ist er ja genug alt um dies
selber zu schreiben. Dazu braucht er ja wohl keinen Moralapostel und
Auspasser wie dich.


Mit arrogant und genaule hast du dich zutreffend beschrieben

von Manfred Glahe (Gast)


Lesenswert?

Hallo T.Stütz,

bin ganz Deiner Meinung! Diese Diskussion wird immer mal wieder geführt
und endet fast immer gleich. Wer mit dem PIC nur spielen will auf dem
Basteltisch, der sollte es lieber lassen. Wer aber mit ihm in rauher
Umgebung, z.B. Wechselstromgenerator Steuerung, Motorantriebe,
Schaltnetzteile usw., arbeiten muß ist damit gut bedient. Den PIC
bringt so schnell nichts aus dem Tritt. Es gibt viele Ingenieure die
mit den Pic's arbeiten und solchen Diskussionen wie hier einfach den
Rücken kehren. Du bist mit Deiner Meinung jedenfalls nicht allein. Such
Dir die passenden Seiten oder Aplikationen dazu (wenn Du möchtest auch
meine) und lass die Anderen einfach reden.

MfG Manfred

von T.Stütz (Gast)


Lesenswert?

Sorry erst jetzt Rückantwort,

@Weihnachtsmann
Nur weil die Überschrift etwas unglücklich gewählt ist, heißt es noch
lange nicht das das ein "Spass" Thread ist.

Bitte sei so gut und lass mich an deinem Wissen teilhaben -
erklär mir was am PIC schlecht ist und was im Gegensatz dazu beim AVR
besser ist.

"Dazu braucht er ja wohl keinen Moralapostel und Aufpasser wie
dich."
Er nicht, stimmt!  ;-) Ausserdem, wenn niemand etwas sagt wird es auch
nicht besser - das ich das Schreibe/Sage was ich denke (und damit
einigen auf die Füße getreten bin) kann ich leider nicht ändern.

"Mit arrogant und gemaule hast du dich zutreffend beschrieben"
OK, war etwas aggressiv geschrieben und habe dich etwas angegriffen.
SORRY

Das arrogant kann ich aber nicht ganz nachvollziehen -
Was ist daran arrogant Dich zu Fragen, ob du uns auch Fakten liefern
kannst auf deine Behauptung (AVR besser als PIC) ?

Können wir uns darauf einigen bei den Fakten zu bleiben ?

@René König
Sorry, hab nicht gewusst das die Dinger so preiswert geworden sind
Du hast natürlich Recht.

Gruss

von Weihnachtsmann (Gast)


Lesenswert?

@T.Stütz


Jeder Microcontroller hat ja Vor und-Nachteile.

Angeblich ist der PIC weniger empfindlich gegen Störungen.
Auch kann man genau für die gewünschte Anwendung einen PIC finden der
keinen Cent teuerer ist nötig. Für Massenprodukte optimal.
Doch mehr Vorteile finde ich nicht.


Mir Gefallen AVR besser weil:
_Viel grösserer/besserer Befehlssatz.
_Mehr Foren und Bastlerseiten mit AVR
_Überschaubare AVR-Angebot(Typen)(Ich glaube PICs gibts 1000
verschiedene).
_Vermutlich schneller(kommt wohl auf die Anwendung an.
_Meiner Meinung nach logischer aufgebaut. Keine 12/14 Bit Register
und so.
_Ich finde mehr anbieter von AVR als von PICs(auf die Schweiz bezogen)


Meinungen gehen auseinander.
Habe angefangen mit Motorola 68HC11 habe dann schnell auf PIC
gewechselt doch die waren mir so unsympatisch dass ich sofort auf AVR
gewechselt habe als sie entdeckt habe.

von T.Stütz (Gast)


Lesenswert?

@Weihnachtsmann
Danke für die Antwort (!Das war jetzt nicht sarkastisch oder arrogant
gemeint!)

Gruss

von Peter D. (peda)


Lesenswert?

"Angeblich ist der PIC weniger empfindlich gegen Störungen."

Das "Angeblich" gehört aber doppelt und dreifach unterstrichen !!!


Ich setze sehr oft (Atmel-) 8051-er ein und hatte noch nie Probleme
damit.
Besonders stabil arbeitet ein AT89C4051 der aus Sicherheitsgründen in
einem geerdeten Metallgehäuse sitzen muß, weil er selber auf -5000V
gegenüber Erde liegt (Regelung einer Elektronenquelle bis max 5000eV).

Wenn man Probleme hat, dann liegt das zu 99,9% an einer ungünstigen
Abblockung oder Leiterbahnführung.
Und ich glaube kaum, daß eine schlechte Schaltung oder Platine mit
einem PIC besser läuft.


Besonders die PIC18-Serie scheint ja bezüglich Störfestigkeit massive
Probleme zu haben:

http://www.8052.com/forum/read.phtml?id=90865


Peter

von Thorsten (Gast)


Lesenswert?

> Und ich glaube kaum, daß eine schlechte Schaltung oder Platine mit
> einem PIC besser läuft.

Na ich weis nicht so. Ich sehe es immer an Schaltungen, die ich auf
Lochrasterplatinen aufbaue. Da kann man nicht gerade von einem
ordentlichen Layout usw. reden. Im Gegenteil, es ist jede Menge
Kupferlackdraht und viele Schleifen usw. vorhanden. Wenn auf diesen
Schaltungen ein AVR sitzt und ich das Gerät neben meiner
Schreibtischlampe betreibe und ich diese Lampe an- und ausschalte,
resetet sich in 100% der Fälle der AVR. Verwende ich dagegen einen PIC
(18F4550, F877, F876, 18F8680, 10F20x,...), dann gibt es in 100% der
Fälle KEINEN Reset. Sicher kann man auch die AVR-Schaltung mit
geeigneten Mitteln störfest machen, der PIC hat da aber klar die Nase
vorn.

von peter dannegger (Gast)


Lesenswert?

@Thorsten

"resetet sich in 100% der Fälle der AVR."


Ich habe bisher nur Atmel und Philips 8051 eingesetzt (siehe oben),
kann also nur meine Erfahrungen diesbezüglich angeben (siehe oben).


Allerdings habe ich gehört, daß die alten Klassik-AVRs sehr empfindlich
gewesen sein sollen.

Zur Zeit arbeite ich auch mit dem neueren ATMega8 und konnte bisher
keine Probleme feststellen. Der ATMega8 befindet sich auf Erdpotential,
aber mit auf dem Modul, welches die 5000V erzeugt (2-Ebenen-Platine).


Peter

von TomTec (Gast)


Lesenswert?

Hi ich bins wieder.

Is zwar schon lange her das ich geposted hab aber trotzdem geb ich nen
kurzen Lagebericht und hab auch nen neue Frage

Lagebericht:
Also der PIC18F452 is ständig abgestürzt da ich den Kondensator für die
Spannungsversorgung etwas zu weit vom PIC entfernt plaziert hab. Weiters
hatte ich bei einer anderen Schaltung ebenfalls das Problem, dass der
18F ständig abstürzte, dort hatte ich in der Entwicklungsphase das
metallische Gehäuse nicht mit der Masse verbunden (so viel zum Thema
Absturtzsicher :-) ) naja ansonsten hab ich noch einiges am c18
Compiler auszusetzen. Die mit ihm übersetzten Programme sind nicht
gerade die schnellsten. Also hab ich mir den CCS-Compiler besorgt und
bin gerade dabei die beiden zu vergleichen.

Frage:
Weiß irgent jemand vieleicht, wie ich nen Pic12C508 Beschreiben kann
ich hab den Brenner5 von www.sprut.de der is aber nur für die F (FLASH)
Varianten gedacht. Ich will mir nämlich nicht nen teuren Brenner kaufen
müssen.

thx im Vorhinein

von peter dannegger (Gast)


Lesenswert?

@Thorsten

"resetet sich in 100% der Fälle der AVR."

Sehr oft sieht man die Unsitte, daß der hochohmige Reset-Pin einfach
offen gelassen wird oder, noch schlimmer, ein meterlanges
Programmierkabel als Antenne dranhängt.

Das sich so ein Konstrukt beim leisesten Hüsteln resettet, dürfte
absolut klar sein.


Ich habe dem ATMega8 einen Bootloader verpaßt und das Brownout
eingeschaltet. Der Reset-Pin liegt direkt auf VCC, da kann nichts
einkoppeln.

Nicht immer muß man also den Fehler im Chip suchen, oft sitzt der
"Fehler" auf dem Stuhl vor dem Chip.


Peter


P.S.:
Will man den Reset-Pin benutzen, gehört ein ordentlicher Tiefpaß ran
(z.B. 1kOhm + 10µF). Beachtet das die Programiersoftware nicht, muß man
eben einen Jumper zum Abschalten draufsetzen.

von Thorsten (Gast)


Lesenswert?

Ich benutze auch einen Bootloader, ebenfalls ist Brownout aktiviert, der
Reset liegt über einen 2k2 an VCC. Abstürze habe ich auch ohne
angeschlossene Kabel. Fakt ist einfach, daß der AVR sehr viel
empfindlicher ist.

von peter dannegger (Gast)


Lesenswert?

"Reset liegt über einen 2k2 an VCC."

Ich würde trotzdem noch einen Kondensator gegen GND anlegen oder eben
direkt auf VCC. Der Reset-Pin ist nahezu ungefiltert, da reichen
ns-Pulse zum Reset aus.


Aber Abstürze sind oft auch durch Softwarefehler möglich, z.B. wenn
frei floatende Pins nicht berücksichtigt wurden.

Sinnvoll wäre es also, den Abstürzen genauer auf den Grund zu gehen.


Peter

von Gerhard (Gast)


Lesenswert?

Jetzt moechte ich auch meinen Senf beitragen. Muss sagen, dass sich
meine Erfahrungen nicht mit Euren decken. Ich entwickle in der Firma
schon jahrelang Schaltungen mit PICS/AVRs (16F877/18F452/6620/8720,M32)
und habe ohne Ausnahme noch nie Eure Probleme gehabt. Vielleicht hat es
damit zu tun, dass neben anderer Massnahmen bei mir eine/beide Seite
der Platine immer so grossflaechig wie moeglich als durchgehende
Masseflaeche gestaltet ist.

Zur Stoerungsreduzierung verwende ich  in der VCC Zuleitung immer eine
47nH-10uH Drossel und keramische Ueberbrueckungs-Cs (Siehe auch ATMEL
APP-Note). Auch sollte mindsten 10uF am VCC PIn liegen und nahe
dranliegen. Grundsaetzlich ist bei mir beim Spannnungsregler auch immer
eine 5.1V Transzorb zwischen VCC und Masse geschaltet. Die ist notwendig
um Spannungspitzen die durch externale Signale enstehen koennen, zu
verhindern. Da der Spannungsregler nur als regelbarer Widerstand
funktioniert, kann der Spannungsueberhoehungen nicht verhindern. (Das
ist speziell bei den 18F Typen wichtig, da die nach Datenblatt nur 5.5V
vertragen). Es wurde mal ein 6620 abgeschossen der ueber das RS485
interface 24V abgekommen hat. Da sind durch eine Unachtsambarkeit 24V
auf die RS485 Datenleitungen gelangt. Trotz NAwendung von MOVS reichte
es, dass durch die internen IC dioden die VCC genug erhoehte um den
6620 zu zerstoeren.

Fuer den Reset Pin, verwende ich uenerigens nur ganz einfach 10K ganz
nahe zum Pin.

Ich finde es auch wichtig dass alle PIC Leitungen die nach aussen
fuehren, mit Serien Rs und ABblock Cs versehen sind, damit wenn die als
Antenne wirken, durch die R's betraechtlich abgeschwaecht werden. (Habe
hier schon Wunder erlebt) Man braucht nur ein Handy einzuschalten uns
sofort ist die Hoelle los.

Zur zusetzlichen Sicherheit ist bei mir immer der WDT, BROWNOUT
eingesetzt.

Bei SK10 Breadboard Testaufbauten, habe ich aehnliche schlechte
Erfahrungen gemacht.

Auch sollte man ein abgeschirmtes Gehauese verwenden, bzw, das
Metallgehaeuse mit Schaltungsmasse verbinden, da sonst elektrostatische
Felder den PIC oder AVR beeinflussen koennen. Das ist uebriegens einem
Arbeitskollegen (MEGA32) passiert. Der hat das nicht gemacht und hat
oft feststellen muessen, dass der AVR beim Anfassen oft ruecksetzt.
Dann riet ich ihm das Gehaeuse mit dem Schaltungnullpunkt zu verbinden
und das Problem war sofort geloest.

Ich bin der Meinung dass der Aufbau ein kritischer Teil der
Gesamtschaltung darstellt und das Stoerverhalten entscheidend
beinflusst.  Durch externe geschaltete induktive Lasten von Netz
beriebenen Lasten , laesst sich dann der PIC(AVR) absolut nicht
beinflussen.

Abschliessend moechte ich Euch bitten, meine Ausfuehrung nicht als
Besserwisserei anzusehen - Ist ganz und gar nicht beabsichtigt.

Da ich hier noch neu bin, habe ich wenig Erfahrung was bei solchen
Foren moeglicherweise unangebracht ist. (Warscheinlich  viiieeel zu
lang)

Bitte lasst mich wissen wenn Ihr irgendwelche meiner Ratschlaege
anwenden solltet, ob es was hilft.

Gruss,
Gerhard

von Manfred Glahe (Gast)


Lesenswert?

Hallo Gerhard,

Abschliessend moechte ich Euch bitten, meine Ausfuehrung nicht als
Besserwisserei anzusehen - Ist ganz und gar nicht beabsichtigt.
Da ich hier noch neu bin, habe ich wenig Erfahrung was bei solchen
Foren moeglicherweise unangebracht ist. (Warscheinlich  viiieeel zu
lang)
---------
Keine Sorge, Dein Beitrag war sehr gut und wegen der vielen
grundsätzlichen Vorkehrungen gegen mögliche Störungen, welche standard
sein sollten, auch nicht zu lang.
----------
Bitte lasst mich wissen wenn Ihr irgendwelche meiner Ratschlaege
anwenden solltet, ob es was hilft.
----------
Ich benutze nicht immer alle gleichzeitig sondern entscheide manchmal
auch nach dem Einsatzort. Einige sind jedoch unerläßlich, wie z.B.
Stützkondensatoren DICHT am Pin. Ich benutze zusätzlich zum 10µf noch
0.1µF Schicht oder Keramik. Seit Eagle Polygone kann nutze ich das
immer für GND/Vcc auf beiden Platinenseiten. Am wichtigsten erachte ich
allerdings die Leiterbahnführung und damiteben auch die Plazierung der
Bauteile.
Eine Erfahrung die ich gemacht habe, meist bei Einsteigern zu
beobachten, eine Schaltung welche mal ohne genannte Entstörmaßnahmen
gut funktioniert hat wird zum Maßstab genommen für künftigen
Entstöraufwand. Ich sage denen dann immer, 80% dieser Maßnahmen sind in
der Regel wirkungslos, aber die 20% wirksamen kennen wir nicht und
deshalb wird zu 100% entstört. Das geht nacher dann wie von selbst an
soetwas zu denken.

MfG Manfred Glahe

Gruss,

von peter dannegger (Gast)


Lesenswert?

Ich muß nochmal in die gleiche Kerbe schlagen.

Das mit der großflachigen Massebene mache ich auch so und seitdem sind
eventuelle Probleme massiv zurückgegangen.

Notfalls nehme ich 4-Ebenen, kostet heutzutage ja auch nicht viel mehr,
wenn man es auf den Gesamtpreis des Gerätes bezieht.


Ich hab jetzt gerade eine ARM-Schaltung in der Mache, da sind auf dem
Evaluationboard an den 14 VCC-Pins auch 14 100nF-Pillen drauf, keine
Frage, das übernehme ich so.


Und das Autorouter nur dazu taugen, möglichst viele unerwünschte
parasitäre Widerstände und Induktivitäten einzufügen, wird wohl auch
jeder bestätigen können.

Ich hatte mal ne CPU (DS80C320) bei 32MHz als Fremdleistung machen
lassen, der hat den Autorouter genommen. Da kam es öfters zu Abstürzen
und der Oszi konnte kaum triggern bei soviel Überschwingern.

Ich habs dann mit Hand komplett neu geroutet, danach sahen die
Digitalsignale schön rechteckig aus wie gemalt und die CPU lief stabil
wie ein Fels.



Peter

von Manfred Glahe (Gast)


Angehängte Dateien:

Lesenswert?

Noch eine Eigenart von Schaltungen die möglicherweise interessant ist
für Entwickler.
Die XT Platine im Anhang stellt ein Analogsignal zu Verfügung welches
einen akustischen Reiz für Heuschrecken darstellt. Das Signal ist
zeitlich, frequenzmäßig, amplituden mäßig und intermittierend zu
steuern. Dabei sind geringe Ausgangsamplituden bis runter nach 1mV
erforderlich. Diese Karten liefen in den alte XT Rechnern und den 386
zigern noch störungsfrei, In keinem 486 ziger habe ich diese Karten
einsetzen können, weil das Grundrauschen des Ausgangssignals schon weit
über 1mV hinausging. Die Umgebung in diesen Rechnern mit sehr schnellen
Signalflanken und Bursts hat mich dazu bewogen solche Analogtechnik
nicht mehr im PC zu integrieren. Es ist nicht immer NUR die eigene
Elektronik wenn etwas spinnt, sondern das Umfeld spielt eine große
Rolle. Selbst Hardware von namhaften Herstellern läuft manchmal NUR in
einem ganz bestimmten PC nicht ordentlich. Wenn man also an der eigenen
Schaltung wirklich alles mehrmals abgeklärt hat, lohnt es sich auf jeden
Fall mal das Umfeld zu untersuchen.

MfG Manfred Glahe

von Thorsten (Gast)


Lesenswert?

@Manfred
Das ist interessant, was du über das Grundrauschen schreibst. Es gibt
ja  Kurzwellenempfänger als PCI-Karte für PCs, teilweise für sehr viel
Geld.  Kann man eine solche Karte denn überhaupt sinnvoll abschirmen
bzw. imun machen gegen die Störungen, die vom PC kommen?

von Manfred Glahe (Gast)


Lesenswert?

Hallo Thorsten,

ich denke schon. Manchmal reicht schon ein anderer Steckplatz aus und
die Platinen sind heute auch noch besser entstört als die XT Karten
damals. Außerdem sind die empfindlichen Analogteile unter einer
separaten Abschirmung versteckt. Wenn es denn Probleme geben sollte,
dann würde ich zwischen dieser Karte und denen daneben eine Abschirmung
mit Mumetall oder billiger Kupferfolie vornehmen.

MfG Manfred Glahe

von Gerhard (Gast)


Lesenswert?

Danke fuer Eure Antworten und interessannten Kommentare. Ueber die
optimale Schaltungsrealisierung koennte man warscheinlich dicke Buecher
schreiben.

Bezueglich Autorouter stimme ich 100% zu. Wie kann ein auch noch so
hochgezuechteter Autorouter Grundregeln des guten PCB Layouts wissen?
Autorouter koennen nicht mal eine einfache Schaltung einseitig routen
(Protel 2004DXP). Habe es kuerzlich versucht mit einer einfachen zwei
Transistor Multivibratorschaltung.  Trotz einfacher Schaltung zwei
Vias. Man konnte als Mensch sofort die richtigen Verdrahtungswege
sehen. Komisch was?

Bei einfacheren Schaltungen versuche ich so weit wie moeglich ohne
unnoetige Durchkontaktierungen auszukommen, solange das eine
uebersichtliche Verdrahtung nicht unmoeglich macht. Das ermoeglicht
dann schoene grosse Masseflaechen sogar bei einseitigen Platinen. Es
hilft auch oft sogar bei digitalen Schaltungen in strategischen
Plaetzen Serienwiderstaende einzufuegen, weil dann eine grosse
Masseflaeche dadurch erst ermoeglicht wird.

Uebrigens, die CAD Programme die ich kenne (Protel, Tango) erlauben
nicht direkt Analog und Digitale Masse ohne DRC Fehler
zusammenzuschalten. Da muss man dann immer irgendwelche Tricks anwenden
um die DRC zu beschummeln. Fuer diesen Zweck habe ich in Protel99 einen
sogennnten Netjoint entwickelt, welcher die Zusammenschaltung von AGND
und DGND auf nur einen Punkt erlaubt. Wenn es Euch interessiert
erklaere ich es Euch spaeter. (Interessannterweise soll Protel2004 das
neuerdings erlauben (Shared Net)).

Fuer meine eigenen Hobbyprojekte verwende ich uebrigens nach
Moeglichkeit "altmodische" Drahtbauteile. Nur in der Firma verwende
ich hauptsaechlich SMT. Fuer den Eigenbau ist die altmodische Bauweise
doch viel schoener. Fuer Fehlersuche, Messungen, kommt man mit hier
viel besser zurecht. Mit 144+ pin ICs jann man hier die groessten
Wunder erleben.

Leider sind diese Art der Bauteile auch hier in Canada im Aussterben
begriffen und man muss froh sein eine Bastelkiste mit einer
ausreichenden Auswahl an Bautelementen zu haben. Die Bleifrei- und
RoHS-Verordnungen geben der Bauteileauswahl den Rest. Die mit
bleifreien Lot erstellten Koetstellen sehen aestaetisch ja furchtbar
aus und man kriegt das Kotzen. Jetzt schweife ich aber sehr vom Thema
ab.

Vielleicht koennte man im Forum eine "Schliche und Kniffe" Abteilung
fuer praktisch erprobte Schaltungsmassnahmen einfuheren.

Abschliessemd, moechte ich noch den Hinweis geben, dass ich kuerzlich
einen Codevision Bootloader gefunden habe, welcher sehr gut
funktioniert Bei 115KB, werden 10KB in nur 1.8s eingelesen. Soll ich
die Link angeben?

Uebrigens die getchar() Funktion in den letzte paar Versionen des CV
hat einen kleinen Fehler. Ich konnte die getchar() Funktion im
Bootloader anfaenglich absolut nicht zum Funktionieren bringen. Dann
sah ich mir den Assembly Code an und sah dass ein falsches CPU Register
beim Assignment in eine variable verwendet wurde. Ich habe das der Firma
mitgeteilt und man kann von infotech einen neue STDIO.LIB anfordern. Man
kann sich allerdings auch selber helfen, in dem man eine einzeilige
inline Assembly einfuegt die auf das richtige Register zugreift.
Vielelicht hilft das jemand. (Bitte uebrigens nicht schimpfen dass ich
CV verwende. Ich habe den Eindruck dass CV hier im Forum eher verpoent
ist. Bis auf das obige Problem habe ich bis jetzt recht gute
Erfahrungen gemacht.)

Viele Gruesse,
Gerhard

P.S. Wenn Ihr interesse an Deutscher UKW Amateurfunktechnik habt, hier
ist eine Link zu meiner Webeite die das Thema behandelt und vielleicht
von Interesse ist:

ve6aqo.no-ip.com

von Markus Rehn (Gast)


Lesenswert?

Hallo Leute,

ich hab ein Problem mit meiner SPI-Schnittstelle:

Meine Aufgabe ist es, die Daten, die von einer SPI-Schnittstelle
gesendet werden mit dem Microcontroller PIC 16F873 einzulesen. Dabei
verwende ich die hardwarmäßige SPI-Schnittstelle des Controllers.
Dieser arbeitet mit dem externen Takt und somit als Slave.

Zum Testen habe ich die Takteingangsleitung des PIC an einen
entprellten Taster angeschlossen, um im Debugmodus den Takt selbst
erzeugen zu können.
Leider funktioniert das Ganze nicht richtig. Nur ab und zu wird in den
Empfangsbuffer etwas reingeschrieben.

Die Register für den SPI-Betrieb habe ich folgendermaßen konfiguriert:

SSPSTAT = 0100 0000 (clock edge select = steigende Flanke)
SSPCON  = 0010 0100 (enables serial port;SPI slave mode;clock=SCK-PIN)

Die Konfiguration müsste so eigentlich stimmen.

Für eure Hilfe wäre ich sehr dankbar.

Gruß, Markus

von Achim Gayer (Gast)


Lesenswert?

a)
Häufiger Fehler:
Die entsprechenden Port-Pins werden nicht richtig initialisiert.
SPI Daten out als Output konfigurieren.
SPI Daten in und clock SPI als inputs konfigurieren.

b)
Gibt es bei dem PIC ein Bit das den idle state des clocks
festlegt? (Polarität, ob von High nach Low oder umgekehrt geclockt
wird)
Sollte bei deinen Tests noch nicht stören. Aber später, wenn Master
dranhängt, muss das schon passen, wegen dem Bit-Sample Zeitpunkt.

von Markus Rehn (Gast)


Lesenswert?

In dem Data-Sheet von Microchip steht, dass der SDI automatisch
kontrolliert wird. Hab ihn jetzt aber trotzdem auf "1" (Input)
gesetzt - brachte leider keine Veränderung.

Den idle state habe ich auf "0" gelegt, was mir am logischsten
erschien. Welchen Status der clock des Masters hat muss ich erst noch
in Erfahrung bringen.

Gruß, Markus

von Stephan Gautsch (Gast)


Lesenswert?

@Gerhard
Ich habe Probleme bei der Verwendung des Bootloaders und Codevision.
Ich wollte Sie nun mal nach dem Link fragen den Sie bei Ihrem Posting
erwähnt haben. Es ging um den von Ihnen verwendeten Codevision
Bootloader.

von Bernd Sirozynski (Gast)


Lesenswert?

Ich benutze die PICs sogar in der Medizintechnik im OP-Bereich am
Patienten, wenn diese PICs sich "so schlecht" verhalten würden wie
manchmal beschrieben, hätten wir sicherlich niemals eine Zulassung
ESD,EMV usw. für unsere Geräte bekommen.
Verzweifelt bin ich aber auch so manches mal wegen unerklärlichen
Fehlverhalten. Dies war, würd ich schätzen, zu 98 Prozent ein
BANKSELECT Fehler, da ich ausschließlich in Assembler programmiere.

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Genau das ist doch der Hauptkritikpunkt am PIC: die fehleranfällige
Programmierung.

von Schoaschi (Gast)


Lesenswert?

Hi

Entschuldigt, dass ich jetzt einmal meinen Frust ablassen muss. Aber
irgendwie steht mir die heruntermachere von den PICs schon ziemlich
an.

Es mag ja sein, dass diese Bank-Select Sache nicht gerade die
komfortabelstes Sache ist die es gibt... aber mein gott... Wenn man
programmieren kann, kommt man auch damit zurecht.

Nun zur aussagen, dass jedes Programm für jeden PIC extra geschrieben
werden muss. Das mag vl für ASM stimmen, jedoch nicht für C. Es gibt
vl. Probleme wenn man ein PIC18F Programm für einen PIC16F µC benutzen
will, aber das halt deswegen, da dieser weniger Module besitz.
Also ich muss sagen, ich hatte bis jetzt keine Problem damit, dass ich
Programmstücke von einem PIC auf einen anderen PIC übernehme...

Aber ok, jeder muss nicht mit den PICs arbeiten... aber der, der damit
arbeitet sollte vl auch respektiert werden.

Was mir hier so aufgefallen ist und was mich eigentlich ziemlich stört,
ist, dass jeder AVR Benutzer jedem immer zu AVRs raten will obgleich
dieser mit einem anderen µC arbeiten möchte.

zb.: Wenn einer sagt, er möchte was mit einem AT89C2051er machen, dann
wird sicher gleich protestiert und ihm nahegeleget, dass er einen
ATMega8 dafür nehmen soll, da dieser ja so toll sei. Warum aber?! Wenn
er mit einem AT89C2051er arbeiten will, dann sollte man ihn doch lassen
oder nicht?!

Bei der PIC Gemeinschaft ist mir hingegen aufgefallen, dass diese etwas
tolerant in dieser Hinsicht sind.Ich selbst benutze PICs und rate bei
einer µC-Wahl(als Beispiel) nicht nur zu den PICs sondern erwähne AVRs
und MSP430 und auch anderes.... aber nicht im abwertenden Sinne,
sondern wo man dazu Infos findet, damit er selbst entscheiden kann.

Naja... zum Schluss möchte ich noch allen wünschen, dass sie ihre
Freude mit dem µC ihrer Wahl haben.

mfg Schoasch

von Geri (Gast)


Lesenswert?

Hallo zusammen

In der Zwischenzeit habe ich auch einige (grössere) Projekte mit PIC
Mikrocontroller realisiert. Gleichzeitig auch Projekte mit
Rabbit-Boards und dem C167.

Da man heute eher in speziellen Fällen mit Assembler programmiert
sondern z.B. aus Gründen der Portabilität, breiten Verfügbarkeit von
Biliotheken auf leistungsfähige C-Compiler zurückgreift glaube ich
auch, dass eine Abwertung von PICS gegenüber AVRs nicht berechtigt ist.
Auch die Bankumschaltung sehe ich eher als sekundäres Problem. Ausserdem
löst sich dieses Problem von selbst, da es von den sehr kleinen Pics mit
der Zeit auch günstige 18er gibt:)

In Punkto Programmierung habe ich ausserdem die Erfahrung gemacht, dass
schlechte Performance oder Programmfehler an falschem Umgang mit den
Software-Tools bzw. an einer schlechten Programmgestaltung liegt. Zu
99.9 Prozent war ich in meinen Fällen an auftretenden Fehler oder
Effizienzproblemen selber schuld. Bei den restlichen 0.1 Prozent hatte
ich zu 99 Prozent Teilschuld, weil ich mich zu wenig informiert hatte.

Die verfügbaren Entwicklungstools sind auch i.O. Beispiele gibt es eine
Menge, die Community ist auch recht gross.

Beste Grüsse
Geri

von Kai R. (kairiek)


Lesenswert?

Ich weiß nicht, ob ich's überlesen habe, aber: Wenn du hier auf
mikrocontroller.net ins "µC & Elektronik" Forum gehst und dann oben
bei "Filter" das Wort PIC auswählst, sollten nur die PIC Fragen
kommen. Reicht das als PIC-Forum?

MFG

Kai

von Schoaschi (Gast)


Lesenswert?

Wenn es nach mir geht, bräuchte man kein eigenes Forum dafür. Wie Kai
schon sagte: Es gibt ja den Filter. Und ich selbst wende mich bei PIC
Fragen bzw generell bei Fragen hauptsächlich ans Forum von Fernando
Heitor, weil es mir besser gefällt.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.