Frekvens detektor PIC 12F683 Processor med (12 / 12 steg)

Steg 12: Source Code

****************************************************************************************************
****************************************************************************************************
Viktig uppdatering 31 Jan 2011. Läs!

En betraktare försökte nyligen att församlingen *.asm filen ursprungligen ingår i detta instructable, men receieved många "118" fel från MPLAB assembler. Denna fråga är på grund av att jag skapade koden på en äldre version av MPLAB. Medan den kompilerats fint på den äldre versionen, jag
fick samma fel när jag provade på en ny version.

Det verkar som de direktiv som används för att ställa in och reservera utrymme för variabler i RAM har förändrats. Jag noterade också några andra fall där den nya versionen av MPLAB inte tyckte syntax för uttryck som fungerade bra i äldre versioner.

Också noga med att välja "absoluta kod" när försöker montera filen *.asm medföljer.

Jag har uppdaterat den *.asm arkivera och fäst den här. De enda ändringar som gjorts är de skyldiga att montera utan fel. Den uppdaterade filen har "Nytt" i namnet. Jag har lämnat den gamla filen bifogas också, ifall någon behöver det, men bara vara medveten att om du använder den senaste MPLAB det kommer att generera många fel om du använder den ursprungliga asm fil jag bifogat.

Den *.hex filen genereras från uppdaterade koden verkar vara identisk med den som jag ursprungligen, så jag inte har fäst en annan fil. Den ursprungliga *.hex filen bör fungera bra för bara programmering en del med koden som den är konfigurerad i den medföljande *.asm filen.

****************************************************************************************************
****************************************************************************************************

Källkoden för den *.hex filen levereras är bifogat nedan. Programmet skrevs att använda PIC 12F683 processorerna inbyggd oscillator som klockan, verksam på 8MHz. Om du planerar att återanvända kod i ett program där du kommer att använda en annan klockfrekvens, har du att redogöra för skillnaden i programvaran. De parametrar som Ställ in samplingsfrekvensen måste ändras.

Om du ändrar samplingsfrekvensen (som är 4400Hz för programmet som det är skrivet nu) så måste du generera nya titt upp tabeller för sinus och cosinus koefficienterna, eftersom dessa är beroende av provtagningsfrekvensen.

Om du ändrar antalet prover används i algoritm (som är 200 för programmet som det är skrivet nu) måste du skapa en ny uppslagstabell för med hjälp av funktionen.

Det är relativt enkelt att port här koden till en annan 8 bitars PIC mikroprocessor. De viktigaste sakerna att tänka är oscillator frekvensen som beskrivs ovan, och den exakta setup av register är associerad med den kringutrustning som används. Dessa är oftast mycket lika mellan de 8 bit PIC processorerna, men de kan mycket lite. Processorn valt måste ha en A/D-omvandlare för att läsa de analoga ingångarna, och en 16-bitars timer för att ställa in samplingsfrekvensen.

Se Steg
Relaterade Ämnen

Testa din radar detektor eller laser jammer med denna trafik verkställighet LIDAR pistolen simulator

denna LIDAR pistolen simulator efterliknar elva olika trafik verkställighet vapen LIDAR. Varje LidarGun fungerar på 904nM våglängd med kort puls skurar, vissa vapen fungerar 100 pulser per sekund, några kanoner på 238 pulser per sekund, etc. Laser At...

Bump detektor för robotar med aluminiumfolie

Samtidigt som autonom robot med ultraljudssensorer, inför vi problemet att ändra sökvägen till robot när det stöter på en vägg eller objekt.Lösningen är ganska enkel, men jag hoppas det hjälper någon :)Steg 1: Komponenter behövs: 1) aluminiumfolie2)...

DTMF-Touch Tone dekoder med hjälp av Microchip PIC mikroprocessor

Detta projekt innehåller uppgifter om med ett mikrochip PIC12F683 8 bitars mikroprocessor för att upptäcka DTMF-toner. Avslutade programmet tillåter processorn att programmeras med en sträng av DTMF-toner att upptäcka. Om strängen programmerade upptä...

Pålitlig frekvens identifiering med hjälp av DSP tekniker

korrekt frekvens upptäckt är viktigt för många projekt som gitarr/Piano Tuners, vibrationer analysatorer, hjärtrytm bildskärmar, MEMs Sensor analys och laboratorieutrustning.Det har varit många fina exempel på projekt som försöker lösa detta problem,...

Växla läge Altoids iPOD laddare med 3 "AA" batterier

målet med detta projekt var att bygga en effektiv Altoids tin iPod (firewire) laddare som körs på 3 (uppladdningsbara) "AA" batterier. Projektet började som ett samarbete med Sky på PCB design och konstruktion, och jag på krets och firmware. Som...

