Toll-Free Customer Support 24/7

Digital Light Intensity Sensor

/*
* Project name:
Digital Light Intensity Sensor
* Copyright
(c) Researchdesignlab.com
* Test configuration:
MCU: PIC16F877A
Dev.Board: PIC
Oscillator: 20.0 MHz
Software: mikroC PRO for PIC v 4.6

*/
// LCD module connections
sbit LCD_RS at RB4_bit;
sbit LCD_EN at RB5_bit;
sbit LCD_D4 at RB0_bit;
sbit LCD_D5 at RB1_bit;
sbit LCD_D6 at RB2_bit;
sbit LCD_D7 at RB3_bit;

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

unsigned char uart_rd;
void main() {

Lcd_Init();
Delay_ms(100); // Initialize LCD
UART1_Init(9600); // Initialize UART module at 9600 bps
Delay_ms(100);
Lcd_Cmd(_LCD_CLEAR); // Clear display
Lcd_Cmd(_LCD_CURSOR_OFF); // Cursor off
Lcd_Out(1,1,"Sensor test Brd");
Delay_ms(3000);

Lcd_Cmd(_LCD_CLEAR);

Lcd_Out(1,1,"Digital ");
Lcd_Chr(2, 4, ' ');
while(1)
{
while(!UART1_Data_Ready()); // If data is received,
uart_rd = UART1_Read(); // read the received data,
if(uart_rd!=13)
Lcd_Chr_Cp(uart_rd);

if(uart_rd==13)
{
Lcd_Chr(2, 4, ' ');
}
}

}

Back to top