Bygga en puls Analyzer (5 / 8 steg)

Steg 5: Kod med kommentarer för puls analyzer (några anteckningar om nästa avsnitt!)



; Välj den p24FJ32GA002 processorn

.EQU __p24FJ32GA002, 1

; inkludera processor definitionerna

.include "p24FJ32GA002.inc"

;..............................................................................

; Configuration bits ;..............................................................................

config __CONFIG1 0x3f7f

config __CONFIG2 0x79cf

; Likställa register till namn som är lätt att använda.

.EQU ad1con1, 0x320; grundläggande ad kontroll registrera

.EQU ad1con3, 0x324; AD kontroll registrera för inställning av konvertering klockfrekvens

.EQU ad1buf0, 0x300; AD resultat hamna här

.EQU ad1chs0, 0x0328; AD kanal väljer register

.EQU ad1pcfg, 0x32c; Detta register användssom konfigurera ingångar för analog eller digital

.global __Återställ; Etiketten för den första raden i koden. ;

..............................................................................

; Kodavsnittet i programmet minne; (DETTA ÄR DÄR PROGRAMMET STARTAR EFTER ÅTERSTÄLLNING);...;

.text; Början av koden avsnitt

__Återställ:

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; pin anslutning;;

-Utgång: RB4 pin11; Ingång: RA0 pin2

; UART: rx: pin6; TX: pin7

; AN9: pin26 S/H utgångar till detta stift (detta stift är en ingång för mikrokontroller)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

; Anslutnin med UART2: översätta koden från serialcomm.pb för logochip

skriva $02c 8 $f0a4

MOV #0XF0A4, W0

MOV W0, TRISB

skriva $6c 2 $0500

MOV #0X0500, W0

MOV W0, RPOR1

skriva $6a6 $1f02

MOV #0X1F02, W0

MOV W0, RPINR19

skriva $238 51; Setting-överföringshastigheten

MOV #51, W0

MOV W0, U2BRG

skriva $230 $8800

MOV #0X8800, W0

MOV W0, U2MODE

skriva $232 $400

MOV #0X400, W0

MOV W0, U2STA

; initiera register

MOV #0x8200, W0

MOV W0, ad1con1; visar a/d, produktionen kommer att vara vänsterjusterade

MOV #6, W0

MOV W0, ad1con3; ca 4 cyklar per tad

MOV #0x1ff, W0

MOV W0, ad1pcfg; Ange 4 LC ingående portar till analog, vila till digital

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

BCLR TRISB, #4. ställa in till produktionen

AVSKILJS TRISA, #0; ta i signal från funktionsgenerator

AVSKILJS ad1pcfg, #0; Ange PIN-koden för att digital ingång

; LOOP1 & 2 kontroller är det är en stigande kanten LOOP:

AVSKILJS LATB, #4. GER EN UTSIGNAL: PROV

LOOP1: HANNAH PORTA, #0; HOPPA ÖVER OM NIVÅN ÄR HÖG

BRA LOOP1

NOP; VÄNTA EN KORT MÄNGD TID

NOP

BCLR LATB, #4. LÅGT INSTÄLLD START S/H: HÅLL

; gör en en A/D omvandling på AN9(pin 26)

MOV #9, W0

MOV W0, ad1chs0; Välj AN9 för a/d-omvandling

avskiljs ad1con1, #1. Starta provtagning och börja konvertera

MOV #7, W0; vänta 7 cyklar för interna prov och håll kondensatorn att debitera

cycledelay: dec W0, W0; dekrement W0

behå nz, cycledelay; nu vänta för konvertering till slut

bclr ad1con1, #1. börja hålla

gjort: Hannah ad1con1, #0;

bra gjort; vänta för konvertering göras

; vänsterjusterade resultat återfinns i ad1buf0

MOV ad1buf0, W0

LSR W0, #8, W0; flytta kopian av ad1buf0, skiftade 8 bitar till rätten att W0

MOV W0, U2TXREG; Skriv dessa 8 höga bitar till tx; vänta för överföring till slut

txdone: Hannah U2STA, #8.

bra txdone

MOV #0x0c0, W0; mask för att välja bitar 6 och 7

och #0x300, W0; och sätter kopia av bitar 6 och 7 i W0, alla andra bitar är noll

MOV W0, U2TXREG; skriver dessa bitar till tx, kom ihåg att behandla korrekt i MATLAB

LOOP2: BTSC PORTA, #0

BRA LOOP2; HOPPA ÖVER OM NIVÅN ÄR LÅG

BEHÅ LOOP

Se Steg
Relaterade Ämnen

Bygga en LED Analyzer

när man bygger kretsar med lysdioder, det är skönt att ha bra uppgifter om kännetecken hos de lysdioder som en använder! Att veta framspänning för en LED eller en sträng med lysdioder på en viss ström kan hjälpa en designer definiera makt leverans kr...

Linkit en puls pulsmätare

Detta är en riktigt rolig och cool instructable, i detta instructable jag ska visa dig hur man bygger en puls pulsmätare. Denna enhet övervakar ditt hjärta BPM (slag per minut) och visar den på skärmen. Detta projekt har ett brett utbud av medicinska...

Bygga en prop puls gevär (från kort)

efter att ha avslutat strålpistol prop, talade jag med modellen för Android bodypaint serien och vi beslutade att en sexig tjej Sci-Fi behövde en riktigt stor pistol. Så ställa jag om att bygga någon form av puls gevär.Detta har förvandlats till ett...