NOMAD från ursprungliga Star Trek-serien med ljus och ljudeffekter

om du är ett fan av den ursprungliga Star Trek-serien, du vet vad NOMAD.Det visades i episod #37 "Changeling".NOMAD är huvudsakligen en hybrid av en gammal jord utrymmesonden som kolliderade med en främmande utrymmesonden. Den resulterande hybri...

Elektroniskt lås med one-wire iButton

i detta instructable kommer jag att presentera en liten liten krets som kan ersätta ett elektroniskt lås, elektriska apparat switch eller något liknande, till en bättre och svalare. Denna lilla styrelse kan försäkra er, ingen kommer någonsin ange dit...

Enkel mobil detektor krets

enkla mobila detektor krets använder CA3130 op-förstärkareBeskrivning Källa: http://www.electroschematics.com/1035/mobile-bug-detector-sniffer/Denna behändiga mobiltelefon detektor kan känna närvaron av en aktiverad mobil mobiltelefon från en och en...

RGB LED Mood taklampa med hackad IR-fjärrkontroll

detta instructable dokument utformning och konstruktion av en gigantisk RGB LED taklampa, kontrolleras av en hacka GE fjärrkontroll.Efter att bygga ett par mindre RGB lampor, bestämde jag mig för jag ville se hur långt jag kunde ta konceptet. Kontrol...

Pulserande gubbe detektor

detta projekt använder en RF-mottagare modul för att utlösa ett pulserande hjärta LED när sändaren kommer inom räckhåll. Jag gjorde detta för min fästman för alla hjärtans dag i år.Jag har ännu att testa spänna, som jag faktiskt inte har tagit sändar...

Steampunk ESP8266 Internet ansluten klockan med hjälp av Arduino IDE

Vad du får när en NeoPixel ring, en billig Arduino Wifi ombord och en laserskärare går in i en ånga Punk Saloon?En fashionabla Steampunk designade Internet ansluten klocka med ESP8266 chip och Arduino IDE förstås!Här är ett projekt för kvällen eller...

Hur man gör en billig 16 MHz Arduino oscilloskop med hjälp av Excel och skärmen till Visa

Ofta kommer att en elektronik hobby designa och bygga något bara för att upptäcka att det inte beter sig som han eller hon tänkt. Ibland i dessa situationer är problemet relaterat till en elektrisk signal, men att saker rör sig med ljusets hastighet!...

RFM69 / Arduino Pro Mini med livlig diskussion med JeeLink

Jag har varit att utforska världens snabbt växande av billig, liten sändtagare. Dessa små enheter är mycket användbara för kommunikation mellan två noder som dator och passar fint i många projekt. Radioapparater omfattar ett brett spektrum av frekven...

Bygga en 1:1 skala Portal pistol med ljus

Inledning:Detta Instructable kommer detalj processen jag gick igenom samtidigt bygga min egen Aperture Science handdator av Portal [AKA den "Portal pistol"] från Valve-spel Portal & Portal 2. Om Portal pistolen är i fokus för detta bygga, pr...

ODROID U3 lampa servaren med Seafile Cloud

Vänligen rösta för detta Instructable och några av mina andra i avsnittet omröstning i det övre högra hörnet av sidan. Tack så mycket för att stödja våra projekt och jag hoppas de är bra.I en värld av mikrodatorer har historien varit starkt begränsad...

Atmega16/32 utveckling styrelsen med LCD

detta instructable visar, hur du gör din egen utveckling styrelsen för Atmega16 eller Atmega32 processorer. Internet är fullt av hemgjorda utveckling styrelser, men jag tror att det finns utrymme kvar för en annan. Denna styrelse har varit mycket anv...

En svävar sfär roterar lyser och blinkar med Arduino

En svävar lite Dödsstjärnan i Instructables bjöd in mig till det nya projektet med Arduino. Tre principer var beslutat och höll för att skilja den från föregångaren.Gör det själv med någon (eller mindre) färdiga.Hålla roterande.Göra glöd och blinka u...

DIY 2.1 bärbar högtalare med USB, AUX, TF, Bluetooth och fjärrkontroll

Hej killar, jag är en själv trodde DIY fan, jag älskar att göra småskaliga projekt, jag ville göra instructables här men hade inte en trevlig kamera att ta bilder av processen. Ja nu har jag köpt en trevlig kamera så är dags jag börja göra instructab...

Hur man installerar OS X Mavericks på din PC med Unibeast

du intresserad kör Mac OS X, men du vill inte betala löjliga priser för en normal Mac, då en Hackintosh (jag kommer att skriva en guide om hackintoshing) bara kan vara för dig. Just nu, den senaste iterationen av OS X är 10,9, känd som ensamvargar. I...