Clear Filters
Clear Filters

How to change pushbutton colour in Guide without pressing it ?

1 view (last 30 days)
I have a GUI that reads the DHT11 sensor data attached to Arduino. I also have pushbutton in my GUI. Now, how do I change pushbutton colour based on incoming sensor data. For, example if the temperature is below 30 celsius then pushbutton should turn to Green otherwise it should turn to Red.
  6 Comments
Karthik Muthineni
Karthik Muthineni on 7 Mar 2020
Hello Saad Oussaada,
You can create GUI in MATLAB. For that type guide command in command editor, and a window will pop-up. From there you can follow this link to create GUI for your case. You can drag and drop pushbuttons, textarea, axes, and many more widgets. Once you select particular widget you need to assign code for it to do particular task. In your case, if you want to read DHT data and display it on graph you can use this piece of code.
% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
delete(instrfind({'Port'},{'COM6'})); % Serial port of your dht microcontroller
s = serial('COM6');
time=1000;
i=1;
while(i<time)
i=i+1;
fopen(s)
fprintf(s, 'Your serial data goes here')
out = fscanf(s)
Temp(i)=str2num(out(1:2));
disp(Temp)
fclose(s)
plot(handles.axes1,Temp)
xlabel('Time (seconds)');
ylabel('Temperature (°C)');
set(handles.text21,'String',num2str(Temp)); % Displays Temperature value in text widget of id 21
drawnow;
end
delete(s)
clear s
if Temp <= 35
set(hObject,'BackgroundColor','green')
else
set(hObject,'BackgroundColor','red')
end
guidata(hObject,handles);

Sign in to comment.

Accepted Answer

Karthik Muthineni
Karthik Muthineni on 11 Feb 2018
Thank you, Walter, its working.

More Answers (1)

Walter Roberson
Walter Roberson on 11 Feb 2018
You can set the BackgroundColor property of the uicontrol handle
handles.stop_button.BackgroundColor = [0.8 0 0] %red

Categories

Find more on Migrate GUIDE Apps in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!