You are on page 1of 5

FAKULTI TEKNOLOGI DAN KEJURUTERAAN ELEKTRONIK DAN KOMPUTER

EMBEDDED SYSTEM PROGRAMMING TOOLS (BEEL 2135)


TUTORIAL 1

1. Define what is an embedded system?

2. List SIX (6) examples of embedded system

3. Differentiate embedded systems from general purpose computing.

4. Other than PIC (microcontroller brand name), what are other example of microcontrollers
available in the market?

5. By comparing with Microprocessor, what is the main difference compare to


microcontroller?

6. List down the available modules which can be found in the microcontroller.

7. When buying a microcontroller, what are the factors should be considered?

8. Explain why it is not suitable to implement desktop operating system as embedded


operating system?

9. Define all terms below:


a. ALU
b. Control unit
c. Registers

10. Explain standard elements of microprocessor


a. CPU
b. Memory
c. Input / Output Device

11. Define the right procedure to implement reset function in PIC.

12. Define the difference between “EEIF” and “PSPIF” in PIC16F877.

13. Why do we need interrupt in microcontroller?

14. Give THREE (3) examples of interrupt sources that can be detected by PIC16F877A
microcontroller.

Page 1 of 5
15. If the value of register INTCON = 0xB0, determine which interrupt sources has been
enabled.

16. Why we need to clear the interrupt flag at the end of interrupt subroutine

17. By using internal crystal as clock, suppose we want to create a delay of 0.5 second in
our program using Timer 0. What is the value of count?

18. By using external clock source (oscillator), what is the output frequency (Fout), when
the external oscillator is 100 kHz and count=8?

19. Name FOUR (4) A/D module register.

20. For an 8-bit ADC, and VREF = 2.56 V. Calculate the D0– D7 output if analog input is
1.7V.

21. PIC16F877A analog digital converter (ADC) module has four register which is
ADRESH, ADRESL, ADCON0 and ADCON1. The value of register ADCON0 and
ADCON1 as shown below.

ADC Register Value


ADCON0 100001x1
ADCON1 11xx1110

a. The resolution in 10-bit ADC and what does 1 bit in 10-bit ADC mean?

b. Calculate the digital data output if the Vin equal to 2.5V.

c. If the PIC16F877A connected to 20MHz oscillator, calculate the conversion time.

d. Find the new value of ADCON0 and ADCON1 register for the following option; 6
channel analog input, Vref+ and Vref- equal to VDD and VSS, clock conversion is
FOSC/32, A/D result is left justified and A/D module is turn ON.

22. Explain the steps of the PWM Programming approach.

23. One of the uses of PWM is as a motor speed control. Based on the H-Bridge Operation
table below, draw DC motor clockwise and counter clockwise circuit.

H-Bridge operation

Page 2 of 5
24. The location from where the program proceeds with execution is called an interrupt
vector. Draw how the interrupt process occurs in the PIC16F877A.

25. Classify the advantage and disadvantage of using Harvard architecture compared to
Von Neumann architecture.

26. Identify the advantages and disadvantages of Reduced Instruction Set Computing
(RISC) technology compared to Complex Instruction Set Computing (CISC)
technology.

27. Illustrate the structure of a microcontroller system.

28. Sketch and explain the meaning of duty cycle.

29. As an embedded system engineer, you have been assigned to design a smart egg
incubator temperature control system. Based on the phone call you had with the
customer, these are the initial requirements you gathered:

a. The control panel will have a soft-touch keypad for the user to enter parameters
such as incubator timer, incubator heating mode, maximum temperature, etc.
These changes will be reflected on the LCD screen.
b. The LCD displays the current date & time during its idle time.
c. The predefined modes (switching switch) will allow the user to select whether
they want to activate the heater with or without the fan.
d. When the incubator reaches the set temperature, a buzzer will emit a loud sound
to notify the user. The heater will also turn off to maintain the set temperature.

Based on the information above, construct a detailed block diagram in order to plan
your project execution. Make sure your block diagram clearly segregates the inputs on
one side and the outputs on another side. Use the proper arrows to illustrate your design

Page 3 of 5
APPENDIX 1

Page 4 of 5
Page 5 of 5

You might also like