Fragen im Vorstellungsgespräch: Junior embedded software engineer
107
Fragen aus Vorstellungsgesprächen für „ Junior Embedded Software Engineer“, von Bewerbern geteiltTop-Fragen in Vorstellungsgesprächen

Write a program to check if the given array is palindrome or not ??
2 Antworten↳
int CheckPal (int *arr , int size) { int i=0,j=size-1,Pal=1; while (i<=j) { if (arr[i]==arr[j]); else { Pal =0; break; } ++i;--j; } if (Pal) return 1; else return 0; } Weniger
↳
int main() { int flag=-1; int ar[5]={4,1,5,1,4}; for(int forword=0,bw=4;forword=0;forword++,bw--){ if(ar[forword]==ar[bw]){flag=1;} else{flag=-1;break;} //for(int bw=4;bw>=0;bw--) } flag==1?printf("ok"):printf("not ok"); } Weniger

difference between CAN and LIN, difference between RAM and ROM, EEPROM and Flash memory, Micro controller and Microprocessor i was asked also about spi,uart are they full duplex or half duplex the number of wires needed in spi
2 Antworten↳
CAN: is a multi-master serial bus standard for connecting ECUs Lines: 2 Lines[TX and RX] Speed: up to 1 Mbit/s LIN: is a broadcast serial network comprising one master and typically up to 16 slaves. Lines: Single wire communication Speed: up to 20 kbit/s. Weniger
↳
CAN: LIN: ===================================================================== EEPROM & Flash Memory are the same but flash memory has large storage space than EEPROM. ===================================================================== no. of wires in SPI are 4 wires (MOSI , MISO , CLK , SS) ===================================================================== SPI : full duplex UART: full duplex Weniger

Write a Program to sort an array? -- I used selection sort
2 Antworten↳
#include #include int main() { int i,j,temp; int arr [5] = {3,2,1,7,6}; for (i=0;iarr[j]) { temp = arr[i]; arr[i]=arr[j]; arr[j]=temp; } } } for (i=0;i<5;i++) printf("%d ",arr[i]); return 0; } Weniger
↳
the swap process can be more efficient :D i know doesn't make much better but it do ___ using bitwise operators arr[i] = arr[i] ^ arr[j]; arr[j] = arr[i] ^ arr[j]; arr[i] = arr[i] ^ arr[j]; ___ using mathmatical operators arr[i] = arr[i] + arr[j]; arr[j] = arr[i] - arr[j]; arr[i] = arr[i] - arr[j]; Weniger

C code optimization Projects you've done before with Microcontrollers draw schematic diagram for voting system using SPI protocol ADC, UART, SPI
2 Antworten↳
technical interview is in arabic simple language
↳
the technical interviews were in English or Arabic ?

1- Describe SPI with painting how it works
1 Antworten↳
1- SPI is a serial, wired, full duplex, Sync, SMMS, single ended "non differential" protocol. it is built as a shift register sends and receives serially. Weniger

9- local vs global variables vs functions when used static keyword .... and many other questions.
1 Antworten↳
9- Static with: 1- Local Var: Program life time & function local scope 2- Global Var: Program life time & file scope 3- Function: Program life time & file scope Weniger


different bet microprocessor and micro-controller whats rtos writ a c programm to check if an array is a mirrored one write isr function
1 Antworten↳
A microprocessor generally does not have Ram, ROM and IO pins. It usually uses its pins as a bus to interface to peripherals such as RAM, ROM, Serial ports, Digital and Analog IO. It is expandable at the board level due to this. ============================================================== A microcontroller is 'all in one', the processor, ram, IO all on the one chip, as such you cannot (say) increase the amount of RAM available or the number of IO ports. The controlling bus is internal and not available to the board designer. =============================================================== RTOS : an OS that processes must be executed and ends at exactly the deadline without buffering delays. =============================================================== To check a mirrored array i.e. 123321, compare the (n-1) element (n = 1 , 2 , ... ) with the (size - n) element , the loop will take size / 2 times =============================================================== isr function void isr_handler () { Interrupt_enable = 0; Interrupt_flag = 0; do some code ... interrupt_enable =1; } Weniger

What is the gain for this op-amp
1 Antworten↳
I got this totally wrong cause I hadn't practised but it was actually an easy question Weniger

Rtos,memory sections,structure hacking, keypad, lcd,uart,spi,sharing memory between modules,static,volatile,extern,code to reverse a no,code to create linkedlist and reverse it,code to manipulate structures members
1 Antworten↳
Memory Sections in Microcontroller: .text section .data section .bss section .eeprom section .noinit section .initN section .finiN section --------------------------- struct hack is a way to make a struct with variable size (by making the last element of it an array (even a defined size of array elements or you can declare this array "arr[]" of undefined size and make size changes in runtime and this is allowed only in c99)) ----------------------- Weniger