Étape 3: La partie codante (avec Mikro C)
MikroC ouvert. Créez un nouveau projet et sélectionnez P16F877A microcontrôleur avec fréquence 8 Mhz. Nommez le projet comme 'Volume Adjuster' y inclure tous les fichiers de la bibliothèque. Si vous ne voulez pas inclure tous les fichiers de bibliothèque, puis inclure < lcd.h > et < lcdconstants.h > dans votre programme. Suffit de copier et coller le code dans Mikro C
Codage BEGIN
UN ARTICLE de TheEffectiver.
spécifier quelles broches seront utilisés comme quoi. Ce morceau de code n’est nécessaire.
sbit LCD_RS à RB1_bit ;
sbit LCD_EN à RB2_bit ;
sbit LCD_D7 à RB7_bit ;
sbit LCD_D6 à RB6_bit ;
sbit LCD_D5 à RB5_bit ;
sbit LCD_D4 à RB4_bit ;
Spécification de la fin pour broches
préciser les indications de la broche
sbit LCD_RS_Direction à TRISB1_bit ;
sbit LCD_EN_Direction à TRISB2_bit ;
sbit LCD_D4_Direction à TRISB4_bit ;
sbit LCD_D5_Direction à TRISB5_bit ;
sbit LCD_D6_Direction à TRISB6_bit ;
sbit LCD_D7_Direction à TRISB7_bit ;
Fin de la direction de la broche de LCD
int Volume = 10 ;
char de Vol [16] ;
int maxvol = 20 ;
int minvol = 5 ;
Sub main()
{
TRISC. TRISC1 = 1 ; revient au mode d’entrée (pour augmenter le volume) RC1
TRISC. TRISC2 = 1 ; ensembles Rc2 en mode imput (pour diminuer le volume)
PORTC = 0 X 00 ; définit toutes les broches d’entrée logique bas (ou zéro volt)
Lcd_Init() ; pour initialiser l’écran lcd
Lcd_Cmd(_LCD_CLEAR) ; Effacer l’affichage de l’écran lcd
/ * Lcd_Cmd(command); * /
Lcd_Cmd(_LCD_CURSOR_OFF) ; Mettez le curseur hors parce qu’il apparaît sur l’écran lcd
/ * Lcd_Out (rangée numéro, numéro de la colonne, texte);*/
Lcd_Out (1,1, "Bouton de réglage du Volume"); //Display le nom du programme
Delay_ms (1000); //give un délai de 1 seconde
Lcd_Cmd(_LCD_CLEAR) ; effacer toutes les lignes de l’écran lcd
Lcd_Out(1,1,"volume:") ; afficher le volume dans la première rangée
intTostr (Volume, Vol); int //convert à string(char array) depuis Lcd_Out affiche uniquement la chaîne
Lcd_Out(2,1,vol) ; afficher la chaîne convertie
tout en //The (1) boucle sans fin commence
{
if(PORTC. RC1 == 1) //checks pour l’entrée
{
while(PORTC. RC1 == 1); //stays ici jusqu'à l’entrée devient zéro
Volume ++ ; augmente le volume
if(volume==maxvol) //checks si le volume est un volume maximal
{
Lcd_Cmd(_LCD_CLEAR) ; efface l’écran
Lcd_Out(1,1,"volume:") ;
Lcd_Out (2,1, "VOLUME MAX") ; affiche le volume maximum dans la deuxième rangée
Delay_ms(1000) ; donne un délai
Lcd_Out (2, 1,"") ; efface la deuxième rangée (il y a 16 caractères vierges dans cette chaîne)
Volume--; //Decreases le volume étant donné que le volume est maximal
}
}
Ce qui précède s’applique pour le tronçon restant
if(PORTC. RC2 == 1)
{
while(PORTC. RC2 == 1) ;
Volume--;
if(volume==minvol)
{
Lcd_Cmd(_LCD_CLEAR) ;
Lcd_Out(1,1,"volume:") ;
Lcd_Out (2,1, "MIN VOLUME") ;
Delay_ms(1000) ;
Lcd_Out (2, 1,"") ;
Volume ++ ;
}
}
Afficher les résultats définitifs
Lcd_Out(1,1,"volume:") ;
intTostr(Volume,Vol) ;
Lcd_Out(2,1,vol) ;
}
}
Codage des extrémités.
Générez le projet en appuyant sur ctrl + F9
Mikro c produira le fichier hex pour vous.
Assurez-vous que vous enregistrez le projet et connaissez le chemin du fichier hex.