野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 15849|回复: 4

C语言问题

[复制链接]
发表于 2015-8-5 17:23:51 | 显示全部楼层 |阅读模式
在FSMC液晶那个程序里,延时
Lcd_Delay(0xAFFf<<2);
这个语句怎么理解·~求大神帮忙。
回复

使用道具 举报

发表于 2015-8-5 18:53:53 | 显示全部楼层
0xAFFf<<2
其中:  <<  是左移运算符,2表示左移两位
0xAFFf   ->  (1010 1111 1111 1111)B
所以最终:(1010 1111 1111 1111 00)B  ->0x2BFFC
所以实际效果就是:Lcd_Delay(0x2BFFC);
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-8-5 19:11:53 | 显示全部楼层

多谢,那为什么不直接写 Lcd_Delay(0x2BFFC);呢
回复 支持 反对

使用道具 举报

发表于 2015-8-5 19:56:15 | 显示全部楼层
Lcd_Delay函数应该是个不精准延时函数,在调程序时候也不确定具体值,所以就通过几次尝试得到最终值
而一般使用左移<<非常方便调整值的大小,比自己输入值方便多了
数值是左移一位就增加2倍 的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-8-6 17:15:29 | 显示全部楼层
亽亼 发表于 2015-8-5 19:56
Lcd_Delay函数应该是个不精准延时函数,在调程序时候也不确定具体值,所以就通过几次尝试得到最终值
而一 ...

嗯嗯,知道了,非常感谢~
回复 支持 反对

使用道具 举报

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

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-11-23 18:43 , Processed in 0.041373 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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