I recently worked on a project where I integrated an ILI9341 TFT display with touch functionality into an STM32F103RB board. The goal was to display text and handle touch events, such as clicking buttons, while ensuring the display orientation could be changed by a button press. Here’s a detailed walkthrough of the process.
This tutorial will guide you through connecting an ILI9341 TFT display to an STM32F103RB microcontroller on a Nucleo-64 board, displaying text, and rotating the display orientation using a push button.
Pedograph is a medical device for measuring the variation of foot pressure at the various points under the sole.
“Diabetic patients usually suffer from lack of nerve sensation, especially in the feet. Therefore, their gait on standing and during walking may deviate from that of a normal person and points of high pressure develop under the feet. However, due to neuropathy they do not feel any pain which would have been felt had the nerve functions were alright. Later, ulcers form at these high pressure points, leading to gangrene and eventual amputation of the leg. A Pedograph revealing the variation of foot pressure at various points under the sole easily delineates such high pressure regions at an early stage so that special shoe insoles can be prepared to spread the pressure away from the hot spots. This way the patient is saved from eventual amputation, from being crippled for the entire life. Again, pressure points and pattern may differ while standing and during walking, usually it is the latter which put the soles on greater burden, and a dynamic pressure measurement during walking has more importance from a clinical point of view.” (https://bibeat.com/product/dynamic-pedograph/)
The main sensor unit (Fig) uses an optical method to create an
image of light intensities proportional to the pressure impressed at
individual points. This sensor unit provides a video image and rest of the work is done by software.
In this software, I have added a tool for measuring foot length from the composite image.
Below is the fundamental portion of the code.
private void footDisplayPanelMouseClicked(java.awt.event.MouseEvent evt) { // TODO add your handling code here: int FootLength = 0; int footLengthinInch = 0; float ResultofFootlenthInInch =0; MAclickCount++; Integer x = evt.getX(), y = evt.getY(); Graphics g = footDisplayPanel.getGraphics(); Graphics2D g2 = (Graphics2D) g; g2.setStroke(new BasicStroke(3));
int alpha = 127; // 50% transparent Color myColour = new Color(255, 255, 255, alpha); // transparent white
g.setColor(Color.WHITE); // this is the code for pointer// the white '+' symbol g.drawLine(x, y-15, x, y+15); g.drawLine(x-15, y, x+15, y);
// footDisplayPanel.setBackground(myColour); // DisplayLength.setBackground(myColour); DisplayLength.setText("Lenght of The Foot = "+(String.format("%.2f", ResultofFootlenthInInch))+" Inch or "+FootLength+" Pixels"); // DisplayLength.setBackground(myColour);
} if (MAclickCount>=2){ // for refreaching after two click. PreviousX = 0; PreviousY = 0; MAclickCount =0; x =0; y=0; } PreviousX = x; PreviousY = y;