解:假设fosc=MHz,则机器周期为1us。
A: 波的机器周期的10ms,则上半周期与下半周期各为5ms,每半个周期有250个小平台(输出最大不用255,而是250,即FAH),则每个平台占用的时间为20us,因此2个数据输出之间间隔为20us,即需要有20个机器周期。
B: 程序如下:
C: ART:MOVDPTR,#00FEH
D: VA,
E: 00H
F: :MOVX@DPTR,A;2个机器周期
G: CA;1个机器周期
H: VR0,
I: 07H;1个机器周期
J: OP1:DJNZR0,LOOP1;2个机器周期
K: NEA,
L: 0FAH,UP;2个机器周期
M: WN:MOVX@DPTR,A;2个机器周期
N: CA;1个机器周期
O: VR0,
P: 07H;1个机器周期
A: 波的机器周期的10ms,则上半周期与下半周期各为5ms,每半个周期有250个小平台(输出最大不用255,而是250,即FAH),则每个平台占用的时间为20us,因此2个数据输出之间间隔为20us,即需要有20个机器周期。
B: 程序如下:
C: ART:MOVDPTR,#00FEH
D: VA,
E: 00H
F: :MOVX@DPTR,A;2个机器周期
G: CA;1个机器周期
H: VR0,
I: 07H;1个机器周期
J: OP1:DJNZR0,LOOP1;2个机器周期
K: NEA,
L: 0FAH,UP;2个机器周期
M: WN:MOVX@DPTR,A;2个机器周期
N: CA;1个机器周期
O: VR0,
P: 07H;1个机器周期