From 1c7296cf33bb35536c73f791c58a522f67568fd6 Mon Sep 17 00:00:00 2001 From: sherlock Date: Thu, 16 Oct 2025 02:17:32 +0530 Subject: [PATCH] Updated data for ES --- ES/Lab/LAB5/Questions.md | 3 - ES/Lab/LAB6/JOHNSON_Counter.c | 16 ++-- .../JOHNSON_Up_Down_Same_GPIO.c | 0 ES/Lab/Lab7/JOHNSON_Up_Down_Separate_GPIO.c | 30 ++++++ ES/Lab/Lab8/16keyOn7Seg.c | 89 ++++++++++++++++++ ES/Lab/Lab8/7SegUpDown-Switch.c | 7 +- ES/Lab/Lab8/JOHNSON_Up_Down_Separate_GPIO.c | 45 --------- ES/Lab/Lab9/LCD_DOUBLELINE.c | 17 +--- ES/Lab/Lab9/LCD_UPPERLINE.c | 10 +- ES/Lab/Lab9/dice.c | 45 +++++++++ IS/Lab/Lab8/PKSE/encrypted_index.pkl | Bin 18279 -> 18227 bytes IS/Lab/Lab8/SSE/encrypted_index.bin | Bin 0 -> 3152 bytes 12 files changed, 185 insertions(+), 77 deletions(-) delete mode 100644 ES/Lab/LAB5/Questions.md rename ES/Lab/{Lab8 => Lab7}/JOHNSON_Up_Down_Same_GPIO.c (100%) create mode 100644 ES/Lab/Lab7/JOHNSON_Up_Down_Separate_GPIO.c create mode 100644 ES/Lab/Lab8/16keyOn7Seg.c delete mode 100644 ES/Lab/Lab8/JOHNSON_Up_Down_Separate_GPIO.c create mode 100644 ES/Lab/Lab9/dice.c create mode 100644 IS/Lab/Lab8/SSE/encrypted_index.bin diff --git a/ES/Lab/LAB5/Questions.md b/ES/Lab/LAB5/Questions.md deleted file mode 100644 index 539bcf5..0000000 --- a/ES/Lab/LAB5/Questions.md +++ /dev/null @@ -1,3 +0,0 @@ -1. Sort using insertion sort -2. [Factorial using recursion](https://git.aadit.cc/aadit/MIT-Curricular/src/branch/main/ES/Lab/LAB5/FACTORIAL.asm) -3. Search for an element and store the address diff --git a/ES/Lab/LAB6/JOHNSON_Counter.c b/ES/Lab/LAB6/JOHNSON_Counter.c index 84202e4..6296723 100644 --- a/ES/Lab/LAB6/JOHNSON_Counter.c +++ b/ES/Lab/LAB6/JOHNSON_Counter.c @@ -3,29 +3,29 @@ int main(){ unsigned long x, i, j; // from P1.24 -> 31 - LPC_PINCON->PINSEL0 = 0; // values + LPC_PINCON->PINSEL0 = 0; // values + + LPC_GPIO0->FIODIR = 0xFF<<15; - LPC_GPIO0->FIODIR = 0xFF<<15; - x = 1<<15; // new variable - + while(1){ - x = 1<<15; + x = 1<<15; // LOOP to fill 24->31 incrementally for(i=0;i<8;i++){ - LPC_GPIO0->FIOSET=x; + LPC_GPIO0->FIOSET=x; x = x<<1; for(j=0; j<800000; j++); } // delay // LOOP to empty 24->31 incrementally. - x = 1<<15; + x = 1<<15; for(i=0;i<8;i++){ LPC_GPIO0->FIOCLR=x; x = x<<1; for(j=0; j<800000; j++); } - } \ No newline at end of file +} diff --git a/ES/Lab/Lab8/JOHNSON_Up_Down_Same_GPIO.c b/ES/Lab/Lab7/JOHNSON_Up_Down_Same_GPIO.c similarity index 100% rename from ES/Lab/Lab8/JOHNSON_Up_Down_Same_GPIO.c rename to ES/Lab/Lab7/JOHNSON_Up_Down_Same_GPIO.c diff --git a/ES/Lab/Lab7/JOHNSON_Up_Down_Separate_GPIO.c b/ES/Lab/Lab7/JOHNSON_Up_Down_Separate_GPIO.c new file mode 100644 index 0000000..de21f9a --- /dev/null +++ b/ES/Lab/Lab7/JOHNSON_Up_Down_Separate_GPIO.c @@ -0,0 +1,30 @@ +#include + +int main(){ + unsigned long x, y, i, j; + + LPC_PINCON->PINSEL0 = 0; + LPC_GPIO0->FIODIR = 0xFF<<15; + LPC_GPIO2->FIODIR = 0x0<<12; + + while(1){ + x = LPC_GPIO2->FIOPIN & (1 << 12); + y = x ? (1<<22) : (1<<15); + int dir = x ? 1 : 0; + + for(int k=0; k<2; k++){ + for(i=0; i<8; i++){ + LPC_GPIO0->FIOSET = y; + y = dir ? y>>1 : y<<1; + for(j=0; j<800000; j++); + } + y = x ? (1<<22) : (1<<15); + LPC_GPIO0->FIOCLR = y; + } + for(i=0; i<8; i++){ + LPC_GPIO0->FIOCLR = y; + y = dir ? y>>1 : y<<1; + for(j=0; j<800000; j++); + } + } +} diff --git a/ES/Lab/Lab8/16keyOn7Seg.c b/ES/Lab/Lab8/16keyOn7Seg.c new file mode 100644 index 0000000..37a9396 --- /dev/null +++ b/ES/Lab/Lab8/16keyOn7Seg.c @@ -0,0 +1,89 @@ +#include + +int main(void) { + unsigned long i, c, r; + unsigned long candidate = 0xFF; + unsigned long stable = 0; + unsigned long displayed = 0xFF; + unsigned long read_key, rows, seg; + unsigned char seven_seg[16] = { + 0x3F, 0x06, 0x5B, 0x4F, + 0x66, 0x6D, 0x7D, 0x07, + 0x7F, 0x6F, 0x77, 0x7C, + 0x39, 0x5E, 0x79, 0x71 + }; + + // Configure pins as GPIO for used ranges + LPC_PINCON->PINSEL0 = 0; + LPC_PINCON->PINSEL1 = 0; + LPC_PINCON->PINSEL3 = 0; + + // Directions + LPC_GPIO0->FIODIR |= (0xFFu << 4); // P0.4..P0.11 -> segments out + LPC_GPIO0->FIODIR |= (0x0Fu << 15); // P0.15..P0.18 -> columns out + LPC_GPIO0->FIODIR &= ~(0x0Fu << 19); // P0.19..P0.22 -> rows in + LPC_GPIO1->FIODIR |= (0x0Fu << 23); // P1.23..P1.26 -> digit enables out + + // Initial states + LPC_GPIO0->FIOCLR = (0xFFu << 4); // segments off + LPC_GPIO1->FIOCLR = (0x0Fu << 23); // all digits off + LPC_GPIO0->FIOSET = (0x0Fu << 15); // all columns high (inactive) + + while (1) { + read_key = 0xFF; + + // Scan 4 columns + for (c = 0; c < 4; c++) { + // Set all columns high, then pull one low + LPC_GPIO0->FIOSET = (0x0Fu << 15); + for (i = 0; i < 50; i++); // short settle delay + LPC_GPIO0->FIOCLR = (1u << (15 + c)); + for (i = 0; i < 200; i++); // settle after driving column + + // Read rows P0.19..P0.22 (active-low). Normalize to 0..15. + rows = (LPC_GPIO0->FIOPIN >> 19) & 0x0Fu; + + if (rows != 0x0Fu) { + for (r = 0; r < 4; r++) { + if (((rows >> r) & 1u) == 0u) { + read_key = (c << 2) + r; // c*4 + r, 0..15 + break; + } + } + LPC_GPIO0->FIOSET = (0x0Fu << 15); // restore columns high + break; // found a key this scan + } + } + + // Debounce: require 3 consecutive identical reads + if (read_key == candidate) { + if (stable < 3) stable++; + } else { + candidate = read_key; + stable = 1; + } + + if (stable >= 3) { + if (candidate != 0xFF) { + displayed = candidate & 0x0F; + } + stable = 3; // clamp + } + + // Update display if we have a digit + if (displayed != 0xFF) { + seg = seven_seg[displayed]; + LPC_GPIO0->FIOCLR = (0xFFu << 4); + LPC_GPIO0->FIOSET = ((unsigned long)seg << 4); + + // Enable only digit at P1.23 + LPC_GPIO1->FIOCLR = (0x0Fu << 23); + LPC_GPIO1->FIOSET = (1u << 23); + } else { + LPC_GPIO1->FIOCLR = (0x0Fu << 23); + } + + // Pace scanning/debounce timing + for (i = 0; i < 3000; i++); + } +} diff --git a/ES/Lab/Lab8/7SegUpDown-Switch.c b/ES/Lab/Lab8/7SegUpDown-Switch.c index 9594795..54142c8 100644 --- a/ES/Lab/Lab8/7SegUpDown-Switch.c +++ b/ES/Lab/Lab8/7SegUpDown-Switch.c @@ -2,7 +2,7 @@ int main(void){ unsigned long i, j, n; - unsigned int x; + unsigned int x; unsigned long number = 0; unsigned long count = 0; unsigned char seven_seg[16] = { @@ -20,8 +20,8 @@ int main(void){ while (1) { n = number; - x = LPC_GPIO0->FIOPIN & (1 << 21); - + x = LPC_GPIO0->FIOPIN & (1 << 21); + for (i = 0; i < 4; i++) { LPC_GPIO1->FIOCLR = (0x0F << 23); LPC_GPIO1->FIOSET = (i << 23); @@ -43,5 +43,4 @@ int main(void){ } } } - } diff --git a/ES/Lab/Lab8/JOHNSON_Up_Down_Separate_GPIO.c b/ES/Lab/Lab8/JOHNSON_Up_Down_Separate_GPIO.c deleted file mode 100644 index 45741de..0000000 --- a/ES/Lab/Lab8/JOHNSON_Up_Down_Separate_GPIO.c +++ /dev/null @@ -1,45 +0,0 @@ -#include - -int main(){ - unsigned long x, y, i, j; - - // LEDs - LPC_PINCON->PINSEL0 = 0; - LPC_GPIO0->FIODIR = 0xFF<<15; - - LPC_GPIO2->FIODIR = 0x0<<12; - - while(1){ - x = LPC_GPIO2->FIOPIN & (1 << 12); - if(x){ - y = 1<<22; - for(i=0;i<8;i++){ - LPC_GPIO0->FIOSET=y; - y = y>>1; - for(j=0; j<800000; j++); - } - y = 1<<22; - for(i=0;i<8;i++){ - LPC_GPIO0->FIOCLR=y; - y>>=1; - for(j=0; j<800000; j++); - } - } - - if(!x){ - y = 1<<15; - for(i=0;i<8;i++){ - LPC_GPIO0->FIOSET=y; - y = y<<1; - for(j=0; j<800000; j++); - } - y = 1<<15; - for(i=0;i<8;i++){ - LPC_GPIO0->FIOCLR=y; - y = y<<1; - for(j=0; j<800000; j++); - } - } - } -} - diff --git a/ES/Lab/Lab9/LCD_DOUBLELINE.c b/ES/Lab/Lab9/LCD_DOUBLELINE.c index 2f81af5..e388e04 100644 --- a/ES/Lab/Lab9/LCD_DOUBLELINE.c +++ b/ES/Lab/Lab9/LCD_DOUBLELINE.c @@ -4,9 +4,12 @@ #define EN_CTRL 0x10000000 #define DT_CTRL 0x07800000 +#define LCD_COLS 16 + unsigned int col = 0; unsigned long int temp1 = 0, temp2 = 0, i, j; unsigned char flag1 = 0, flag2 = 0; + unsigned char msg[] = ("Long messages work well, heh."); void lcd_write(void); @@ -17,23 +20,18 @@ unsigned long int init_command[] = { 0x30, 0x30, 0x30, 0x20, 0x28, 0x0C, 0x01, 0x80 }; -#define LCD_COLS 16 - int main() { LPC_GPIO0->FIODIR = DT_CTRL | RS_CTRL | EN_CTRL; flag1 = 0; - for (i = 0; i < 8; i++) { temp1 = init_command[i]; lcd_write(); } - flag1 = 1; - i = 0; while (msg[i] != '\0') { @@ -41,13 +39,11 @@ int main() { flag1 = 0; temp1 = 0xC0; lcd_write(); - flag1 = 1; } else if (col == (LCD_COLS * 2)) { flag1 = 0; temp1 = 0x80; lcd_write(); - flag1 = 1; col = 0; } @@ -57,8 +53,7 @@ int main() { col++; } - while (1) - ; + while (1); } void lcd_write(void) { @@ -95,8 +90,6 @@ void port_write(void) { void delay_lcd(unsigned long r1) { unsigned long r; - - for (r = 0; r < r1; r++) - ; + for (r = 0; r < r1; r++); return; } diff --git a/ES/Lab/Lab9/LCD_UPPERLINE.c b/ES/Lab/Lab9/LCD_UPPERLINE.c index 9639d62..50b4d61 100644 --- a/ES/Lab/Lab9/LCD_UPPERLINE.c +++ b/ES/Lab/Lab9/LCD_UPPERLINE.c @@ -2,11 +2,11 @@ #define RS_CTRL 0x08000000 #define EN_CTRL 0x10000000 -#define DT_CTRL 0x07800000 +#define DT_CTRL 0x07800000 unsigned long int temp1 = 0, temp2 = 0, i, j; unsigned char flag1 = 0, flag2 = 0; -unsigned char msg[] = ("Santhosh Sir Gr8"); +unsigned char msg[] = ("We have fun."); void lcd_write(void); void port_write(void); @@ -23,11 +23,11 @@ int main() { temp1 = init_command[i]; lcd_write(); } - + flag1=1; - + i= 0; - + while(msg[i]!='\0'){ temp1=msg[i]; i++; diff --git a/ES/Lab/Lab9/dice.c b/ES/Lab/Lab9/dice.c new file mode 100644 index 0000000..3ba453b --- /dev/null +++ b/ES/Lab/Lab9/dice.c @@ -0,0 +1,45 @@ +#include +#include + +#define RS_CTRL 0x08000000 +#define EN_CTRL 0x10000000 +#define DT_CTRL 0x07800000 + +unsigned long int temp1 = 0, temp2 = 0, i, j; +unsigned char flag1 = 0, flag2 = 0; +unsigned char msg[] = ("Dice: "); + +void lcd_write(void); +void port_write(void); +void delay_lcd(unsigned long); + +unsigned long int init_command[] = {0x30,0x30,0x30,0x20,0x28,0x0C,0x01,0x80}; + +int main() { + LPC_GPIO0->FIODIR = DT_CTRL | RS_CTRL | EN_CTRL; + for (i = 0; i < 8; i++) { temp1 = init_command[i]; flag1 = 0; lcd_write(); } + LPC_PINCON->PINSEL3 = 0; LPC_GPIO0->FIODIR &= ~(1 << 21); + + while (1) { + while ((LPC_GPIO0->FIOPIN & (1 << 21)) != 0); + flag1 = 0; temp1 = 0x01; lcd_write(); temp1 = 0x80; lcd_write(); + flag1 = 1; for (i = 0; msg[i] != '\0'; i++) { temp1 = msg[i]; lcd_write(); } + j = (rand() % 6) + 1; temp1 = '0' + j; lcd_write(); + while ((LPC_GPIO0->FIOPIN & (1 << 21)) == 0); + } +} + +void lcd_write(void) { + flag2 = (flag1 == 1) ? 0 : (((temp1 == 0x30) || (temp1 == 0x20)) ? 1 : 0); + temp2 = (temp1 & 0xF0) << 19; port_write(); + if (!flag2) { temp2 = (temp1 & 0x0F) << 23; port_write(); } +} + +void port_write(void) { + LPC_GPIO0->FIOPIN = temp2; + if (flag1 == 0) LPC_GPIO0->FIOCLR = RS_CTRL; else LPC_GPIO0->FIOSET = RS_CTRL; + LPC_GPIO0->FIOSET = EN_CTRL; delay_lcd(100); LPC_GPIO0->FIOCLR = EN_CTRL; + delay_lcd(500000); +} + +void delay_lcd(unsigned long r1) { unsigned long r; for (r = 0; r < r1; r++); } diff --git a/IS/Lab/Lab8/PKSE/encrypted_index.pkl b/IS/Lab/Lab8/PKSE/encrypted_index.pkl index 884a90f50a057e8ef6048a401f2568264827517a..5082e65a82bea6b4d79dec1628e7f879890c2f5f 100644 GIT binary patch literal 18227 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

-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 literal 0 HcmV?d00001