专家
公告
财富商城
电子网
旗下网站
首页
问题库
专栏
标签库
话题
专家
NEW
门户
发布
提问题
发文章
51单片机
1602液晶的控制问题
2019-07-15 15:25
发布
×
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
站内问答
/
51单片机
3309
15
1130
按手册上说,是按下降沿来判断操作数据的在用C语言写的时候,确实如是(E = 1; E = 0)
但用汇编的时候,却只有用上升沿才可以正常工作(clr E , setb E)
实在是很困惑,只是用的语言不同,为什么需要完全不同的写法,或者说是理论?
友情提示:
此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
15条回答
hu524972973
1楼-- · 2019-07-15 20:35
楼主你解决了?同求
加载中...
dyfdaf
2楼-- · 2019-07-16 01:58
hu524972973 发表于 2015-12-9 15:10
楼主你解决了?同求
没法通过实验解决,我汇编试了下降沿,C语言试了上升沿,都无法工作,只有我主楼说的那2种情况可以,实在是搞不懂
加载中...
1522495332
3楼-- · 2019-07-16 05:45
这与使用的编程语言无关。
问题描述的很烂,没法回答。建议先学会表述问题,再提问,被人回答的概率会高一些。至少我见了会回答
加载中...
数码小叶
4楼-- · 2019-07-16 10:38
精彩回答 2 元偷偷看……
加载中...
风之追逐
5楼-- · 2019-07-16 12:10
本帖最后由 风之追逐 于 2015-12-15 14:58 编辑
可能是你用的单片机速度比例程中的硬件速度快了,适当增加延时看看。(程序是建立在硬件基础上的,你不了解人家,怎样和人家正常沟通呢?)
加载中...
dyfdaf
6楼-- · 2019-07-16 12:38
busy:
mov p0,#0ffh
clr rs
setb rw
clr e
nop
setb e
jb p0.7,busy
ret
这是判忙部分的程序,其他的写指令或写数据,对e都用的同样的写法
我觉得能工作的原因可能是这样的:
因为在闲暇时E始终都是置1的,所以在执行下一个指令时(写数据,写指令或判忙),会先置0,就会产生一个下降沿,就在此时LCD工作,之后又置1,恢复常态
但是这却不能解释为什么我在闲暇时E置0,在执行指令时先置1再置0无法工作的情况。有可能是因为单片机速度太快,置1之后迅速置0,电压攀升没有达到规定的高电平的数值就已经在此置0,所以单片机判定不出这是一个下降沿,等我回去实验一下
加载中...
1
2
3
下一页
一周热门
更多
>
相关问题
【东软载波ESF0654 PDS开发板活动】开箱
1 个回答
东软载波ESF0654 PDS开发板外部中断
1 个回答
东软载波ESF0654 PDS开发板高级控制定时器AD16C4T
1 个回答
用串口调试助手为什么只能在hex模式接收发送而在文本模式不行
9 个回答
触摸芯片SC02B/SC04B在地砖灯的设计方案
1 个回答
东软载波ESF0654 PDS开发板串口USART0代码分享
1 个回答
普通32位单片机使用linux的应用代码
5 个回答
东软载波ESF0654 PDS开发板AT24C04的调试
9 个回答
相关文章
51单片机与蓝牙模块连接
0个评论
51单片机的硬件结构
0个评论
基于51单片机的无线遥控器制作
0个评论
51单片机 AD转换
0个评论
51单片机数码管递增显示
0个评论
如何实现对单片机寄存器的访问
0个评论
基于51单片机的指纹密码锁
0个评论
×
关闭
采纳回答
向帮助了您的网友说句感谢的话吧!
非常感谢!
确 认
×
关闭
编辑标签
最多设置5个标签!
51单片机
保存
关闭
×
关闭
举报内容
检举类型
检举内容
检举用户
检举原因
广告推广
恶意灌水
回答内容与提问无关
抄袭答案
其他
检举说明(必填)
提交
关闭
×
关闭
您已邀请
15
人回答
查看邀请
擅长该话题的人
回答过该话题的人
我关注的人
没法通过实验解决,我汇编试了下降沿,C语言试了上升沿,都无法工作,只有我主楼说的那2种情况可以,实在是搞不懂
问题描述的很烂,没法回答。建议先学会表述问题,再提问,被人回答的概率会高一些。至少我见了会回答
可能是你用的单片机速度比例程中的硬件速度快了,适当增加延时看看。(程序是建立在硬件基础上的,你不了解人家,怎样和人家正常沟通呢?)
mov p0,#0ffh
clr rs
setb rw
clr e
nop
setb e
jb p0.7,busy
ret
这是判忙部分的程序,其他的写指令或写数据,对e都用的同样的写法
我觉得能工作的原因可能是这样的:
因为在闲暇时E始终都是置1的,所以在执行下一个指令时(写数据,写指令或判忙),会先置0,就会产生一个下降沿,就在此时LCD工作,之后又置1,恢复常态
但是这却不能解释为什么我在闲暇时E置0,在执行指令时先置1再置0无法工作的情况。有可能是因为单片机速度太快,置1之后迅速置0,电压攀升没有达到规定的高电平的数值就已经在此置0,所以单片机判定不出这是一个下降沿,等我回去实验一下
一周热门 更多>