全球旧事资料 分类
6sbitwelaP27voidmai
wela1P00xFEwela0
52系列单片机头文件申明U1锁存器的锁存端申明U2锁存器的锁存端
打开U2锁存器送入位选信号关闭U2锁存器
dula1P00x7Fdula0while1
打开U1锁存器送入段选信号关闭U2锁存器程序停止到这里
例322让实验板上6个数码管同时点亮,依次显示0到F,时间间隔为05ms,循环下去。
(part21_2cP61)
i
cludereg52h
52系列单片机头文件
defi
eucharu
sig
edchar
defi
eui
tu
sig
edi
t
sbitdulaP26
申明U1锁存器的锁存端
sbitwelaP27
申明U2锁存器的锁存端
uchar
um
ucharcodetable
0x3f0x060x5b0x4f
0x660x6d0x7d0x07
0x7f0x6f0x770x7c
0x390x5e0x790x71
voiddelaymsui
t
voidmai


wela1打开U2锁存端
P00xco送入位选信号
wela0关闭U2锁存端
while1

for
um0
um16
um16个数循环显示

dula1打开U1锁存端
P0table
um送入段选信号
dula0关闭U1锁存端
delayms500延时05秒


20201127
fvoiddelaymsui
txms
ui
tijforixmsi0iixms即延时约xms毫秒
forj110j0j例331第一个数码管显示1,时间为05s,然后关闭它,立即让第二个数码管显示2,时间为05s在关闭它……一直到最后一个数码管显示6,时间同样为05s,关闭它之后再回来显示第一个数码管,一直循环下去。(part21_3cP62)例352用定时器0的方式1实现第一个发光二极管以200ms间隔闪烁,用定时器1的方式1实现数码管前两位59s循环计时。(part21_5cP75)
例411用数码管前两位显示一个十进制数,变化范围为0059,开始时显示00,每按下S2
20201127
f键一次,数值加1;每按下S3键一次,数值减1;每按下S4键一次,数值归零;按下S5
键一次,利用定时器功能使数值开始自动每秒加1,再次按下S5键,数值停止加1,保持
显示原数。(part22_1cP82)
i
cludereg52h
52系列单片机头文件
defi
eucharu
sig
edchar
defi
eui
tu
sig
edi
t
sbitkey1P34
sbitkey2P35
sbitkey3P36
sbitkey4P37
sbitdulaP26
申明U1锁存器的锁存端
sbitwelaP27
申明U2锁存器的锁存端
ucharcodetable
0x3f0x060x5b0x4f
0x660x6d0x7d0x07
0x7f0x6f0x770x7c
0x390x5e0x790x71
voiddelaymsui
t
uchar
umt0
um
voiddisplayuchar
umdis显示子函数

ucharshige
分离两个分别要显示的数
shi
umdis10
ge
umdis10
dula1P0tableshi
送十位段选数据
dula0P00xff
送位选数据前关闭所有显示,防止打开位选锁存时
wela1P00xfe
原来段选数据通过位选锁存器造成混乱送位选数据
wela0delayms5延时
dula1r
好听全球资料 返回顶部