这个单片机延时程序程序是什么意思呢?关于LCD显示的

用LCD1602液晶显示汇编程序编写一个程序显示课程名称“”单片机接口技术”及本组同学名字_百度知道
用LCD1602液晶显示汇编程序编写一个程序显示课程名称“”单片机接口技术”及本组同学名字
我有更好的答案
需要帮你完成一份吗
恩,谢谢了哈
需要定做可以丘上说我id
需要定做可以丘上说我id
丘上是什么意思
我不定做,我要程序,因为我们是在实训
兄弟,能不能提供一份程序
需要定做可以丘上说我id
采纳率:24%
来自团队:
直接让人点化指导是可以的,但是你是直接要程序吗?可能得花点钱了
1605不能显示中文,数字字母可以转码显示
是1602的吗
12864可以显示中文
老师说可以显示
好吧,数字和字母可以直接转码显示,汉字好像要取模,没有用过一般用12864或者5110
这有个教程希望能帮到你,望采纳 谢谢
为您推荐:
其他类似问题
单片机接口技术的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。51单片机+LCD1602显示字符程序问题_百度知道
51单片机+LCD1602显示字符程序问题
程序是从网上找的,是把字符显示为移动的,就改了下一开始的端口定义,下载到单片机里后只显示一个个方块块,不清楚哪里错了。源程序链接是http://wenku.baidu.com/link?url=ztzWw2GhaKa6BG6NNCIGzxacSza8fBijLlazBVFYKNwgnjqCdXe3UtPAhSqo6zwZogdFfXT9p_TcrZ...
我有更好的答案
感觉这代码有点乱试一下我的吧
#include&reg52.h&#ifndef unsi8 #define unsi8
unsigned char #endif#ifndef unsi_16#define unsi_16 unsigned short#endif#define
LCD_RS = P2^0;sbit
LCD_RW = P2^1;sbit
LCD_E_ = P2^2; #define
LCD_WR_CMD
LCD_WR_DATA
1struct Passer{ unsi8 String[12]; unsi8 String2[11];};struct Passer Disp={'7','4','2','6','1','5','0','5','5','0','2','5','1','5','7','2','7','6','5','7','4','3','0'};#ifdef
DELAY void Delay_1ms(unsi_16 x) {
while(x--)
for(i=0;i&125;i++);
} }#endifstatic void LCD_Busy(){ unsi8 do {
LCD_RS = 0;
LCD_RW = 1;
LCD_E_ = 1;
LCD_E_ = 0;
}while(i&0x80);}static void LCD_WriteByte(unsi8 Dat,bit Mode){
LCD_Busy();
LCD_RS = M
LCD_RW = 0;
LCD_E_ = 1;
for(i=0;i&251;i++);
LCD_E_ = 0;}static void LCD_Set_Register(){
LCD_WriteByte(0x38,LCD_WR_CMD);
LCD_WriteByte(0x01,LCD_WR_CMD);
LCD_WriteByte(0x06,LCD_WR_CMD);
LCD_WriteByte(0x0f,LCD_WR_CMD);}void Display(){ unsi8 LCD_WriteByte(0x82,LCD_WR_CMD); for(i=0;i&sizeof(Disp.String);i++) {
LCD_WriteByte(Disp.String[i],LCD_WR_DATA);
Delay_1ms(300); } LCD_WriteByte(0xc2,LCD_WR_CMD); for(i=0;i&sizeof(Disp.String2);i++) {
LCD_WriteByte(Disp.String2[i],LCD_WR_DATA);
Delay_1ms(300); }}void main(){while(1)
LCD_Set_Register();
Display();
}}如有问题可再咨询
另外我想问下两行字符显示完后就一直固定在那里
而不是又重头开始显示要如何改程序?
采纳率:75%
驴头不对马嘴,图上画的是数码管,也没有锁存器,结果程序里定义锁存器最终显示函数又变成是液晶显示函数一定要弄清硬件原理后再说程序问题
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。说出来你可能不信,王二正在被信息怪追杀,没错,就是那……
OLED在显示行业的热度还没达到顶峰,Micro LED就出来&ld……
要说最近半导体行业的巨人战争,当属博通费尽心机收购高……
有人说LoRa是NB-IoT的竞争技术,其实我们认为它们是一种……
试想这样的一个情景,你将一枚鸡蛋、一个土豆、一块火腿……
演讲人:郝晓贝时间: 10:00:00
演讲人:王海莉时间: 10:00:00
演讲人:卢柱强时间: 10:00:00
预算:¥10000预算:小于¥10000
浙江省湖北省
单片机液晶显示程序
[导读]单片机液晶显示程序硬件电路:51最小系统,没有采用总线方式,直接的I/O形式,包括矩阵键盘,1602液晶,一个数码管,LED4个,蜂鸣器等.//单片机液晶秒表计算器完整修改版本可以实现两种功能的切换,其他功能自行对照代码研究。
单片机液晶显示程序本文引用地址:
硬件电路:51最小系统,没有采用总线方式,直接的I/O形式,包括矩阵键盘,1602液晶,一个数码管,LED4个,蜂鸣器等.
//单片机液晶秒表计算器完整修改版本
可以实现两种功能的切换,其他功能自行对照代码研究。4*4矩阵键盘,第一排前三列是实现小时分钟秒的加.第二排前三列是实现小时分钟秒的减.当然还可以通过设置矩阵键盘的键值,来实现加减乘除四则运算,由数码管显示参与运算的数字以及最终的运算结果
#include&reg51.h&
#include&stdio.h&
#include&stdlib.h&
#include&intrins.h&
#include&absacc.h&
#define uchar unsigned char
#define uint unsigned int
#define wc 0x8fff
#define wd 0xdfff
#define rc 0xbfff
void displayListChar(unsigned char X, unsigned char Y, uchar DData);
uchar dispbuf[]={''0'',''1'',''2'',''3'',''4'',''5'',''6'',''7'',''8'',''9'','':''};
uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,
&&&&&&&&&&&&&&&&&&&&&&&&&&& 0x92,0x82,0xf8,0x80,0x90,0x88,0x83,
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 0xc6,0xa1,0x86,0x8e,0x00
uchar temp1;&
uint tcnt,g;
bit flag2;
bit flag1=1;//////控制计算器还是液晶调整的状态灯
uint i=0,f,m,g,s,t;//&&& for里的计数值,用于循环
&&& // 用来标记按了什么,如+,-.*,或是/
sbit P2_0=P2^0;// 定义P2.0口用来,当计算值超过15时,P2.0所对应的灯闪几下
sbit P2_1=P2^1;// 定义P2.1口用来,当除数为0时,P2.1所对应的灯闪几下
sbit P2_2=P2^2;
sbit P2_3=P2^3;
uint num[4]={0}; //用于记录外面输入的数字
sbit P3_4=P3^4;
sbit P3_5=P3^5;
void jieguo(void);
void Settime(uchar verify);
uchar kbscan(void);///键盘扫描
void Show_Time(void);////显示时间
void Settime(uchar verify);//verify 在这里为调整的意思
uint transfor( uchar key1);
void delay400ms(void) ;
void delay200ms(void);
void delay5ms(void);
void delay_1s(void);
void dlms(void);
void dlms1(void)
&&&&& uint g=20000;
&&&&& while(--g);& //延时100mS钟
void clr(void)
& suanfa=0;
& Tablenum=0;
& for(f=0;f&4;f++)
&&&& num[f]=0;
&&&&& P2_0=1;
&&&&&& P2_1=1;
&&&&&& P2_2=1;
&&& P2_3=0;
&& P3_4=0;
&& P3_5=1;
&& P0=0xc0;
&& P3_5=0;
//***************************************以下单片机液晶显示****************************************************
void waitLcd()&&&&&&&&&&&&&&&&&&&& //just wait until 液晶不忙为止
&&& bit flag=1;
&&& while(flag==1)
&&&&&& temp=XBYTE[rc];
&&&&&& if (temp&&7==0) flag=0;
&&&&&& P1=
&&&&& P1=0
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& //just wait until 液晶不忙为止
void WriteCommand_Lcd(bit isCheck,char c)&&&
&&& if (isCheck==1) waitLcd();
&&&& XBYTE[wc]=c;
void writedata(char c)
&&& waitLcd();
&&& XBYTE[wd]=c;
void LcdInit()
&&& delay5ms();
& delay5ms();
&delay5ms();
&WriteCommand_Lcd(0,0x38); //三次显示模式设置,不检测忙信号
&delay5ms();
&WriteCommand_Lcd(0,0x38);
&delay5ms();
&WriteCommand_Lcd(0,0x38);
&delay5ms();
&WriteCommand_Lcd(1,0x38); //显示模式设置,开始要求每次检测忙信号,8位2行5*7
&WriteCommand_Lcd(1,0x08); //关闭显示
&WriteCommand_Lcd(1,0x01); //清显示
&WriteCommand_Lcd(1,0x06); // 文字不动,光标右移
&WriteCommand_Lcd(1,0x0C); // 显示开及光标设置
void displayListChar(unsigned char X, unsigned char Y, uchar DData)
&Y &= 0x1;
&X &= 0xF;
&if (X &= 0xF)
&&& Y &= 0x1;
&X &= 0xF;
&if (Y) X = 0x40;
&X = 0x80;
&WriteCommand_Lcd(0,X);
&writedata(dispbuf[DData]);
//****************************************以上单片机液晶显示驱动*****************************************************
//*************************************************
//**********************************以下显示时间*****************************************************
void Show_Time(void)
&& displayListChar(0,0,hour/10);
&& displayListChar(1,0,hour%10);
&& displayListChar(2,0,10);
&& displayListChar(3,0,minute/10);
&& displayListChar(4,0,minute%10);
&& displayListChar(5,0,10);
&& displayListChar(6,0,second/10);
&& displayListChar(7,0,second%10);
//**********************************以上显示时间*****************************************************void main(void)
&&& TMOD=0x02; //置自动重装载模式
&&& TH0=0x06;&& //设初值
&&& TL0=0x06;& //设初值
&&& TR0=1;&&&& //开始计数
&&& ET0=1;&&& //开定时器/计数器
&&& EA=1;&&&& //中断开
&&& delay400ms();//启动等待,等LCM讲入工作状态
&&& LcdInit();&&&& //LCM初始化&
&&&&&& P3_4=0;
&&&&&& P2_0=1;
&&&&&& P2_1=1;
&&&&&& P2_2=0;
&&& P2_3=1;
&&& P3_5=1;
&&&&&& P0=0xc0;
&&&&&& P3_5=0;&&&
&&& while(1)
&&&&&&&& key=kbscan();
&&&&&&&&& dlms();
&&&&&&&& // 0(xe7)&&&&&&&&
&&&&&&&& ///*****************************以下是单片机液晶显示两种状态的切换********************
&&&&&&&& //***************************************************
&&&&&&&& if(key==0xe7)
&&&&&&&& {
&&&&&&&&&&& dlms();
&&&&&&&&&&& flag1=~flag1;
&&&&&&&&&&& key=0x00;&&&
&&&&&&&&&&&&&& if(flag1==1)
&&&&&&&&&&&&&&& {&&&&&&&&&&&
&&&&&&&&&&&&&&&&&&&&& P2_0=1;
&&&&&&&&&&&&&&& P2_1=1;
&&&&&&&&&&&&&&& P2_2=0;///液晶状态灯
&&&&&&&&&&&& P2_3=1;
&&&&&&&&&&&&&&& }&&&&&&&&
&&&&&&&&&&&&&&& if(flag1==0)
&&&&&&&&&&&&&&& {
&&&&&&&&&&&&&&&&& P2_0=1;
&&&&&&&&&&&&&& P2_1=1;
&&&&&&&&&&&&& P2_2=1;
&&&&&&&&&&& P2_3=0;///计算器状态灯
&&&&&&&&&&&&&&& }
&&&&&&&&&&&&&& dlms1();
&&&&&&&&& }
&&&&&&&& ///*****************************以上是单片机液晶显示两种状态的切换
据Businessinsider报道,在硅谷中想当一个出色的程序员,意味着与诸多精英面临直接竞争。公司给你开出了丰厚的薪水,免费的大餐,免费司机接送,硅谷的程序员在某种意义上就像是好莱坞的明星。Altay Guvench,曾经是一名程序员的......关键字:
这是北京“近十年最宽松的落户政策”!消息在北京创投圈激起了涟漪。这些年,北京几乎聚集了中国数量最多顶尖的创业公司和创投机构,从IDG资本、红杉中国、经纬创投到百度、京东、美团、今日头条….浩浩荡荡数十万人。这一纸新规有望让他们落地生根。......关键字:
你对这些来自东方的程序员有没有一些总结性的看法和观点(比如:他们是否合作,是否能按时提交代码,写出的程序是否有质量?)。依据是什么?......关键字:
对于搞单片机的特别用8051系列工程师来说,谈到单片机的RTOS,很多时候会问一句:“为什么要用RTOS?单片机就这一点资源,使用RTOS能保证效率吗?”......关键字:
程序员们在 StackExchange 上有激烈的讨论,如果偷偷把自己的工作自动化,是不是不道德?......关键字:
我 要 评 论
热门关键词我想问一下单片机LCD1602的键盘扫描子函数程序说什么意思,_百度知道
我想问一下单片机LCD1602的键盘扫描子函数程序说什么意思,
刚开始的按键去抖动我知道,但是&不是有0出0 全1出1 的吗,现在那个N=n&0xf0;是什么意思,是0x08=n&0xf0还是n=0x08&0xf0,后面的if(n!=0)下面是什么意思,不怎么明白,有谁能给我介绍一下这句话是什么意思吗?
我有更好的答案
LCD1602的键盘扫描子函数?两者没有包含关系哦
这个是怎么判断你按得哪个键?
这个程序有16个按键,但是这段程序就是按键程序,他是怎么判断按得哪个按键的?
根据高低电平判断的
我知道,但是上面用的0x08&0xf0这个我不能理解怎么判断的是哪个按键,0xf8&0xf0不是等于0x00吗,那请问一下这个是怎么判断是哪个按键具体位置比如,如果是0xfe,0xfd,0xfa,0xf1之类的?
这个是矩阵键盘吗
采纳率:24%
为您推荐:
其他类似问题
lcd1602的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。51单片机LCD1602液晶显示程序_百度文库
赠送免券下载特权
10W篇文档免费专享
部分付费文档8折起
每天抽奖多种福利
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
51单片机LCD1602液晶显示程序
&&51单片机LCD1602液晶显示程序
阅读已结束,下载本文需要
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,同时保存到云知识,更方便管理
加入VIP
还剩2页未读,
定制HR最喜欢的简历
你可能喜欢

我要回帖

更多关于 单片机数码管显示程序 的文章

 

随机推荐