campione c ho bisogno di programmi in Keil ...

H

harshita

Guest
Ciao ..Ho bisogno di campione di codifica utilizzando keilC compilatore ....sto facendo progetto 89c51 ....
soprattutto ho bisogno di codici a
1.temperatue sensore
2.ADC convertitore
3.IR rivelatore
4.LCD visualizzazionela preghiamo di rispondere presto ..
thx u in anticipo ..

 
Vai al dispositivo analogico per scaricare il codice ADUC847 o 842.Lotto di campioni non vi

o andare a scaricare alcuni atmel da lì

 
E 'questo, qualunque sia l'impiego,
in realtà per AT89s8252 / 3.non dovrebbe richiedere molti cambiamenti.Per visualizzare 1x16, 2x8 elettricamente.

P1.0 = RS
P1.1 = E
P1.2 = D4
P1.3 = D5
P1.4 = D6
P1.5 = D7

Ground Pin 3 su LCD

Ritardo mostrato è "Delay.h"Delay.h

# define XTAL_FREQ 12
# define DelayUs (x) (unsigned char _dcnt; \
_dcnt = (x) * ((XTAL_FREQ) / 12); \
mentre (- _dcnt! = 0) \
continue;)
extern void DelayMs (unsigned char);LCD.h

/ *
* LCD file header
* Vedere lcd.c per maggiori informazioni
* /

/ * Scrivere un byte per il display in modalità 4 bit * /

extern void lcd_write (unsigned char);

/ * Clear LCD e home * /

extern void lcd_clear (void);

/ * Scrivere una stringa di caratteri per lo schermo LCD * /

extern void lcd_puts (const char * s);

/ * Vai alla posizione specificata * /

extern void lcd_goto (unsigned char pos);

/ * Intialize LCD - prima di ogni altra cosa chiamata * /

extern void lcd_init (void);

extern void lcd_putch (char);

/ * Imposta la posizione del cursore * /

# define lcd_cursor (x) lcd_write (((x) & 0x7F) | 0x80)

Lcd.c

# include <reg51.h>
# include "delay.h"

sbit LCD_RS = P1 ^ 0 / / Registrati selezionare
sbit LCD_E = P1 ^ 1 / / Attiva

# define LCD_STROBE ((LCD_E = 1), (LCD_E = 0))

/ / Tempo in millisecondi
void DelayMs (unsigned char cnt)
(Cnt = 2 * cnt;
fare
(DelayUs (500);)
mentre (- cnt! = 0);
)

/ / Invia a display
void lcd_write (unsigned char c)
(
unsigned char Movit;
Movit = (c>> 2);
P1 = (P1 & 0xC3) | (Movit & 0x3C);
LCD_STROBE;
Movit = (c <<2);
P1 = (P1 & 0xC3) | (Movit & 0x3C);
LCD_STROBE;
DelayUs (60);
)

/ / Clear LCD e casa
lcd_clear nullo (void)
(
LCD_RS = 0;
lcd_write (0x80);
DelayMs (2);
)

/ / Posizionare il cursore
void lcd_goto (unsigned char pos)
(
LCD_RS = 0;
lcd_write (0x80 pos);
)

/ / Invia stringa di caratteri
void lcd_puts (const char * s)
(
unsigned char cursore = 0x00;

while (* s)
(
LCD_RS = 1;
lcd_write (* s);
s ;
cursore ;
if (cursore == 0x08) lcd_goto (0x40); / / Cambia per 0x80 per la simulazione
if (cursore == 0x10) (cursore = 0; lcd_goto (0x00);)
)
)/ / Inizializza il display LCD - modalità 4 bit
lcd_init nullo (void)
(
LCD_RS = 0;
DelayMs (40); / / potere di ritardo
lcd_write (0x28); / / 4 bit modalità, 1 / 16 del dazio, 5x8 font
LCD_STROBE;
DelayMs (5);
LCD_STROBE;
DelayMs (5);
LCD_STROBE;
lcd_write (0x28);
lcd_write (0x08); / / display off
lcd_write (0x0C); / / visualizzazione su cursore off
lcd_write (0x06); / / modalità di immissione
)

 

Welcome to EDABoard.com

Sponsor

Back
Top