啊~~~求救~
发布网友
发布时间:2023-10-13 23:30
我来回答
共1个回答
热心网友
时间:2024-12-04 21:52
第三题 上次已经给你的了 第四题如下:
(1)因为是方波 所以T1的定时时间取50us 定时器T1应该采用工作方式1(16位计数方式),当然工作方式2应该也没问题。
(2)计算初值 T=(2^16-X)*2us=50us 其中16表示工作方式1的位数,2us是6M晶振的机器周期。可以算出X=ffe7H.所以T1初始化语句为:
{
TMOD=0x10; //定时器1工作方式1
TH1=0xFF; //设置定时初值
TL1=0XE7;
EA=1; //开中断
ET1=1; //定时器1允许中断
TR1=1; //启动T1,定时开始
for(;;); //等待中断
}
(3)
void T1( ) interrupt 2 using 0
{
TH1=0xff; //重装计数初值
TL1=0xe7;
P1_0=!P1_0; //输出取反
}
当然前面应该对引脚进行定义:
sbit P1_0=P1^1;
应该就是这样了
猫 我怀疑是不是师大的来自:求助得到的回答