该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

谁可以帮忙在这个程序里加个闹钟程序

刚学不懂 顺便讲解一下 谢了

#include

#include

unsigned char code digit[10]={"0123456789"};

sbit DATA=P1^1;

sbit RST=P1^2;

sbit SCLK=P1^0;

void delaynus(unsigned char n)

{

unsigned char i;

for(i=0;i

}

void Write1302(unsigned char dat)

{

unsigned char i;

SCLK=0;

delaynus(2);

for(i=0;i<8;i++)

{

DATA=dat&0x01;

delaynus(2);

SCLK=1;

delaynus(2);

SCLK=0;

dat>>=1;

}

}

void WriteSet1302(unsigned char Cmd,unsigned char dat)

{

RST=0;

SCLK=0;

RST=1;

delaynus(2);

Write1302(Cmd);

Write1302(dat);

SCLK=1;

RST=0;

}

unsigned char Read1302(void)

{

unsigned char i,dat;

delaynus(2);

for(i=0;i<8;i++)

{

dat>>=1;

if(DATA==1)

dat|=0x80;

SCLK=1;

delaynus(2);

SCLK=0;

delaynus(2);

}

return dat;

}

unsigned char ReadSet1302(unsigned char Cmd)

{

unsigned char dat;

RST=0;

SCLK=0;

RST=1;

Write1302(Cmd);

dat=Read1302();

SCLK=1;

RST=0;

return dat;

}

void   Init_DS1302 (void)

{

WriteSet1302(0x8e,0x00);

WriteSet1302(0x80,((0/10)<<4|(0%10)));

WriteSet1302(0x82,((10/10)<<4|(10%10)));

WriteSet1302(0x84,((9/10)<<4|(9%10)));

WriteSet1302(0x86,((29/10)<<4|(29%10)));

WriteSet1302(0x88,((12/10)<<4|(12%10)));

WriteSet1302(0x8c,((9/10)<<4|(9%10)));

}

sbit RS=P2^0;

sbit RW=P2^1;

sbit E=P2^2;

sbit BF=P0^7;

void delay1ms()

{

unsigned char i,j;

for(i=0;i<10;i++)

for(j=0;j<33;j++);

}

void delaynms(unsigned char n)

{

unsigned char i;

for(i=0;i

delay1ms();

}

bit BusyTest(void)

{

bit result;

RS=0;

RW=1;

E=1;

_nop_();

_nop_();

_nop_();

_nop_();

result=BF;

E=0;

return result;

}

void WriteInstruction(unsigned char dictate)

{

while(BusyTest()==1);

RS=0;

RW=0;

E=0;

_nop_();

_nop_();

P0=dictate;

_nop_();

_nop_();

_nop_();

_nop_();

E=1;

_nop_();

_nop_();

_nop_();

_nop_();

E=0;

}

void WriteAddress(unsigned char x)

{

WriteInstruction(x|0x80);

}

void WriteData(unsigned char y)

{

while(BusyTest()==1);

RS=1;

RW=0;

E=0;

P0=y;

_nop_();

_nop_();

_nop_();

_nop_();

E=1;

_nop_();

_nop_();

_nop_();

_nop_();

E=0;

}

void LcdInitiate(void)

{

delaynms(15);

WriteInstruction(0x38);

delaynms(5);

c51单片机时钟c语言程序,89c51 C语言单片机 时钟程序相关推荐

  1. 89c51c语言程序,89C51单片机计算器C语言程序.doc

    89C51单片机计算器C语言程序 89C51单片机[计算器]C语言程序 89C51单片机[计算器]C语言程序2010-12-15 16:54/*89C51单片机[计算器]C语言程序*/ /*P2位选P ...

  2. c语言实验报告绘制钟表,单片机时钟程序实验报告

    单片机原理与应用 课程名称:    单片机原理与应用 设计题目:    LCD电子钟 院    系:    电子信息工程学院 班    级:    自动化0706 设 计 者:    全宏宇 指导教师 ...

  3. 单片机自动调光C语言,C51单片机控制40w调光电源C语言程序

    C51单片机控制40w调光电源C语言程序,12M晶振,500Hz 2ms,1000Hz 1ms,300Hz 3.3ms,330Hz 3ms .3ms为一个周期,30us中断一次,共可以有100次中断, ...

  4. 单片机控制秒表C语言程序,89C51单片机秒表的设计(全文完整版)

    <89C51单片机秒表的设计.doc>由会员分享,可免费在线阅读全文,更多与<89C51单片机秒表的设计>相关文档资源请在帮帮文库(www.woc88.com)数亿文档库存里搜 ...

  5. at89c52串口通信c语言程序,AT89C52DEMO 基于51单片机的(89C51/52)C语言源码例程 - 下载 - 搜珍网...

    例程与源码/12864带字库测试程序/12864 例程与源码/12864带字库测试程序/12864.hex 例程与源码/12864带字库测试程序/12864.lnp 例程与源码/12864带字库测试程 ...

  6. 6位数码管电子时钟c语言程序,51单片机的六位数码管时钟表仿真及C程序

    本帖最后由 liuda 于 2015-1-21 22:38 编辑 Proteus仿真截图 /****************************************************** ...

  7. c语言程序小灯从右向左闪烁,单片机控制LED灯点亮(C语言).PPT

    <单片机控制LED灯点亮(C语言).PPT>由会员分享,可在线阅读,更多相关<单片机控制LED灯点亮(C语言).PPT(45页珍藏版)>请在人人文库网上搜索. 1.1,单片机控 ...

  8. 标准c语言与c51的区别,单片机学习笔记5-C51语言与标准C语言的比较

    C51语言基本语法与标准C相同,是在标准C的基础上进行适合8051内核单片机硬件的扩展. C51语言与标准C语言一些差别如下: (1)库函数不同.标准C中不适合于嵌入式控制器系统的库函数,被排除在C5 ...

  9. 单片机C语言数据存储原理,介绍单片机中C语言的数据存储与程序编写

    一.五大内存分区: 内存分成5个区,它们分别是堆.栈.自由存储区.全局/静态存储区和常量存储区. 1.栈区(stack):FIFO就是那些由编译器在需要的时候分配,在不需要的时候自动清除的变量的存储区 ...

最新文章

  1. 不用1750亿!OpenAI CEO放话:GPT-4参数量不增反减
  2. LAMP的安装配置过程:
  3. jquery 地理位置 与 IP地址
  4. (2014年2月7日升级)Ubuntu-14.04-Alpha2-32位简体中文优化封装版
  5. 【Python基础】字符串专题总结
  6. win7讲述人安装包_文件夹选项与讲述人
  7. CentOS 环境下配置MySQL8.0
  8. 使用idea编写代码作为生产者,Kafka接收其发来的信息【小案例】(一)
  9. 自制串口示波器小工具
  10. 选择WebSockets还是REST?
  11. 遗传算法原理及代码讲解
  12. 二级java考什么_​Java计算机二级考试考什么
  13. 记一次:java实现excel转图片
  14. 怎样避免使用手机群控系统被封号的情况
  15. 计算机网络病毒防范,计算机网络病毒的十项防范措施
  16. opencv无法打开摄像头
  17. 登录计算机隐藏用户名,win10系统隐藏登录界面administrator用户名的办法介绍
  18. python+sklearn实现决策树模型
  19. Fatal error:Cannot ‘break‘ 2 levels in数据库导出错误解决
  20. 联想ThinkPad E14 如何修改BIOS开机画面LOGO

热门文章

  1. linux正则表达式BRE
  2. 去除浮动列表的右边距 利用负边距
  3. apache的日志级别和设置
  4. Visual C#创建Windows服务程序
  5. golang net包 ip相关函数 简介
  6. python3 多进程 multiprocessing 报错 AttributeError: ‘ForkAwareLocal‘ object has no attribute ‘connection‘
  7. python 创建空文件的方法
  8. golang 文件操作 创建 读写 复制移动 权限 删除
  9. mysql注入中的outfile、dumpfile、load_file函数详解
  10. CentOS 设置网络(修改IP 网关 DNS)上网