Vous êtes sur la page 1sur 6

Manuel d'utilisation de la Calculatrice

PIC16F877A

Par
Mohamed Maatallah

Version & Date:


Version 1REV2
1/25/2024
1. Introduction:
Bienvenue dans le manuel d'utilisation complet de la calculatrice PIC16F877A
développée par Mohamed Maatallah. Ce manuel vous fournira une compréhension
approfondie du fonctionnement de cette calculatrice, y compris sa configuration matérielle et
des explications détaillées sur son code source.

2. Analyze Des Matrielles et De Code:

Materielle Details

 LCD_EN à RB4
 LCD_RS à RB2
 LCD_D0 à RD0
 LCD_D1 à RD1
 LCD_D2 à RD2
Configuration de l'afficheur LCD
 LCD_D3 à RD3
 LCD_D4 à RD4
 LCD_D5 à RD5
 LCD_D6 à RD6
 LCD_D7 à RD7

 La variable keypadPort est définie pour


Clavier 4x4
utiliser le port C pour le clavier matriciel.

3. Structure du code
a. Fonction calculer():
La fonction calculer() prend deux opérandes et un opérateur en entrée et renvoie le
résultat de l'opération mathématique correspondante. Elle gère également la division
par zéro.
b. Fonction longEnChaine()
La fonction longEnChaine() convertit un nombre long long en une chaîne de caractères
pour l'affichage sur l'écran LCD. Elle prend en charge la gestion des signes négatifs.

c. Fonction empilerOperande()
La fonction empilerOperande() permet d'empiler une opérande sur la pile des
opérandes.

d. Fonction depilerOperande()
La fonction depilerOperande() permet de dépiler une opérande de la pile des opérandes.

e. Fonction empilerOperateur()
La fonction empilerOperateur() permet d'empiler un opérateur sur la pile des
opérateurs.

f. Fonction depilerOperateur()
La fonction depilerOperateur() permet de dépiler un opérateur de la pile des
opérateurs.

g. Fonction evaluerExpression()
La fonction evaluerExpression() évalue une expression en utilisant les piles des
opérandes et des opérateurs. Elle effectue les calculs progressivement jusqu'à obtenir un
résultat.

h. Fonction afficherResultat()
La fonction afficherResultat() affiche le résultat d'un calcul sur l'écran LCD en
convertissant le résultat en une chaîne de caractères.

i. Fonction reinitialiserCalculatrice()
La fonction reinitialiserCalculatrice() réinitialise la calculatrice en réinitialisant les piles
et l'écran LCD.

j. Fonction gererChiffre()
La fonction gererChiffre() gère l'entrée d'un chiffre depuis le clavier, en ajoutant le
chiffre au nombre en cours de saisie.

k. Fonction gererOperateur()
La fonction gererOperateur() gère l'entrée d'un opérateur depuis le clavier, en empilant
le nombre en cours et l'opérateur correspondant.

5. Boucle principale (main())


La boucle principale main() initialise le clavier et l'écran LCD, puis entre dans une
boucle infinie où elle attend l'entrée de l'utilisateur depuis le clavier. Selon la touche
pressée, elle appelle les fonctions appropriées pour gérer les chiffres, les opérateurs, la
réinitialisation de la calculatrice et l'affichage des résultats.
1. Addressing the Inquiry
 If the inquiry is about Product Information or Pricing, the Client Relations
Executive should address it directly using predefined templates.
 If it's a Technical Support inquiry, forward it to the Technical Team and inform the
client about the expected response time.
 For inquiries falling under 'Others', assess the nature and forward it to the relevant
department.

2. Follow-up and Closure


 Once the inquiry is addressed, send a follow-up email to the client ensuring their
query was satisfactorily resolved.
 Update the "Client Inquiry Register" with the resolution details and date of
closure.

3. Escalation
 If the Client Relations Executive cannot address an inquiry, or if a client's concern
isn't resolved in the stipulated time, escalate to the Client Relations Manager.

Summary SOP Flowchart

Documentation
It is imperative to maintain clear and organized records for the sake of transparency,
accountability, and ongoing process improvements.
1. Client Inquiry Register: Every inquiry, irrespective of its nature or source, should be
promptly logged into the "Client Inquiry Register." This register should detail:
 Date and time
 Client name and contact
 Brief description
 Assigned priority level
 Status
 Resolution details
 Date of closure

2. Monthly Reports: At the close of each month, a comprehensive report should be


generated from the "Client Inquiry Register". This report should summarize:
 Total number of inquiries received
 Number of resolved inquiries
 Number of pending inquiries
 Any patterns
 Insights

These reports not only provide a snapshot of the month's activities but also offer
critical data to aid managerial decisions and strategy adjustments. The Client Relations
Manager should prepare and submit this report to the management for review.

Review
To ensure that our procedures remain up-to-date and continually drive efficient and
effective operations, the following review guidelines have been established:

 Annual Review: This SOP will undergo a comprehensive review annually. This
review will assess the efficacy of the procedure, ensuring it aligns with current
organizational goals and industry best practices.

 Event-triggered Review: Beyond the scheduled annual examination, this SOP will
be revisited in the event of major changes to the operational processes of the
department or company.
CHOOSE & DOWNLOAD MORE SOP TEMPLATE © TEMPLATE.NET

Vous aimerez peut-être aussi