• 基于51单片机的简易可调时钟闹钟Proteus仿真


    资料编号:122  下面是相关功能视频演示:

    122-基于51单片机的简易可调时钟闹钟Proteus仿真(源码+仿真+全套资料)

    功能说明:

    1、使用单片机内部定时器实现时分秒计时

    2、能够设置闹钟时间

    3、闹钟时间到,蜂鸣器响

    4、使用LCD1602显示时间

    下面是部分程序展示:

    * 名称 : write_com(uchar com)
    * 功能 : 1602命令函数
    * 输入 : 输入的命令值
    * 输出 : 无
    ***********************************************************************/
    void write_com(uchar com)
    {
        e=0;
        rs=0;
        rw=0;
        P0=com;
        delay_uint(20);
        e=1;
        delay_uint(20);
        e=0;
    }

    /********************************************************************
    * 名称 : write_data(uchar dat)
    * 功能 : 1602写数据函数
    * 输入 : 需要写入1602的数据
    * 输出 : 无
    ***********************************************************************/
    void write_data(uchar dat)
    {
        e=0;
        rs=1;
        rw=0;
        P0=dat;
        delay_uint(20);
        e=1;
        delay_uint(20);
        e=0;    
    }


    /********************************************************************
    * 名称 : write_string(uchar hang,uchar add,uchar *p)
    * 功能 : 改变液晶中某位的值,如果要让第一行,第五个字符开始显示"ab cd ef" ,调用该函数如下
              write_string(1,5,"ab cd ef;")
    * 输入 : 行,列,需要输入1602的数据
    * 输出 : 无
    ***********************************************************************/
    void write_string(uchar hang,uchar add,uchar *p)
    {
        if(hang==1)   
            write_com(0x80+add);
        else
            write_com(0x80+0x40+add);
            while(1)
            {
                if(*p == '\0')  break;
                write_data(*p);
                p++;
            }    
    }

     下面是该资料分享下载链接:

    https://pan.baidu.com/s/12x2E9mkFxF9G81WsKjny9Q?pwd=f90i

  • 相关阅读:
    前后端联调统一校验规则
    android反射详解
    Vue 07 Vue中的数据代理
    MySQL Linux服务器快照克隆引起的binlog日志无法正常删除导致文件系统满
    5 Flink CDC同步
    JMSA(Jacobian Saliency Map Attack)算法源码解析
    SOA(面向服务架构)是什么?
    try/catch/finally的各种情况
    Android布局转图片Bitmap
    指标体系搭建-专项1
  • 原文地址:https://blog.csdn.net/m0_74295839/article/details/127837549