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

单片机输出方波

发布时间: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

阅读全文

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

热点内容
css文件在线解压 浏览:148
36岁程序员近况 浏览:283
哪里可以下载不加密的歌 浏览:934
隐藏文件夹是什么梗 浏览:918
插件注册命令 浏览:497
梁一端加密一端不加密规范 浏览:82
代码行数统计命令 浏览:104
单片机中2K表示什么 浏览:482
紫禁城为什么会断开服务器 浏览:580
华为手机的方舟编译器在哪呢 浏览:123
下载压缩虐杀原形2 浏览:905
linux脚本cd 浏览:167
间架结构pdf 浏览:843
重庆农村商业银行app怎么老出问题 浏览:471
慧编程配置要求 浏览:673
数控机床编程与操作视频 浏览:461
文件夹资料误删怎么办 浏览:87
手机app怎么下载安装 浏览:493
最新的java版本 浏览:995
万卷小说缓存在哪个文件夹 浏览:688