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 ...
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
ich wäre auch für dieses Forum es geht ja auch darum um fehler zu vermeiden die andere schon gemacht haben.
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.
Ihr hab ein kleines PIC-Forum gefunden. Ist glaube ich in der Anfangsphase, aber OK. www.fernando-heitor.de Marko
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
@ 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?
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
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
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'.
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
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
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.
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
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
@ 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.
Nieder mit den PICs ich hasse PICs !!! Ein HOCH auf AVR !!! Spass bei Seite, ich mag einfach keine PICs Gruss Weihnachtsmann
@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
> 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.
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
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
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
@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.
@Weihnachtsmann Danke für die Antwort (!Das war jetzt nicht sarkastisch oder arrogant gemeint!) Gruss
"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
> 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.
@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
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
@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.
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.
"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
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
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,
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
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
@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?
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
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
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
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.
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
@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.
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.
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
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
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
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.