07. juni 2004 - 10:09Der er
8 kommentarer og 1 løsning
PIC vs. 80C2051
Hey derude
Jeg sidder i øjeblikket og programmerer en Atmel 2051 processor i Assembler. Hen ad vejen er jeg dog blevet lidt nysgerrig med hensyn til PIC-kredse. Hvordan programmerer man sådan nogle, og skal det være i C? Nogen gode links omkring PICs og C? Hjælp en wet-behind-the-ears-begynder her.
Okay. Så kan man da tale om at en gammel tråd får liv igen. Jeg købte min fra EUC-Syd nede i Sønderborg i sin tid. I mangel af bedre kan du prøve at kontakte dem. Hvis de ikke har en programmer, så har de næsten med sidderhed diagrammet så du kan lave en. De er ikke specielt avancerede. Jeg tror ikke, de underviser i brugen af 80C2051'eren mere, så hvis de stadig har brænderne, er de nok billigt til salg. Bemærk dog at de er serielle, så hvis du har en nyere computer, skal du nok finde en USB->Serielkonverter.
Hov, hej igen jeg glemte lige: Hvis du ikke har en specifik årssag til at begynde at programmere netop 80C2051'eren, vil jeg anbefale dig at kigge på en nyere processortype. Selv er jeg mere eller mindre gået over til AVR-processoren, selv om jeg af og til bruger en af de gamle 2051'ere, fordi jeg alligevel har dem liggende. AVR'en er også en 8-bit processor, og koster sådan cirka det samme for en udgave med tilsvarende egenskaber til 2051'eren (ellers er der et stort udvalg af næsten 100% modeller i deres program). Dertil kommer, at udviklingssoftwaren er gratis (og rigtig, rigtig god), og der er et stort AVR-community, hvor det er utrolig nemt at få hjælp. Det gratis programmeringsmiljø understøtter både assembler og C. Jeg vil naturligvis ikke prøve at hi-jack'e dig over på den nyere platform, men af mange forskellige årssager, er AVR'en nok et bedre sted at starte end 80C2051'eren. Hvis du får lyst til at prøve kræfter med sådan en, er du velkommen til at skrive i tråden igen - Så kan jeg godt give dig lidt starthjælp. Den grundlæggende programmer til AVR'en hedder STK500 og er rimeligt billigt til salg mange steder. Jeg købte min gennem en ven der studerede på Ingeniørstudiet i Århus. Prisen var vist omkring 300 kroner. For en komplet startpakke inklusíve software and the works, er det "#¤! billigt :-D Bare lige en kort kommentar.
Ok det kan godt være jeg skal kigge lidt på sådan en fætter hvis det er nemmere at hente hjælp. Det er bare fordi jeg har rodet lidt med 8051'eren i et eksamensprojekt (studerer til it-ingeniør) og så fandt jeg nogle gamle tutorials omkring 2051'ere som har at gøre med en idé jeg har tænkt på at rode med; http://www.iguanalabs.com/midi.htm
Men du har nok ret i at det er smartere at starte ud med en processor der er mere tidssvarende, jeg har alligevel mange steps som jeg skal overvinde før jeg overhovedet når i nærheden af det færdige projekt. Tusind tak for rådene! Det kan godt være jeg senere tager dig på ordet med det der starthjælp :).
Nå du har fået mig overtalt, til at gå for en AVR! Har også været inde og sniffe lidt rundt på avrfreaks.net,det ser sgu lovende ud.. Men hvilken programmer skal man vælge? Jeg vil gerne have en som kører usb, men den eneste jeg har kunnet finde er ISP, og jeg synes det vil være rart at kunne programmere chippen først inden jeg laver resten af kredsløbet (da jeg ikke er nogen elektronik-haj, må jeg nok tage tingene i små bidder). En anden ting er, at det er vigtigt at chippen (helst, ellers noget eksternt) kan gemme nogle værdier under programkørslen, som ikke må gå tabt efter at man har slukket/genstartet maskineriet, kan man bruge den der 'self-programming' feature til det, eller er det noget helt andet? (undskyld hvis jeg spørger for meget, jeg er bare rimeligt ivrig for at komme i gang:)..
Det valg er jeg sikker på, at du ikke vil fortryde, og jeg kan se, at du fandt avrfreaks' hjemmeside :) Med hensyn til programmer bruger jeg selv et STK500-kit, fordi det er billigt og kan programmere 90% af processorerne i serien. Den er kun seriel, men det problem har jeg løst ved at forbinde den til min comp via en no-name USB-seriel-konverter (seriøst, der er hverken firmalogo eller navn på produkt eller driver-cd. Producenten er vel bare "Kina"). Konverteren købte jeg hos den lokale IT-pusher til en flad 50'er, og det tog mig mindre end 10 minutter at forbinde til min PC. Med hensyn til programmeringsmiljø, så skal du hente AVRStudio4 fra Atmels hjemmeside. Du skal også hente WinAVR (link findes på avrfreaks.net). Den nye version af AVRStudio understøtter C (i de ældre versioner kunne du kun skrive i assembler i AVRStudio), og den tillader dig at installere AVR-GCC-compileren som er indbygget i WinAVR (derfor skal du bruge det program). Hvis du gør det på den måde, kan du skrive dine C-programmer direkte i AVRStudio samt simulere og brænde dem via samme. Det er også en mulighed for dig at skrive i Programmer's Notepad, som er en del af WinAVR-pakken, og så eksportere det til AVRStudio, men siden den nye AVRStudio understøtter compileren selv, kan jeg ikke længere se nogen grund til det. Resume (min foreslåede løsning): 1. Køb et STK500-kit 2. Køb en USB-seriel-konverter 3. Download og installer AVRStudio 4. Download og installer WinAVR 5. Installer WinAVRs AVR-GCC-compiler som plugin i AVRStudio 6. Test at du kan oprette forbindelse til dit STK500 gennem AVRStudios interface 7. Se på dit ur og konstater med en vis portion underspillet selvtilfredshed, at du på mindre en en time og for mindre end 1000 kroner har sat dit eget lille embedded-controller-udviklings-værksted op. 8. Skriv massevis af fede programmer til dine applikationer.
Det' da nemt :) Hvis du får lyst til at kontakte mig igen, så skriv til min forum-skraldemail: mmmmasquerade[aat]hotmail.com, så skriver jeg tilbage fra min etablerede mail.
Hilsen Martin
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.