MATLAB voor PIC seriële interface (1 / 1 stap)

Stap 1: Code met commentaren


hieronder is één of andere code die ik geplakt in. Download het txt-bestand als u wilt dat de code. Zie de foto's voor hulp bij de seriële interface. Een toont de 22kohm weerstand methode voor het verbinden van uw seriële poort aan een PIC. Anderzijds toont de max232 methode voor het verbinden van uw seriële poort aan een PIC.

Met seriële verbindingen het meest voorkomende probleem is niet instellen van zorg de computer en de PIC aan de dezelfde Baud-Rate, dus ervoor dat u dat doen (als het gebeurt in mijn code).
Ook, zorg ervoor dat u alle van de GNDs samen (PIC, MAX232 en Computer GNDs alle aangesloten) hebt aangesloten.
Ook, zorg ervoor dat u de juiste condensator-waarde voor de max232 (max232 vs. max232A), zie diagram in de instructable voor de juiste waarden.
Zorg er ook voor dat uw computer is het verzenden van de waarden die u denkt dat het sturen. Om dit te doen, houden draden in de kabel DB9 om een seriële loopback. Hierdoor wordt de computer terug te krijgen precies wat het net heeft gestuurd. Hier is een diagram van hoe deze draad:




Dus maak uw matlab-code een seriële lezen direct na de seriële schrijven doen.
U kunt ook vrije seriële poort gebruiken controlesoftware om makesure seriële communicatie occuring correct worden (hier is een voorbeeld http://www.batchconverter.com/FreeSerialPortMonitor-download-20643.shtml).

Anyway, hier is de code:

%##########################################################################
%########################--MATLAB CODE--###################################
%##########################################################################
% Deze code wordt ervan uitgegaan dat u MATLAB vastgehaakt aan een PIC-microcontroller via de seriële poort van de PC door middel van een
% MAX232 IC _OR_ als u geen gebruik maken van een max232 alle u nodig hebt is een 22 kohm weerstand op beperken
% de seriële lijn die de computer met de PIC (aka Pin 3 en/of Pin 2 verbindt, zie hieronder).
% Pin 3 of de DB-9-poort is de TX-lijn, aka de lijn die seriële gegevens van de PC naar de PIC draagt.
% Pin 2 carries seriële gegevens andersom (PIC naar PC) als u wilt dat te doen.
Pin 5% is de DB-9 grond pin welke u gebruiken moet om verbinding maken met de PC-grond met de PIC-grond.
% Dit code ook wordt ervan uitgegaan dat u van COM3 voor seriële communicatie met de PIC gebruikmaakt.

SerPIC = serial('COM3'); % <--dit wijzigen
ingesteld (SerPIC, 'BaudRate', 9600, 'DataBits', 8, 'Pariteit', 'geen', 'StopBits', 1, 'FlowControl', 'geen');
fopen(SerPIC); %--de seriële poort aan de PIC openen

fprintf (SerPIC, '%s', ' 003'); %--Stuur een _three_ cijfer tekenreeks naar de PIC met geen terminator ('%s')
%--003 = 00000011 binair, dus eerst twee LEDs van PIC brandt

fclose(SerPIC) %--Sluit de seriële poort wanneer u klaar bent
Delete(SerPIC)
Schakel SerPIC

% NOOT 1:
% Als MATLAB ooit een seriële fout geeft, het zal waarschijnlijk zeggen 'unable to open serial port' volgende keer dat u
% uitvoeren van het programma, dus u moet opnieuw beginnen van MATLAB
% NOTA 2:
% het nummer moet altijd worden verzonden als een getal van drie cijfers omdat voor sommige reden ik niet mijn PIC krijgen kon te ontvangen
% het nummer wanneer het was niet van een bepaalde lengte (Zie PIC code: DEC3)

%==========================================================================
%==========================================================================

'##########################################################################
'#############################--PIC16F877 CODE--###########################
'##########################################################################
' Deze code wordt ervan uitgegaan dat u de PIC16F877 instellen met één LED op elke regel van de Port D hebben (8 lijnen).
' Op deze manier de PIC volgens het nummer verzenden via seriële vanuit MATLAB een ander patroon van LEDs zullen oplichten.
' Elke LED in serie met een weerstand van 470 ohm moet worden (zie foto hieronder)
'_
' '
' '---Leidde---\ 470 ohm
'PIC' >---/ \/\/\---GND
' '------LED---/
'---'
'
' Deze code ook wordt ervan uitgegaan dat u de TX-lijn van de DB-9 seriële poort verbonden met pin 0 van poort C (PORTC.0)

"Bs2defs.bas" bevatten ' heeft sommige nuttige dingen in het

' DEFINE OSC 4 ' Oscillator snelheid in MHz, dit is niet nodig denk ik
SerI var PORTC.0 ' maken een eenvoudige naam om te verwijzen naar de seriële pin

TRISD = % 00000000 "PortD instellen als een uitvoerpoort
PortD = % 00000000 "LED-poort instellen op alle nullen

GetGhost:
Serin2 SerI, 84, (DEC3 B0) ' een getal van drie cijfers krijgen van seriële pin en zet het in B0 variabl
PortD = B0 ' ingesteld van de lijnen van het PortD volgens dit getal van drie cijfers
GOTO GetGhost

'===========================================================================
'===========================================================================

Gerelateerde Artikelen

Low-Cost IC Test Clip voor PIC ICSP

Low-Cost IC Test Clip voor PIC ICSP

Ik maakte de Low Cost IC Test Clip voor ICSP voor PIC Microcontrollers.http://Neo-Sahara.com/wp/ic_test_clipStap 1: Koperen band en doek peg gebruiken.Stap 2: De koperen tape zetten op de doek peg en snijd de tapes als 2,54 mm pitch.Stap 3: Soldeer k
Ontwikkelsysteem voor PIC en AVR microcontrollers

Ontwikkelsysteem voor PIC en AVR microcontrollers

na het testen van vele systeemontwikkeling voor PIC en AVR microcontrollers, geen voldoen aan mij. Dus heb ik dit systeem met breadboard die mij heeft voldaan.Stap 1: Meer vrije ruimte In dit ontwikkelsysteem, zette ik twee protoboards 180 graden van
Inzicht ICSP voor PIC Microcontrollers

Inzicht ICSP voor PIC Microcontrollers

programmeren microcontrollers is niet moeilijk. Bouwen van een programmeur maakt een geweldige eerste elektronica project. Het doel van dit instructable is om uit te leggen van de eenvoudige 'in circuit serial programmeren' methode gebruikt met Micro
PIC 16F917 gyroscoop interface

PIC 16F917 gyroscoop interface

In deze post zullen we de ADC (analoog-naar-digitaal)-Module van de Microcontroller PIC16F917 bestuderen. Wij zullen het bestuderen van een echte circuit van PIC16F917 interfacing naar een halfgeleider gyroscoop.De gyroscoop is een motiesensor die zi
Richting display voor Arduino Robot - Scratch Interface

Richting display voor Arduino Robot - Scratch Interface

Ik heb geüpload onlangs een gids over de programmering van een Cybot met behulp van een Arduino-besturingselement. Ik heb gemaakt in de programmering een gebruikersinterface om te visualiseren van de richting die wordt geselecteerd door de gebruiker.
VOEDING voor PIC-MICROCONTROLLER

VOEDING voor PIC-MICROCONTROLLER

Hallo iedereen,Mijn naam is Atanas, uit MacedoniëAllereerst wil ik iedereen om te zien mijn u-buis video.Mijn video voor dit project.Ik kom snel terug om schema en de code van dit project te publiceren.Dank u.
Leuk met de vergadering van de PIC - aflevering 22

Leuk met de vergadering van de PIC - aflevering 22

De gemeenschappelijke zeggen is dat "noodzaak de moeder van uitvinding is". In werkelijkheid zijn er echter veel "mothers" van uitvinding. Mijn favoriet is "luiheid" maar soms dingen uitgevonden krijgt, alleen omdat het een l
De seriële interrupts PICBasic met PIC16F877

De seriële interrupts PICBasic met PIC16F877

eenvoudig voorbeeldcode te gebruiken seriële interrupts voor de PIC16F877.1) een programma van matlab verzendt de PIC-nummers2) de PIC wordt onderbroken, wat het doet,3) krijgen de nummers en deze op LED's, weer4) en daarna doorgaan met wat zij aan h
Bar End remlicht: BEBL

