📄 161212.c.bak
字号:
//单片机型号:ATMEGA8L-8PU
//晶振:4M
#include<avr/io.h>
#include <util/delay.h>
#include <avr/portpins.h>
#include <compat/deprecated.h>
#define uchar unsigned char
#define LCD_E_0 cbi(PORTD,6)
#define LCD_RW_0 cbi(PORTD,5)
#define LCD_RS_0 cbi(PORTD,4)
#define LCD_E_1 sbi(PORTD,6)
#define LCD_RW_1 sbi(PORTD,5)
#define LCD_RS_1 sbi(PORTD,4)
void com(uchar init) //写指令
{
LCD_RS_0;
PORTB=init;
_delay_ms(5);
LCD_E_1;
LCD_E_0;
}
void Dat(uchar dat) //写数据
{
LCD_RS_1;
PORTB=dat;
_delay_ms(5);
LCD_E_1;
LCD_E_0;
}
void display(uchar x,uchar y,uchar dat) //精确显示字符,x为列坐标,y为行坐标,dat数据
{
uchar add;
if(y==0)
add=0x80+0x00+x;
else
add=0x80+0x40+x;
com(add);
Dat(dat);
}
void Init(void) //液晶屏初始化
{
com(0x38);
_delay_ms(5);
com(0x38);
com(0x38);
com(0x06);
com(0x0c);
com(0x01);
}
int main(void)
{
DDRB|=0xff; //初始化引脚
DDRD|=0Xff;
DDRC|=0Xff;
LCD_RW_0;
Init();
display(0,0,0x41); //显示1602库中自带符号“A”
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -