- 52
- 0
- 约8.59千字
- 约 8页
- 2018-12-29 发布于广东
- 举报
ATMEGA128+DS1302+LM016L
#includeiom128v.h
#includemacros.h
#define uchar unsigned char
#define uint unsigned int
#define LCD_PORT PORTB //1602 控制端口定义
#define LCD_DDR DDRB //控制端口方向寄存器定义
#define LCD_RS PB0 //定义三个控制引脚
#define LCD_RW PB1
#define LCD_E PB2
#define LCD_data_PORT PORTA //输出数据总线端口定义
#define LCD_data_PIN PINA //输入数据总线端口定义
#define LCD_data_DDR DDRA //数据总线方向寄存器定义
#define LCD_set_RS() LCD_PORT|=BIT(LCD_RS) //三个控制管脚的控制操作
#define LCD_set_RW() LCD_PORT|=BIT(LCD_RW)
#define LCD_set_E() LCD_PORT|=BIT(LCD_E)
#define LCD_clr_RS() LCD_PORT=~BIT(LCD_RS)
#define LCD_clr_RW() LCD_PORT=~BIT(LCD_RW)
#define LCD_clr_E() LCD_PORT=~BIT(LCD_E)
#define LCD_line1 0X80 //第一行的地址:0x80+addr ,addr 为列数
#define LCD_line2 0XC0 //第二行的地址:0x80+0x40+addr
#define LCD_CGRAM_ADDR 0X40 //CGRAM 的开始地址
#define LCD_CGMAX 64 //CGRAM 存储的最大字节数
#define LCD_function 0X38 // 液晶模式为8 位,2 行,5*8 字符
#define iDat 1 //数据标志
#define iCmd 0 //指令标志
#define LCD_clr 0X01 // 清屏
#define LCD_home 0X02 // 地址返回原点,不改变DDRAM 内容(即为软复位)
#define LCD_cleft 0X10 // 光标左移
#define LCD_cright 0X14 // 光标右移
#define LCD_dleft 0X18 // 屏幕左移
#define LCD_dright 0X1C // 屏幕右移
#define LCD_on 0X0C // 打开显示,不显示光标
#define LCD_off 0X08 // 关闭显示
#define LCD_curon 0X0E // 显示光标
#define LCD_curflash 0X0F // 打开光标闪烁
#define DS1302_CLK_low PORTD=~BIT(4)
#define DS1302_CLK_high PORTD|=BIT(4)
#define DS1302_IO_low PORTD=~BIT(5)
#define DS13
原创力文档

文档评论(0)