标题:
单片机6MHZ晶振,如何产生精确的300HZ方波?
[打印本页]
作者:
adeyan
时间:
2020-6-29 21:07
标题:
单片机6MHZ晶振,如何产生精确的300HZ方波?
如题
作者:
man1234567
时间:
2020-6-30 07:56
都可以通过中断来解决
作者:
cjjdemon
时间:
2020-6-30 09:33
PWM即可
作者:
xianfajushi
时间:
2020-6-30 10:40
本帖最后由 xianfajushi 于 2020-7-1 06:59 编辑
没说明是虾米蛋骗鸡如果是C52的话就是12T可以计算预填值给定时器去产生准确的信号,6/12=0.5,1/0.5=2,2*555=1110。1110*3=3330,65536-1/300*1000*1000/2.
作者:
之二星魂
时间:
2020-6-30 10:52
放一堆nop,放一个翻转,放一个跳转指令。绝对能精确到一个机器周期
作者:
之二星魂
时间:
2020-6-30 10:53
ORG 0
JMP MAIN
ORG 0BH
JMP TIMER0ISR
MAIN:
MOV TMOD,#02H
MOV TH0,#06H
MOV TL0,#06H
SETB EA
SETB ET0
SETB TR0
JMP $
TIMER0ISR:
CPL P1.1
RETI
作者:
wulin
时间:
2020-6-30 16:47
#include<reg52.h>
sbit PMW=P1^0;
unsigned char i;
void main()
{
TMOD= 0x02;
TH0 = 0x98;
TL0 = 0x98;//6MHz晶振
TF0 = 0;
TR0 = 1;
EA=1;
ET0=1;
while(1);
}
void timer0()interrupt 1
{
if(++i>=8)
{
i=0;
PMW=~PMW;
}
}
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1