MATLAB para interfaz serial PIC (1 / 1 paso)

Paso 1: Código con comentarios

abajo está algo de código, pegué en. Descargar el archivo .txt si quieres el código. Ver las fotos para obtener ayuda con la interfaz serial. Uno muestra el método de la resistencia de 22kohm de conectar el puerto serial a un PIC. La otra muestra el método max232 de conectar el puerto serial a un PIC.

Con conexiones serie el problema más común no es la creación de la computadora y el PIC a la misma velocidad en baudios, así que asegúrese de hacerlo (como se hace en mi código).
También, asegúrese de que usted haya conectado todos los GNDs juntos (PIC, MAX232 y equipo GNDs todos conectados).
Además, asegúrese de que está utilizando el valor del capacitor adecuado para el max232 (max232 vs max232A), ver diagrama en el instructivo para los valores.
Además, asegúrese de que su computadora esté enviando los valores que crees que está enviando. Para ello, pegue los cables en el cable DB9 para hacer un loopback serial. Esto hará que el ordenador recuperar exactamente lo que acaba de enviar. Aquí está un diagrama de cómo conectar este:




Así que su código de matlab hacer una lectura serial justo después de la escritura serial.
También se puede utilizar el puerto serial libre monitoreo software Cerciórese de comunicaciones serie están ocurriendo correctamente (aquí es un ejemplo http://www.batchconverter.com/FreeSerialPortMonitor-download-20643.shtml).

De todos modos, aquí está el código:

%##########################################################################
%########################--MATLAB CODE--###################################
%##########################################################################
% Este código supone que tiene MATLAB conectado a un microcontrolador PIC por puerto serie del PC a través de un
% IC MAX232 _OR_ si no usa un max232 todo usted necesita es una 22 kohm limitar la resistencia en
% la línea serial que conecta la computadora con el PIC (aka Pin 3 y Pin 2, ver más abajo).
% El pin 3 o el puerto DB-9 es la línea de TX, también conocido como la línea que lleva datos en serie de la PC al PIC.
% Pin 2 lleva datos en serie al revés (PIC a la PC) si usted quiere hacer eso.
% Pin 5 es el pin de tierra DB-9 que se debe utilizar para conectar la tierra de la PC con el suelo de la PIC.
% Este código también se supone que utiliza COM3 para comunicación serial con el PIC.

SerPIC = serial('COM3'); % <--cambiar apropiadamente
Set (SerPIC, 'Velocidad', 9600, 'DataBits', 8, 'Paridad', 'none', 'StopBits', 1, 'Control de flujo', 'none');
fopen(SerPIC); %--abrir el puerto serie para PIC

fprintf (SerPIC, '%s', ' 003'); %--enviar una cadena de dígitos _three_ al PIC con ningún terminator ('%s')
%--003 = 00000011 en binario, así que primero dos LEDs de PIC se encenderá

fclose(SerPIC) %--cerrar el puerto serie cuando se hace
Delete(SerPIC)
claro SerPIC

% NOTA 1:
% MATLAB siempre da un error de serial, muy probablemente dirá 'no se puede abrir el puerto serial' la próxima vez te
% ejecutar el programa, así que tienes que reiniciar MATLAB
% NOTA 2:
% el número de debe siempre ser enviado como un número de tres dígitos porque por alguna razón no pude obtener mi foto para recibir
% el número cuando no era de una longitud especificada (ver PIC código: DEC3)

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

'##########################################################################
'#############################--PIC16F877 CODE--###########################
'##########################################################################
' Este código supone que tiene el PIC16F877 con un LED en cada línea del puerto D (8 líneas).
' De esta forma el PIC se encenderá un patrón diferente de LEDs según el número enviar vía serial de MATLAB.
' Cada LED debe estar en serie con un resistor de 470 ohm (ver foto abajo)
'_
' '
' '---LED---\ 470 ohm
'PIC' >---/ \/\/\---GND
' '------LED---/
'---'
'
' Este código también se supone que tiene la línea TX del puerto DB-9 serial conectado al pin 0 del puerto C (PORTC.0)

Incluyen "bs2defs.bas" ' tiene algunas cosas utiles

' DEFINE OSC 4 ' oscilador velocidad en MHz, esto no es necesario supongo
SerI var PORTC.0 ' un nombre fácil referirse al perno serial

TRISD = % 00000000 ' definir PortD como un puerto de salida
PortD = % 00000000 ' set LED puerto a todos los ceros

GetGhost:
Serin2 SerI, 84, (DEC3 B0) ' obtener un número de tres dígitos de pin serial y ponerlo en la variable B0
PortD = B0 ' marcando las líneas de PortD según este número de tres dígitos
GOTO GetGhost

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

Artículos Relacionados

Anillo DIY Flash modificador para luces estroboscópicas Alien Bee

Anillo DIY Flash modificador para luces estroboscópicas Alien Bee

Se trata de un modificador barato para Alien Bee luces estroboscópicas. Crea una luz muy similar a un flash de anillo.  El costo es alrededor de $6.Materiales:Plástico de 16" diámetro / 5" profunda pileta de lavado (almacén del dólar)Plástico de
Interfaz del PIC Rotary dialer

Interfaz del PIC Rotary dialer

me he encontré con una abundancia de teléfonos rotatorios. De hecho, están por todas partes que miro. Con la esperanza de que algún día puedo ver menos de ellos, he comenzado a tomarlos aparte y la reutilización de las piezas para otros fines.Por alg
¿Fácil manera para organizar lápices, audífonos, y Washi Tape todo en uno "estructura"

¿Fácil manera para organizar lápices, audífonos, y Washi Tape todo en uno "estructura"

alguna vez has tenido que hacer un viaje o solo tienes un espacio reducido en heneral? Que este es el proyecto para usted!Paso 1: Lo que necesita Todo lo que necesitas es lo que necesita para organizar: 3 cosas. Lápices, auriculares y cinta de washi.
6 utiliza inusual para los lápices de Ikea

6 utiliza inusual para los lápices de Ikea

estoy contento de traer a usted mi primer instructable.Todos "robamos" IKEA lápices... podemos comprar docenas de lápices tamaño completo por muy poco dinero pero... robamos todavía estos lápices. Así que creo que todos amamos. Por lo menos lo h
Usar Arduino y RS232 protector para interfaz integrada UHF lector LSID-0702

Usar Arduino y RS232 protector para interfaz integrada UHF lector LSID-0702

lector de RFID de UHF de largo alcance (1-6M) (ISO18000 - 6C EPC G2) integra el lector con la antena. Después de primer encendido, el lector vibrará una vez para indicar que comienza a trabajar.  Cuando se acerca al lector de la etiqueta, vibrará par
Configuración de LabVIEW para interfaz con chipKIT

Configuración de LabVIEW para interfaz con chipKIT

Este instructivo pretende ser un tutorial rápido sobreinstalación de LabVIEW y enganchándolo hasta una chipKIT. Documentación sobre cómo hacer esto ya existe en el LabVIEW Hacker.com. Este instructable enlaces a la información presentan en la fuentey
Interfaz del PIC 16F917 giroscopio

Interfaz del PIC 16F917 giroscopio

en este post estudiaremos el módulo ADC (analógico a Digital) de la Microcontroller PIC16F917. Estudiaremos un circuito real de PIC16F917 entretela para un semiconductor de giroscopio.El giroscopio es un sensor de movimiento que detecta la inclinació
Cómo modificar disparadores flash de foto CTR - 301P (ebay) para luces estroboscópicas de baja tensión.

Cómo modificar disparadores flash de foto CTR - 301P (ebay) para luces estroboscópicas de baja tensión.

he comprado recientemente un conjunto de disparadores flash CTR - 301p de ebay. Estaba contento que desencadenó mi flashes de estudio pero había decepcionado que no fuego mi flash de Zapata Promaster. Hice algunas búsquedas y encontrar que otros habí
Pantalla lcd barata para Arduino.

Pantalla lcd barata para Arduino.

Hemos utilizado la pda con un ordenador de sobremesa (robot) y el Nslu2. Aquí vamos a utilizar una pda vieja con serial port.to acto como un lcd. Todo el mundo tiene uno o conoce a alguien que tiene una pda vieja que ya no utilizan.  Pregúnteles si u
Simulador RC con Tx, Arduino y PC

Simulador RC con Tx, Arduino y PC

¿Nuevo avión RC pero quiere aprender controles sin accidentes y lágrimas?Luego leyendo el Instructable derecha :DAplicable sólo si el transmisor viene con un Puerto de DSC (hembra de 3,5 mm estéreo): PCréditosEste Instructable no sería posible sin el
Secuestro de Furby

Secuestro de Furby

tomó el control del cuerpo de un furby usando un microprocesador PIC16F877. Videos en el último paso.El furby incorporado sensores y actuadores:sensor de luz,Sensor IR,Transmisor del IR,sensor de contacto de lengua,sensor del tacto del vientre,micróf
Escudo de combinación de cargador/programador de ArduinoISP

Escudo de combinación de cargador/programador de ArduinoISP

recientemente comencé a interesarme en la construcción de robots basado en Arduino. Puesto que es un proceso traumatizante para desarmar cualquier creación, yo estoy optando para mina mantener vivito y coleando. Para reducir el costo de esta estrateg
Perro, bajar el sofá!

Perro, bajar el sofá!

He estado infinitamente molesto con mi perro en el sofá.  Aunque yo puedo mantenerla fuera de la cama cuando estoy casa, ella sigue teniendo en el sofá cuando estoy lejos.  Introduzca el dispositivo repelente de perro.   He diseñado este dispositivo
Gran baile Robot

Gran baile Robot

construir un robot baile grande. Esto fue supuesta para ser un robot andante, pero beebopped un poco más alrededor.video en el último paso.Paso 1: Construir un prototipo Primero, el _Prototype_:Antes de hacer una gran, robot de alta potencia, es buen