找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2375|回复: 0
打印 上一主题 下一主题
收起左侧

发一个LCD1602 英文“鸡年快乐”程序

[复制链接]
跳转到指定楼层
楼主
ID:77707 发表于 2017-4-16 14:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
很长时间没有贡献了,今天有时间发一个程序,供大家参考。
#include<reg51.h>
#include"lcd.h"

/*******************************************************************************
* 函 数 名         : Lcd1602_Delay1ms
* 函数功能                   : 延时函数,延时1ms
* 输    入         : c
* 输    出         : 无
* 说    名         : 该函数是在12MHZ晶振下,12分频单片机的延时。
*******************************************************************************/

//--定义全局变量--//
unsigned char PuZh[27] = "Happy year of the rooster";
unsigned char CnCh[41] = "Global Chinese festival Spring Festival";

//--声明全局变量--//
void Delay10ms(unsigned int c);   //误差 0us

/*******************************************************************************
* 函 数 名         : main
* 函数功能                   : 主函数
* 输    入         : 无
* 输    出         : 无
*******************************************************************************/n(void)
{
        unsigned char i;

        LcdInit();
       
        //--写第一行--//
        for(i=0; i<27; i++)
        {
                LcdWriteData(PuZh[i]);       
        }

        //--写第二行
        LcdWriteCom(0xC0); //设置坐标在第二行
        for(i=0; i<41; i++)
        {
                LcdWriteData(CnCh[i]);
        }

        LcdWriteCom(0x07); //设置每写一次整屏右移
        while(1)
        {                       
                LcdWriteCom(0xC0); //设置坐标在第二行
                for(i=0; i<41; i++)
                {
                        LcdWriteData(CnCh[i]);
                        Delay10ms(100);
                }
               
        }                               
}

/*******************************************************************************
* 函 数 名         : Delay10ms
* 函数功能                   : 延时函数,延时10ms
* 输    入         : 无
* 输    出         : 无
*******************************************************************************/

void Delay10ms(unsigned int c)   //误差 0us
{
    unsigned char a, b;

        //--c已经在传递过来的时候已经赋值了,所以在for语句第一句就不用赋值了--//
    for (;c>0;c--)
        {
                for (b=38;b>0;b--)
                {
                        for (a=130;a>0;a--);
                }         
        }      
}

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表