عرض مشاركة واحدة
  #34  
قديم 09-22-2011, 07:01 PM
 
كود:
/* 
Timer0 as a counter 
Oscillator @ 4MHz, MCLR Enabled, PWRT Enabled, WDT OFF 
*/ 
// LCD module connections 
sbit LCD_RS at RB0_bit; 
sbit LCD_EN at RB1_bit; 
sbit LCD_D4 at RB4_bit; 
sbit LCD_D5 at RB5_bit; 
sbit LCD_D6 at RB6_bit; 
sbit LCD_D7 at RB7_bit; 
sbit LCD_RS_Direction at TRISB0_bit; 
sbit LCD_EN_Direction at TRISB1_bit; 
sbit LCD_D4_Direction at TRISB4_bit; 
sbit LCD_D5_Direction at TRISB5_bit; 
sbit LCD_D6_Direction at TRISB6_bit; 
sbit LCD_D7_Direction at TRISB7_bit; 
// End LCD module connections 
// Define Messages 
char message1[] = "Frequency=   Hz"; 
char *freq = "00"; 
void Display_Freq(unsigned int freq2write) { 
 freq[0] = (freq2write/10)%10 + 48;    // Extract tens digit 
 freq[1] =  freq2write%10     + 48;    // Extract ones digit 
 // Display Frequency on LCD 
 Lcd_Out(1, 11, freq); 
} 
void main() { 
CMCON = 0x07 ; // Disbale comparators 
TRISB = 0b00000000; // PORTB All Outputs 
TRISA = 0b000110000; // INPUTS :  RA4= T0CKI,  RA5=MCLR 
  
  
 OPTION_REG = 0b00101000; // Prescaler (1:1), TOCS =1 for counter mode 
 Lcd_Init();                 // Initialize LCD 
 Lcd_Cmd(_LCD_CLEAR);        // CLEAR display 
 Lcd_Cmd(_LCD_CURSOR_OFF);   // Cursor off 
 Lcd_Out(1,1,message1);      // Write message1 in 1st row 
 do { 
  TMR0=0; 
  Delay_ms(1000);  // Delay 1 Sec 
  Display_Freq(TMR0); 
 } while(1);  // Infinite loop 
}
__________________
angel4angel4angel4angel4angel4
رد مع اقتباس