1. 单片机方波是什么意思,什么是一个方波,如何控制,最好举例说明一下
矩形波是一种底部和顶部水平,上升沿和下降沿接近垂直的波形,而方波是矩形波的一种特殊情况(占空比为50%)。把占空比不是50%的矩形波叫成方波是错误的,至少是不严谨的。至于对称与否,那是对电压而言,不是针对占空比。
你在提问中说要“控制”方波,不知你要怎么控制?
2. 用51单片机产生方波
这个就不需要什么电路了吧,有个51最小系统板+LCD1602液晶+几个按键就OK了,因为你是输出脉冲嘛,51也就只能输出高低电平的脉冲了,外加一个液晶显示即可。你到网上查一下液晶的连接电路就OK,一大把的。
另外你说的程序也并不难啊,频率这么低,用定时计数器就可以实现了。可以做一个公式,用频率或者占空比算出具体的定时器的计数值。公式嘛,当然也是你想一下了,呵呵。
综合来看,难点就在于键盘控制而已,要读入键盘值,然后进行数据整合处理。
3. 51单片机产生40KHZ方波
程序为:
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit Waveout=P1^0;
uchar
void main()
{
TMOD=0x01;
TH0=0xFF;
TL0=0xE8; //TL0=(65536-24)%256=232,即E8
EA=1;
ET0=1;
TR0=1;
while(1);
}
void T0_time() interrupt 1
{
TH0=0xFF;
TL0=0xE8;
Waveout=!Waveout;
}
(3)单片机方波扩展阅读
使用方法
1.将仿真器插入需仿真的用户板的CPU插座中,仿真器由用户板供电;
2.将仿真器的串行电缆和PC机接好,打开用户板电源;
3.通过KeilC 的IDE开发仿真环境UV2 下载用户程序进行仿真、调试。
硬件说明
1、使用用户板的晶振:仿真器晶振旁有两组跳线用来切换内部晶振和用户板晶振,当两个短路块位于仿真器晶振一侧时,默认使用仿真板上的晶振(11.0592MHz), 当两个短路块位于电容一侧时,使用用户板的晶振。
2、为便于调试带看门狗的用户板,仿真器的复位端未与用户板复位端相连;故仿真器的复位按钮只复位仿真器,不复位用户板;若要复位用户板,请使用用户板复位按钮。
参考资料来源:网络-51单片机
4. 如何用C语言编程使单片机产生方波信号
普通51的话需要模拟PWM,如果是加强版51有内置PWM模块,
PIC和AVR以及430还有STM也有集成PWM的型号!
如果是单纯输出方波的话就简单了。
程序如下:
//功能,按下P1_0的开关降低频率,按P1_1为升高频率
#include<AT89X52.H> //引用AT89X52的库文件
#defineucharunsignedchar //替换简称
#defineuintunsignedint //替换简称
ucharsm; //定义临时变量
voiddelay_ms(uintms) //延时子函数,一个循环12uS
{
while(--ms);
}
voidT0_IRQ(void)interruptTF0_VECTOR //定时器0中断函数
{
TH0=sm; //将变量赋予定时器0的高位
P2_0=!P2_0; //翻转IO
}
//寄存器初始化子函数
voidmcu_init()
{
ET0=1; //开定时器0中断
EA=1; //开总中断
TMOD=0x01; //设置为16位定时器0
TH0=0xFF; //填充定时器高位
TR0=1; //开定时器0
sm=0xFF; //变量初始化
}
voidmain() //主函数
{
mcu_init(); //调用初始化函数
while(1) //主循环
{
if((!P1_0)||(!P1_1)) //检测是否有按键按下
{
delay_ms(8333); //延时去抖
if(!P1_0) //如果是P1_0按键按下
{
while(!P1_0); //等待按键放手
if(sm) //检测变量不为0
{
--sm; //自减1
P2_1=1; //取消边界LED
}
elseP2_1=0; //到达边界点亮LED
}
elseif(!P1_1) //否则如果P1_1按键按下
{
while(!P1_1); //等待按键放手
if(sm<0xFF) //检测变量小于0xFF
{
++sm; //自加1
P2_1=1;
}
elseP2_1=0;
}
}
}
}
5. 怎样用51单片机产生方波
可以用定时器中断实现这样的处理,这种方法重点在于根据你的晶振频率计算出定时器中断的参数,然后就可以很好的控制定时器中断触发的时间了.只要在中断处理过程里不断的让I/O口取反,就可以实现这样的方波。
6. 如何用单片机产生10M以上的方波信号
方波是可以不用DA产生的,但是幅度不能调节。
只要单片机可以使用的晶振频率比较高,产生这个方波不是问题。
C8051F130是增强型51核单片机,系统时钟数十兆,因此,送出一个12.5M的信号是没有问题的。您所使用的单片机速度不够,所以出不来。
7. 一个单片机同时产生两个频率不同的方波.这个可能吗
可以,只是频率不能太高 如定时100us中断一次,每中断一次将某一个管脚的电平状态态取反一次,就得到5kHZ方波,每中断2次或3次将另外一个管脚取反,就得到2·5KHZ或1·667kHZ的方波 如果定时很短,则中断很频繁,单片机就干不了其他工作了 因此产生方波频率不能太高
8. 单片机 时钟频率,振荡频率,方波,脉冲,之间关系
先说方波,方波一般从名字上就可以看出是什么意思,看图就知道了,就是像长城墙的那个
那究竟什么是脉冲?从字面上理解——脉搏的跳动所产生的冲击波。脉冲的定义其实是这样的:电压(V)或电流(A)的波形象心电图上的脉搏跳动的波形但现在听到的什么电源脉冲、声脉冲……又作何解释呢——脉冲的原意被延伸出来得:隔一段相同的时间发出的波等机械形式,学术上把脉冲定义为:在短时间内突变,随后又迅速返回其初始值的物理量称之为脉冲。
在数字电路里面一般就把一个凸起的方波叫脉冲。
单片机的机构特征是将组成计算机的基本部件集成在一块晶体芯片上,构成一台功能独特的,完整的单片微型计算机。它的英文名是MCU(microcontrollerunit)微型控制单元。
单片机的工作需要时钟信号,时钟信号是时序逻辑的基础,它用于决定逻辑单元中的状态何时更新。时钟信号是指有固定周期并与运行无关的信号量,时钟频率(clockfrequency,CF)是时钟周期的倒数。
也可以说时钟频率越高,CPU或者单片机运行的越快。
而振荡频率一般就是指振荡电路的频率,由于时钟信号是由振荡电路产生的,所以一般振荡频率等于时钟频率
9. 单片机产生方波程序
快速10位pwm模式:
#include
void
main()
{
ddrd|=0x30;
//也许没必要。自己试试
tccr1a=0xa3;
//设置工作模式
tccr1b=0x0b;
//设置工作模式
ocr1a=800;
//设置第1路占空比
ocr1b=500;
//设置第2路占空比
}
10位模式下
最高值是1023
调整ocr1a或ocr1b为511,即可产生占空比为50%的方波。
10. 如何让单片机同时产生两个方波
首先RTC可以生成一个方波
然后外部中断也能产生方波,这不就有两个了
主函数把单独的引脚作为串口输出又可以生成一个方波