资源简介
arduino和ds1302的基于lcd12864闹钟,按键可调时间,可设定闹钟,闹钟可通过按键更改,可掉电保存
代码片段和文件信息
/*
LCD12864R
www.DFRobot.com
*/
#if defined(ARDUINO) && ARDUINO >= 100
#include “Arduino.h“
#else
#include “WProgram.h“
#endif
#include “LCD12864R.h“
//#include “LCDSprite.h“
extern “C“ {
#include
#include
#include
}
void LCD12864R::setPins(uint8_t tRS uint8_t tRW uint8_t tD7 uint8_t tD6 uint8_t tD5 uint8_t tD4 uint8_t tD3 uint8_t tD2 uint8_t tD1 uint8_t tD0)
{
digitalWrite(EN1);
delayns();
digitalWrite(RS tRS);
digitalWrite(RW tRW);
digitalWrite(D7 tD7);
digitalWrite(D6 tD6);
digitalWrite(D5 tD5);
digitalWrite(D4 tD4);
digitalWrite(D3 tD3);
digitalWrite(D2 tD2);
digitalWrite(D1 tD1);
digitalWrite(D0 tD0);
delayns();
digitalWrite(EN 0);
delayns();
}
//*********************��ʱ����************************//
void LCD12864R::delayns(void)
{
delayMicroseconds(300);
}
void LCD12864R::VectorConverter(int vector)
{
int result = vector;
for (int i = 7; i >= 0; i--)
{
this->temp[i] = result % 2;
result = result/2;
}
}
void LCD12864R::WriteCommand(int CMD)
{
delayns();
delayns();
VectorConverter(CMD); // lets get the binary from the dec
setPins(00this->temp[0]this->temp[1]this->temp[2]this->temp[3]this->temp[4]this->temp[5]this->temp[6]this->temp[7]); //WriteCommand
}
void LCD12864R::WriteData(int CMD)
{
delayns();
delayns();
VectorConverter(CMD); // lets get the binary from the dec
setPins(10this->temp[0]this->temp[1]this->temp[2]this->temp[3]this->temp[4]this->temp[5]this->temp[6]this->temp[7]); //WriteData
}
void LCD12864R::Initialise(void)
{
pinMode(RS OUTPUT);
pinMode(RW OUTPUT);
pinMode(EN OUTPUT);
pinMode(D0 OUTPUT);
pinMode(D1 OUTPUT);
pinMode(D2 OUTPUT);
pinMode(D3 OUTPUT);
pinMode(D4 OUTPUT);
pinMode(D5 OUTPUT);
pinMode(D6 OUTPUT);
pinMode(D7 OUTPUT);
delayns();
WriteCommand(0x30); //�����趨������
WriteCommand(0x0c); //��ʾ���ؿ�����
WriteCommand(0x01); //�����Ļ������
WriteCommand(0x06); //�����趨�������
}
void LCD12864R::CLEAR(void)
{
WriteCommand(0x30);//
WriteCommand(0x01);//�����ʾ
}
//12341234
void LCD12864R::DisplayString(int Xint Yconst uchar *ptrint dat)
{
int i;
switch(X)
{
case 0: Y|=0x80;break;
case 1: Y|=0x90;break;
case 2: Y|=0x88;break;
case 3: Y|=0x98;break;
default: break;
}
WriteCommand(Y); // ��λ��ʾ��ʼ��ַ
for(i=0;i {
WriteData(ptr[i]);//��ʾ����ʱע����ֵ�������������ʾһ������
}
}
LCD12864R LCDA;
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 7968 2020-11-11 14:13 DS1302_Simple.ino
文件 3023 2020-11-09 22:20 LCD12864R.cpp
文件 1155 2020-11-09 22:38 LCD12864R.h
文件 5175 2020-11-09 22:20 RtcDateTime.cpp
文件 4315 2020-11-09 22:20 RtcDateTime.h
文件 7282 2020-11-09 22:20 RtcDS1302.h
文件 582 2020-11-09 22:20 RtcUtility.cpp
文件 471 2020-11-09 22:20 RtcUtility.h
文件 2779 2020-11-09 22:20 ThreeWire.h
相关资源
- Arduino-TMC2130Stepper.zip
- Arduino-smartcar_shield.zip
- 基于DS1302+AT89C2051制作的红外遥控LED电
- 基于arduino的温度检测和显示
- 基于51单片机DS1302四位数码管可调时钟
- TFmini_Plus I²C版在Arduino上的例程及参考
- tm4c123gh6pm LCD12864描点绘图
- 基于单片机和DS1302电子万年历的设计
- pid算法-arduino
- Proteus中单片机89C51在LCD12864显示
- 基于51单片机和LCD12864显示的多功能万
- HidEmuKbd.bin
- arduino编程库函数合集
- arduino JSON数据格式库
- proteus arduino仿真库
- arduino 多个程序一起工作程序
- arduino蜂鸣器和光控灯实验报告
- Arduino自动浇花系统_一路继电器控制水
- Arduino小车控制程序含遥控+寻迹+避障
- TM1637显示器arduino库文件
- arduino rfid库函数
- 基于arduino的循迹小车不含有PID算法
- 基于arduino的循迹小车含有PID算法
- STC15+AHT10温湿度传感器+LCD12864.rar
- 基于arduino的无线温湿度传输系统
- Arduino多任务同时进行.rar
- arduino 机械臂 画圆程序 通过Arduino控制
- PS2+ arduino+接线图+源码
- 1602液晶显示DS1302实时时钟程序
- CH340G-CH340通用驱动 支持win10/win7 64位驱
评论
共有 条评论