begin process at 2012 05 30 06:13:00
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Général

 > 

programmation du microcontrôleur PIC 16F877 et mesure de temperature


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

programmation du microcontrôleur PIC 16F877 et mesure de temperature

lundi 28 mars 2011 à 17:09:54 | programmation du microcontrôleur PIC 16F877 et mesure de temperature

aurelienkam

Bonjour à tous je suis nouveau dans le site et je m'appelle aurelien Kameni. J’étudie cette année en licence le microcontrôleur PIC 16F877.
J’ai un Travail Pratique dans lequel j'ai beaucoup de d'incompréhensions et de difficultés à le résoudre.
En effet, c'est de concevoir sur ISIS et de programmer en C pour PIC 16F877 un système de détection de deux seuils de température équipé du détecteur de température DS18S20.
La sortie du détecteur de température doit être raccordée sur RA5. La température ambiante doit être affichée en continue sur un écran LCD 2x16 raccordé sur les bits RB0 à RB3.
Une LED placé sur RB5 s'allume si la température est >= 35°c puis s'éteint si elle descend en dessous de 20°c.
Merci d'avance
lundi 28 mars 2011 à 17:11:02 | Re : programmation du microcontrôleur PIC 16F877 et mesure de temperature

aurelienkam

Salut. J’ai écrit un programme dans MikroC selon le problème que j'ai posé dernièrement et je rencontre beaucoup de difficulté lors de la compilation.
J’ai aussi des problèmes pour câbler dans ISIS.
SVP je voudrais un soutien par rapport a cela.
Voici mon programme et mon câblage :

/*
Titre : détection de deux seuils de température
Fichier : temperature.c
Auteur : Aurelien Kameni
But : détecter deux seuils de température grâce à un capteur DS18S20 et l'afficher sur un écran LCD 2x16.
Date de creation : 26 Mars 2011
dernière modification : 28 Mars 2011
Configuration :
- µc : PIC 16F877A
- Carte de developpement : EasyPIC6
- Quartz : 8 MHz (HS)
- Modules externes : Capteur DS18S20
LCD 2x16
-Software : MikroC v4.15.0.0
*/

sbit LCD_RS at RB4_bit;
sbit LCD_EN at RB5_bit;
sbit LCD_D7 at RB3_bit;
sbit LCD_D6 at RB2_bit;
sbit LCD_D5 at RB1_bit;
sbit LCD_D4 at RB0_bit;

// Pin direction
sbit LCD_RS_Direction at TRISB4_bit;
sbit LCD_EN_Direction at TRISB5_bit;
sbit LCD_D7_Direction at TRISB3_bit;
sbit LCD_D6_Direction at TRISB2_bit;
sbit LCD_D5_Direction at TRISB1_bit;
sbit LCD_D4_Direction at TRISB0_bit;

const unsigned short TEMP_RESOLUTION = 9;

char *text = "000.0000";


// Set TEMP_RESOLUTION to the corresponding resolution of your DS18x20 sensor:
unsigned temp,ct,dt,u; //ct pour centaine, dt pour dizaine et u pour unité
unsigned short j;


void main()
{
ADCON1 = 0x82; // Configure RA5 pin as digital I/O
trisb = 0xdf;
portb = 0;
// Initialize LCD on PORTB and prepare for output
Lcd_Init();
Lcd_Cmd(_LCD_CLEAR);
Lcd_Cmd(_LCD_CURSOR_OFF);

while(1) // boucle principale
{
//acquisition de la température sur RA5 (temp)
Ow_Reset(&PORTA, 5); // Onewire reset signal
Ow_Write(&PORTA, 5, 0xCC); // Issue command SKIP_ROM
Ow_Write(&PORTA, 5, 0x44); // Issue command CONVERT_T
Delay_us(120);

Ow_Reset(&PORTA, 5);
Delay_us(120);
Ow_Write(&PORTA, 5, 0xCC); // Issue command SKIP_ROM
Ow_Write(&PORTA, 5, 0xBE); // Issue command READ_SCRATCHPAD

temp = Ow_Read(&PORTA, 5);
temp = (Ow_Read(&PORTA, 5) << 8) + temp;

Ow_Reset(&PORTA, 5);
Delay_us(120);
Display_Temperature(temp);
Delay_ms(500);
// Affichage
Lcd_Out(1, 1, "Temperature :");
temp=temp/2; //début du calcul et de l'affichage de la température
ct=temp/100 ;
Lcd_Chr_Cp(ct+0x30);
dt=(temp-100*ct)/10;
Lcd_Chr_Cp(dt+0x30);
u=temp-(ct*100+dt*10);
Lcd_Chr_Cp(u+0x30);

/*Lcd_Out(1, 1, "Cons: ");
Lcd_Chr(2,13,223);
Lcd_Chr(2,14,'C'); */

if(temp>=30)
{
portb=1;
delay_ms(500);
portb=0;
delay_ms(500);
}
else
if(temp<=20)
{
portb=0;
delay_ms(500);
}
}
}


Cette discussion est classée dans : programmation, température, pic, 16f877, microcontrôleur


Répondre à ce message

Sujets en rapport avec ce message

programmation pic 16f877 [ par raminabeul ] programmation pic 16f877 en c avec le logiciel mplab pour commander une m achine a courant continu programmation port ps2 sur pic 16f877 [ par hamdi802 ] je suis en train de réalise un projet de programmation d'un carte électronique a la base pic 16f877 ; mon problème comment programmer un port ps2 sur programmation pic c [ par romanticgirl ] salut tout le monde, je suis entrain de programmer un code en pic c avec un pic 18F452. ce programme sert à lire et écrire sur une carte mémoire SD PIC16F877 [ par bchicta ] J'ai 2 questions: - comment programmer le pic 16F877 POUR recevoir une donnée reçu par une machine via RS232 et l'afficher sur un LCD? - comment progr programmation pic c [ par romanticgirl ] salut tout le monde, je veux savoir si la fonction file_read() permet de lire un seul caractère ou en text entier, de même la fonction file_write(str programmation de pic 16F876 avec mikroC [ par hasnipsr700 ] Bonjour à tous, J'ai un système de chauffage à base de 16F876 et 3 sondes LM35. J'ai déjà réalisé l'étage amplificateur pour les 3 sondes à l'entrée commande domotique par gsm [ par klailatifa ] slt,je suis une étudiante en mastère je suis en train de réaliser mon pfe sur la commande domotique qui nécessite programmation du pic 16f876 pour act programmation des pic en c [ par mechwalid ] salut tous le monde je suis débutants en programmtion et je veut un code simple pour programmer un pic en c pour connaitre le principe (notion de base Programmation pic 16F877A [ par iliamendre ] Salut à tous Je suis étudiant en électronique, je suis à la recherche d'une personne qui maitrise la programmation pour pic, je dois réaliser un proj


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,749 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales