历史上的今天
今天是:2025年08月09日(星期六)
2021年08月09日 | 8051单片机(STC89C52)八段数码管稳定显示0 ~ 7
2021-08-09 来源:eefocus
在轮流显示0~7程序的基础上, 将delay()函数提供的时延大幅缩小, 以达到视觉短暂的停留效果. 在该种情况下的数码管亮度和对比度较轮流显示时有一定幅度的降低. 另外, 如果想感知到动态扫描的存在, 可从拍摄视频中观察(到像波浪一样的光浪).
#include void delay()//提供时延 { int i, j; for(i = 0; i < 15 ; i++) for(j = 0; j < 15; j++) ; } void f1_3_4_3()//在8个数码管上轮流显示0~7 { unsigned char code DIG_CODE[8] = {0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07}; int i; while(1) { for(i = 0; i < 8; i++) { P2 = i << 2; // i = 1 -> P2 = 0000 0001 ->(左移2位后) P2 = 0000 0100 -> (P24, P23, P22) = (0, 0, 1) -> 右数第二片亮 // i = 2 -> P2 = 0000 0010 ->(左移2位后) P2 = 0000 1000 -> (P24, P23, P22) = (0, 1, 0) -> 右数第三片亮 // i = 3 -> P2 = 0000 0011 ->(左移2位后) P2 = 0000 1100 -> (P24, P23, P22) = (0, 1, 1) -> 右数第四片亮 // ...... // i = 7 -> P2 = 0000 0111 ->(左移2位后) P2 = 0001 1100 -> (P24, P23, P22) = (1, 1, 1) -> 右数第八片亮 P0 = DIG_CODE[i]; delay(); } } } int main() { f1_3_4_3(); return 0; }
史海拾趣
|
Windows7操作系统下装ADS2006A受影响吗?--------我都卸了重装了好几次,发现原理图中元件面板为空,根本找不到元件, 图形如下 [img]file:///C:/Users/lenovo/AppData/Local/Temp/ZM(0S%7DJ[2I]B84SP2565@$6.jpg[/img] & ...… 查看全部问答> |
|
最近在看别人写的驱动时总是遇到一些C语言用法,句子符号能看懂,但实际的意思不明白,如下语句: // LCD_PWREN(GPG4) s2440IOP->GPGCON &= ~(3 GPGCON |= (1 GPGDAT |= (1 GPBCON = (s2440IOP->GPBCON & ~(3… 查看全部问答> |
|
在CE下电源管理 MDD层代码中: 电池驱动对外接口函数没有“BAT_”前缀,因为HKEY_LOCAL_MACHINE\\Drivers\\BuiltIn\\Battery\\Flags注册表项设置了DEVFLAGS_NAKEDENTRIES属性,表示“Init”代替“BAT_Init”,这样修改注册表“Prefix ...… 查看全部问答> |
|
各位大侠,我遇到点麻烦,帮帮忙。 我照着“帮助”来设置HIVE 首先,我添加了组件 hive-based registry 由于我的存储介质是 nandflash所以,我照着“帮助”教我的,在;HIVE BOOT SECTION 和; END HIVE BOOT SECTION之间添加了下面的代码: [ ...… 查看全部问答> |




