Está en la página 1de 3

Programa

Al inicio se carga la imagen a transmitir a la tarjeta


Al enviar se inicia la transferencia de datos

El cdigo que realiza este programa es el siguiente


function varargout = Interfaz(varargin)
gui_Singleton = 1;
gui_State = struct('gui_Name',
mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @Interfaz_OpeningFcn, ...
'gui_OutputFcn', @Interfaz_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback',
[]);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end
if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
function Interfaz_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn.
% hObject
handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles
structure with handles and user data (see GUIDATA)
% varargin
command line arguments to Interfaz (see VARARGIN)

% Choose default command line output for Interfaz


handles.output = hObject;
% Update handles structure
guidata(hObject, handles);
function varargout = Interfaz_OutputFcn(hObject, eventdata, handles)
% varargout cell array for returning output args (see VARARGOUT);
% hObject
handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles
structure with handles and user data (see GUIDATA)
% Get default command line output from handles structure
varargout{1} = handles.output;
function pushbutton1_Callback(hObject, eventdata, handles)
global imagen Matriz imagen_R imagen_G imagen_B

Matriz=16;
[archivo,ruta]=uigetfile('*.png','ABRIR ARCHIVO');
id=([ruta archivo]);
imagen=imread(id);
%imagen=imresize(imagen,Matriz/length(imagen));
imshow(imagen);
%imagen_R=im2double(imagen(:,:,1));
%imagen_G=im2double(imagen(:,:,2));
%imagen_B=im2double(imagen(:,:,3));
imagen_R=(imagen(:,:,1));
imagen_G=(imagen(:,:,2));
imagen_B=(imagen(:,:,3));
assignin('base','imagen',imagen);
assignin('base','imagen_R',imagen_R);
assignin('base','imagen_G',imagen_G);
assignin('base','imagen_B',imagen_B);

function pushbutton3_Callback(hObject, eventdata, handles)


global Matriz imagen_R imagen_G imagen_B
a=arduino('com6');
for k=1:20
for i=1:Matriz
for j=1:Matriz
a.analogWrite( 9,imagen_R(i,j));
a.analogWrite(10,imagen_G(i,j));
a.analogWrite(11,imagen_B(i,j));
%pause(1)
end
end
end

Para video si se requiere hay que hacer unos cambios pero esto es lo que hace de forma general
recorrer una matriz haciendo una transmisin de 20 cuadros por segundo

También podría gustarte