Lätt att bygga Oxygen Analyzer använder en Arduino kompatibel Micro Controller

Som en byggare av prylar och en dykare har jag försökt att bygga en syre analysator för lite nu. Det stora problemet är att de flesta mikrokontrollanter inte kan läsa den mv som sensorn ger ut. Jag spelade med opamps, men aldrig fick det att fungera...

Nerf M41A puls gevär (bygger bort den filmen utlänningar)

denna mod är inte skapad av mig men en av mina vänner som jag pratade med en hel del över detta projekt som vi båda ville göra en NERF puls gevär från utomjordingar. Han avslutade sin innan gruvan som när jag är klar kommer jag också att lägga.Obs: d...

PULS Tube bygga

för hypnopompic teamSteg 1: Verktyg som behövs förLödkolvKrympslangVarmlimma fast svartStrip testareSteg 2: Material per tube (1) 8' tube(1) kvinnliga jst 4pin kontakten(1) manliga jst 4pin kontakten(1) 8 "4" svart 20g tråd(1) röd 20g tråd 8 &qu...

Bygga en fusionsreaktor

Ja, du kan bygga din egen kärnfusionsreaktor i ditt hus! Men först, några varningar:-Det här projektet innehåller dödliga spänningsnivåer. Se till att du vet din högspänning säkerhet eller har en kvalificerad elektriska rådgivare.-Potentiellt farliga...

DPScope SE - den enklaste riktiga oscilloskop/logik analyzer på planeten

The DPScope SE är resultatet av en utmaning jag satt för mig själv – att bygga en praktiskt användbar oscilloskop med ett minimum av komponenter och för minsta möjliga kostnad. Den praktiska fördelen är naturligtvis att detta är ett instrument som ja...

DCF77 Signal Analyzer klockan

Arduino DCF77 klocka & signalmätarenDu kan också se denna klocka på myweb webbplats här DCF77 Analyzer klocka sidaDenna klocka visar tidkoden mottagna & avkodade DCF77 på tre 8 x 8 matrisskrivare displayer och tid, datum och signal information om...

Bygga en Tricopter med Rotor bitar

Detta Instructable kommer att lära dig hur man bygger en tricopter med Rotor bitar. Detta Instructable innehåller också teoretiska diskussioner, tips, tricks, och annan information som jag hoppas kommer att få dig på din väg till att bli en expert tr...

Bygga en TENS maskin för att ta bort smärta

A TEN maskin för att ge ett läkemedel gratis sätt att ta bort smärta från kroppen (TENS står för transkutan elektrisk nervstimulering). Här kommer jag visa dig hur man bygger din egen Tens maskin och minska mängden piller du använder ska stoppas, smä...

Bygga Blinquencer - en lätt kontrolleras slumpmässigt speldosa

Detta Instructable visar dig hur man bygger en Blinquencer - en semi-slumpmässigt optiska melodi generator att använder tre blinkande lysdioder lyser på ett par ljus beroende motstånd att styra tonhöjden för två enkla ljud kretsar att skapa melodiska...

Bygga en UAV bas

varför skulle du vill bygga en UAV? Tja, först, vad är en UAV? En UAV är något som rinner iväg och har inte en pilot eller någon direkt styra flygplanet. Jag slår vad om du har hört talas om CIA drönare, väl de drones är en typ av UAV. Nu, varför sku...

Bygga din egen FM-Radio Astronomy Lab

eftersom jag är en enkel man, och tanken på att försöka förstå allt okändan är mer än jag kan hantera, jag föredrar den enklare sidan av astronomi. Min personliga astronomi verktyg inkluderar ett 4,5" reflektor teleskop, ett par av kikare och en FM-R...

Bygga en 12V solenergi batteripack

Det finns stort antal solpaneler finns på marknaden idag, några lovar att ladda upp din telefon, medan några Packa tillräckligt med kraft för att ta ut en ipad. De har blivit ganska överkomligt och mycket portabel. Men de har alla en stor brist, och...

Hur för att bygga 100 watt 12v DC till 220v AC inverter krets med EasyEDA

Vi alla ansikte power nedskärningar i våra hus eller kontor någon gång eller annan. Vid de tillfällen använder vi vanligtvis Generator eller en Inverter. Generatorer använda bensin eller diesel som bränsle och de är bullriga. Vi kommer inte att disku...

Dubbla puls kapacitiv ansvarsfrihet Spot Svetsare

Detta Instructables innehåller planer på att bygga en dubbel puls kapacitiv ansvarsfrihet plats svetsare som kan mata 400 ampere i 60 mikro sekunder.Steg 1: teoriIntroduktionAnledningen till detta en bärbar kapacitiv ansvarsfrihet spot svetsare, som...

Lätt att bygga CNC Mill Stepper Motor och Driver kretsar

detta är en uppföljning till lätt att bygga skrivbord topp 3 axel CNC fräsning maskin en gång du få maskinen alla sätta ihop sin tid att göra det gå.Så är det dags att köra motorerna. Och här jag har satt ihop en krets som jag tycker är det absoluta...

Arduino DCF77 puls klocka

IntroduktionDetta Instructable visar dig hur man gör en digital puls klocka och lägga till det i en gammal 12"(300mm) klockan fallet eller ratten & bezel. Jag har använt en gammal engelsk ringa klocka med 12" ratten men någon klocka med en s...