Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <avr/io.h>
- #define F_CPU 1000000UL
- #include <util/delay.h>
- #define RS PD0
- #define E PD2
- #define RW PD1
- #define LCD_DTA PORTB
- #define LCD_CMD PORTD
- void lcd_cmd(unsigned char cmd)
- {
- LCD_DTA = cmd;
- LCD_CMD = (0<<RS);
- LCD_CMD = (0<<RW);
- LCD_CMD = (1<<E);
- _delay_ms(1);
- LCD_CMD = (0<<E);
- _delay_ms(50);
- return;
- }
- void lcd_init()
- {
- lcd_cmd(0x38);
- _delay_ms(1);
- lcd_cmd(0x01);
- _delay_ms(1);
- lcd_cmd(0x0f);
- _delay_ms(1);
- lcd_cmd(0x80);
- _delay_ms(1);
- return;
- }
- void lcd_print(unsigned char my_symbol)
- {
- LCD_CMD = (1<<RS);
- LCD_CMD = (0<<RW);
- LCD_CMD = (1<<E);
- LCD_DTA = my_symbol;
- _delay_ms(1);
- LCD_CMD = (0<<E);
- _delay_ms(50);
- }
- int main()
- {
- DDRD = 0xff;
- DDRB = 0xff;
- lcd_init();
- _delay_ms(50);
- lcd_print(0x31);
- while (1)
- {
- ;
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement