全球旧事资料 分类
ui
tu
sig
edi
tucharcodeccw0x080x040x020x01逆时针旋转相序ucharcodecw0x010x020x040x08顺时针旋转相序ucharcodespeed0x3f0x060x5b0x4f0x660x6ducharcodetable0x3f0x060x5b0x4f0x660x6d0x7d
0x070x7f0x6f0x770x7c0x390x5e0x790x71共阴极数码管显示表ucharcodetable_a
ode共阳极0f数码管编码
22
f0xc00xf90xa40xb0030x990x920x820xf8470x800x900x880x838b0xc60xa10x860x8ecfucharcodeccw80x080x0c0x040x060x020x030x010x09表ui
ttimeshow1show2symtemptaflagijrpm
sbiti
cP32加速sbitdecP33减速sbitkeyccwP34逆时针转sbitkeycwP35顺时针转sbitpauseP36暂停sbitfirP20第一数码管sbitsecP21第二数码管
8拍旋转相序
voidi
it初始化定时器0,1,串口voiddirec按键控制转向voidspeedctl按键控制转速voiddisplay速度显示函数voiddelay
msui
taa1ms延时函数
voidmai

i
itwhile1speedctldirecdisplay
23
fvoidwi
d_i
it式1
voidspeedctl速

TMOD0X21定时器1为方式2,定时器0为方
TH10xFDTL10xFDTH06553610002561毫秒定时中断TL0655361000256TR11启动定时器1EA1打开总中断ET01允许定时器0中断TR01启动定时器0
ifi
c0
if
11
10whilei
c
displaytime0elseifdec0
24
加减速
fif
0
1
whiledecdisplay
time0switch
case1
t937面转一圈937ms,基准速度一分钟一圈
rpm1breakcase2t312rpm3breakcase3t187rpm5breakcase4t133rpm7breakcase5t104rpm9breakcase6
25
6064转速一分钟一圈里
fvoiddirec
t85rpm11breakcase7t72rpm13breakcase8t62rpm15breakcase9t55rpm17breakcase10t49rpm19break
ifkeyccw0flag1time0elseifkeycw0
26
fvoiddisplay
voiddelay
msui
taa
序voidtimer0i
terrupt1
flag2time0elseifpause0flag0
fir1sec0P0table_a
oderpm10delay
ms17fir0sec1P0table_a
oderpm10delay
ms20
ucharbbwhileaaforbb0bb250bb
1ms基准延时程

TH0655361000256
27
fTL0655361000256timeifflag1逆时针转iftimet
time0P1ccwiiifi4
i0elseifflag2顺时针转iftimet
time0ifi0
ielseifi0
i3P1ccwi
28
f5仿真与调试51仿真调试的操作步骤
本次采用的仿真软件是proteus,采用的编程工具是keil。具体操作如下:1)在Protues中画出系统电路图2)编写程序并在keil中编译并生成hex文件。3)把在keil中编译生成的HEX文件载入AT89C52芯片中;4)运行仿真。
52仿真结果
仿真结果如下图所示:当r
好听全球资料 返回顶部