RTES Programs 1 To 8 Programs
RTES Programs 1 To 8 Programs
#include <reg51.h>
void main ()
unsigned int i;
for(i=0;i<5000;i++);
P1=0xFE;
void main()
unsigned int i;
for(i=0;i<5000;i++);
for(i=0;i<5000;i++);
P1=0x01;
sbit mybit=P1^0;
void main(void)
unsigned int i;
mybit=0;
while(1)
mybit=0;
for(i=0;i<19000;i++);
mybit=1;
for(i=0;i<19000;i++);
sbit SW=P1^1;
{}
int main()
SW=1;
while(1)
if((SW ==0))
Delay(1);
else
void main(void)
SCON=0x50;
TR1=1;
while (1)
while (TI==0);
TI=0;
SERIAL RECEIVING
void main()
SCON=0X50;
TMOD=0X20;
TH1=0XFA; //4800
TR1=1;
while(1)
{
while(RI==0); // wait until transmited
mybyte=SBUF;
P1=mybyte;
RI=0;
#define DATA P2
int main()
//main starting
while(1)
DATA=0xc0;
delay(500);
DATA=0xf9;
delay(500);
DATA=0xa4;
delay(500);
DATA=0xb0;
delay(500);
DATA=0x99;
delay(500);
DATA=0x92;
delay(500);
DATA=0x82;
delay(500);
DATA=0xf8;
delay(500);
DATA=0x80;
delay(500);
DATA=0x90;
delay(500);
}
}
sbit rs = P3^7;
sbit rw = P3^6;
sbit en = P3^5;
for(i=0;i<itime;i++)
for(j=0;j<1275;j++);
rs = 0;
rw = 0;
MSDelay(1);
en = 0;
return;
}
rs = 1;
rw = 0;
MSDelay(5);
en = 0;
return;
void main ()
unsigned int x;
lcdcmd(0x38);
lcdcmd(0x0E);
lcdcmd(0x01);
lcdcmd(0x06);
for(x=0;x<16;x++)
lcddata (str1[x]);
MSDelay (25);
lcdcmd(0xc0);
for(x=0;x<15;x++)
lcddata (str2[x]);
MSDelay(25);
while(1);
}
}
void LCD_Init(void) {
LCD_Cmd(0x38);
LCD_Cmd(0x0E);
LCD_Cmd(0x01);
LCD_Cmd(0x06);
LCD_Cmd(0x80);
}
void LCD_Cmd (unsigned char cmd) {
ldata = cmd;
rs = 0;
rw = 0;
en = 1;
Delay(1);
en = 0;
}
void LCD_Data(unsigned char dat) {
ldata = dat;
rs = 1;
rw = 0;
en = 1;
Delay(1);
en = 0;
}
void LCD_Print (char *str) {
while (*str) {
LCD_Data(*str++);
}
}
void Delay(unsigned int time) {
unsigned int i, j;
for (i = 0; i < time; i++)
for (j = 0; j < 1275; j++);
}
7.LED Blinking and Seven Segment Display with STM32
https://raw.githubusercontent.com/stm32duino/
BoardManagerFiles/refs/heads/main/
package_stmicroelectronics_index.json
copy above URL in file-> preferences->Additional Boards
Manager URLs
LED blinking with STM32
void setup() {
// initialize digital pin LED_BUILTIN as an output.
pinMode(D2, OUTPUT);
}
const int segmentPins[] = {D2, D3, D4, D5, D6, D7, D8}; // A, B, C, D, E, F, G
void setup() {
// Set segment pins as outputs
for (int i = 0; i < 7; i++) {
pinMode(segmentPins[i], OUTPUT);
}
}
void loop() {
for (int i = 0; i < 10; i++) {
displayDigit(i);
delay(1000); // Wait for 1 second
}
}
void displayDigit(int digit) {
// Set segments based on the digit
for (int i = 0; i < 7; i++) {
digitalWrite(segmentPins[i], digits[digit][i]);
}
}
8.// LCD INTERFACING WITH STM32 NUCLEO64 F411RE
Step 1: Connect the hardware
Step2: Install the LiquidCrystal Library
Open the Arduino IDE.
Go to Sketch > Include Library > Manage Libraries.
In the Library Manager, search for LiquidCrystal and install the LiquidCrystal library (by
Arduino).
Step 3: Ensure board selection is correct, type and upload the code
#include <LiquidCrystal.h>
void setup() {
// Set up the LCD's number of columns and rows:
lcd.begin(16, 2);
// Print a message to the LCD
lcd.print("Hello, STM32!");
}
void loop() {
// Set the cursor to the second row, first column
lcd.setCursor(0, 1);
// Print another message
lcd.print("LCD Interface!");
delay(1000);
lcd.clear();
delay(1000);
}