Bar End remlicht: BEBL

OverzichtGroep paardrijden zou veel veiliger fietsen alsof remlichten.  Het gebrek aan rem verlichting op de fiets heeft geleid tot de audio-signalen van "AFREMMEN" of "Stoppen" worden geschreeuwd bij elke beurt.  Terwijl dit kan verbe
Met behulp van de Sim900/sim900A mini module met Arduino UNO

Met behulp van de Sim900/sim900A mini module met Arduino UNO

Er zijn tal van websites die praten over het gebruik van een GSM-schild met een Arduino, naast de Arduino IDE zelf. Er zijn ook verschillende GSM bibliotheken daar, of kunt u AT-opdrachten uw eigen rol. Ik kon niet vinden die praten over het gebruik
Omkeren van Geocache

Omkeren van Geocache

Eerst en vooral willen we bedanken de organisatie van de Gent Arduino Jam Session en vooral de hoofdsponsor, Capgemini, waardoor alle van dit mogelijk.Doel: een GPS-radiorichtingzoeker die de richting van het volgende waypoint, vergelijkbaar met een
Hergebruik van elektronische onderdelen - 7 Segment Display, gebaseerd op PT6964

Hergebruik van elektronische onderdelen - 7 Segment Display, gebaseerd op PT6964

Hallo, dit is mijn eerste beetje instructable.Ik ben een grote fan van het nemen van elektronische dingen uit elkaar en naar binnen kijken. Ik heb geleerd veel dingen over ontwerpen, chips en ook de bergen van delen uit oude elektronica is een goedko
$15,00 BASIC Computer?

$15,00 BASIC Computer?

Stel je een microcontroller dat kunt u een seriële terminal tot om een ok prompt? Wat zou er gebeuren als u een van de registers van het besturingselement gewijzigd kan ik zien het effect meteen? Is het echt mogelijk om programma's op deze chip downl
Arduino en Matlab: laat ze praten met behulp van seriële communicatie!

Arduino en Matlab: laat ze praten met behulp van seriële communicatie!

Hallo iedereen!Sinds toen heb ik begon te spelen met de Arduino, heb ik altijd geweest zwerven hoe ik kon maken het praten en communiceren met de Matlab-omgeving op een gemakkelijke en effectieve manier. Ik botste tegen vele Instructables en tutorial