导航:首页 > 操作系统 > 单片机输出方波

单片机输出方波

发布时间:2022-02-27 10:47:05

Ⅰ 51单片机如何输出方波

有的51带PWM的,用PWM方式输出方波很容易。

Ⅱ 求高手 用51单片机输出产生方波的程序

#include"reg52.h"
sbit PWM=P1^0;//定义输出脚
void main()
{
TMOD=0x01; //定时器0工作方式1
TH0=(65536-10000)/256; //12M晶振10MS计时常数
TL0=(65536-10000)%256;
EA=1; //开总中断
ET0=1; //开定时器0中断
TR0=1; //启动定时器0
while(1);

}
//中断函数,启动后每10MS进入一次中断
void T0_time(void) interrupt 1
{
TH0=(65536-10000)/256; //12M晶振10MS计时常数
TL0=(65536-10000)%256;
if(PWM)PWM=0; //输出脚取反
else PWM=1;
}

Ⅲ 单片机输出方波

12系列的是不是自带寄存器可以输出方波,可以调试分频,输出20KHZ的方波,不行的话,可以用32M的晶振

Ⅳ 51单片机产生的方波能自己使用吗

可以。
可见:
http://hi..com/%D7%F6%B6%F8%C2%DB%B5%C0/blog/item/ef2c24cbf257e74af31fe7ef.html

Ⅳ 如何用51单片机输出一个占空比可调的方波:

估计你这个是想使用单片机来驱动DC-DC稳压电源吧。
你买STC12系列的单片机,自带PWM及ADC功能,然后通过输出电压及电流值调整频率输出,控制MOS管驱动高频变压器就可以完成了。

Ⅵ 求教高手如何让单片机输出方波

#include<reg51.h>
//如果是循环输出的话,我建议你做一个数组,如:
unsignedcharcodeWafer_Level_Table[10]=
{
0x01,0x01,0x00,0x01,0x00,
0x01,0x01,0x00,0x00,0x01,
};
staticunsignedchari=0;
sbitWafer_Output_IO=P0^1;

//初始化定时器
voidTimer0_Init(void)
{
TMOD=0x01;
TH0=(65536-38)/256;//这里是晶振等于12MHz时候的值
TL0=(65536-38)%256;
EA=1;
ET0=1;
TR0=1;
}

voidmain(void)
{
Wafer_Output_IO=1;
Timer0_Init();
while(1)
{
if(i==10)
{
i=0;
}
}
}
//中断服务函数
voidTimer0_isr(void)interrupt1
{
TH0=0xff;//重新赋初值
TL0=0xda;
Wafer_Output_IO=Wafer_Level_Table[i++];
}

Ⅶ 关于单片机实现方波信号的输出,求大神解惑!

PWM 就是脉宽调制 pulse width molation
方波信号就是只有高电平和低电平两种(理想的)的波形
PWM可以调节方波的占空比(一个周期内高电平持续的时间)
可以用PWM的方法调节电机转速,灯的亮度等等

Ⅷ 51单片机输出两路方波信号

#include "reg51.h"
//timer init
void initTimer(void)
{
TMOD=0x11;
TH0=0xff;
TL0=0xf5;
TH1=0xf8;
TL1=0xd7;
}
//timer0/counter0 interrupt
void timer0(void) interrupt 1
{
TH0=0xff;
TL0=0xf8;
P1&=0x01;
}
//timer1/counter1 interrupt
void timer1(void) interrupt3
{
TH1=0xf8;
TL1=0xd9;
P1&=0x02;
}
//the main fun
void main(void)
{
initTimer();
TR0=1;
ET0=1;
TR1=1;
ET1=1;
EA=1;
while(1);
}

Ⅸ 单片机怎么输出方波

用定时器或者用一个循环都可以如下:

#include<reg51.h>
#define uchar unsigned char
pulse1=P1^0;
pulse2=P1^1;
void t0isr() interrupt 1
{
pulse1=~pulse1;
}
void delay(uchar a)
{
uchar i,j;
for(i=0;i<a;i++)
for(j=0;j<120;j++);
}
main()
{
TMOD=0x02;
TH0=56;
TL0=56;
TR0=1;
ET0=1;
EA=1;
while(1)
{
pulse2=~pulse2;

delay(10);

}

}

Ⅹ 单片机80C51 汇编方波输出

ORG 0000H
AJMP MAIN
ORG 000BH
T0MS EQU NOT 500 ; 定义定时器初值 12M晶振 0.5 mS = 500 1 mS = 1000
MOV TL0, #LOW T0MS
MOV TH0, #HIGH T0MS
CPL P1.0 ; P1.0 取反 输出 1 mS的方波
REIT
MAIN:MOV TMOD,#01H
MOV TL0, #LOW T0MS
MOV TH0, #HIGH T0MS
SETB TR0 ; 启动定时器
SETB ET0 ; 开 T0 中断
SETB EA ; 开 总 中断
SJMP $
END

阅读全文

与单片机输出方波相关的资料

热点内容
编程买苹果电脑 浏览:760
flac算法 浏览:497
reactnative与android 浏览:663
程序员是干什么的工作好吗 浏览:258
kbuild编译ko 浏览:469
条件编译的宏 浏览:564
韩语编程语言 浏览:644
小程序开发如何租用服务器 浏览:78
怎么把钉钉文件夹保存到手机里 浏览:69
兵法pdf 浏览:643
app格式化下载不起怎么办 浏览:34
信捷加密文件是干嘛用的 浏览:952
su模型下载怎么解压不了 浏览:184
国际体验服如何把服务器改为亚服 浏览:884
手机怎么关闭视频加密 浏览:464
单片机编程存表法 浏览:724
富士康服务器是什么 浏览:457
编译是二进制吗 浏览:266
小程序账号登录源码 浏览:881
云南社保局app叫什么 浏览:699