如何用c语言编写一段方波

如何用c语言编写一段方波,第1张

最好还是不要用延时函数

比较准确的方法是利用定时器

以c51为键慎知例:

/*********定时器方稿消波************/

/*********16位定时器************/

/************机器周期1us********/孝滚

/*********占空比50%*************/

/*********方波周期1s*************/

int a // 定义全局整形变量

void int() interrupt 1

{

设置定时器初值为500;

a++

if(a == 1000)

{

"输出取反"

}

}

附上代码,讲解在后历带面肢渗芦:

public class Program

{

static void Main(string[] args)

{

List<喊仔Point>range = new List<Point>(5 * 5)

for (int i = 0i <5i++)

{

for (int j = 0j <5j++)

{

range.Add(new Point { X = j, Y = i })

}

}

//移动方向的顺序

MoveDirection[] md = new[]

这是两毫 秒 产生的方烂锋波 我仿信闷真过了 好使

#include<reg51.h>

sbit P10=P1^0

void main()

{ EA=1ET1=1TR0=1

TMOD=01

TH0=65536-2000/256

TL0=65536-2000%256

while(1)

{

P10=~P10

}

}

void NT1() interrupt 3

{

TH0=65536-2000/256

TL0=65536-2000%256

}

以下程序是0832产生的三种波形 三角波 锯齿饥坦晌波 方波

#include <AT89X51.H>

#include<absacc.h>

#define PP XBYTE[0x7fff]

#define uint unsigned int

uint i,j,k

void delay(uint z)

void main()

{

while(1)

{

if(P1_0==0)

{ delay(10)

if(P1_0==0)

{ while(P1_2!=0&&P1_1!=0)

{ P1_3=0

for(i=255i>=0i--)

}

while(P1_0!=1)

} }

if(P1_1==0)

{ delay(10)

if(P1_1==0)

{ P1_4=0

while(P1_0!=0&&P1_2!=0)

{ for(j=0j<=254j++)

for(j=255j>=0j--)

}

while(P1_1!=1)}}

if(P1_2==0)

{ delay(10)

if(P1_2==0)

{ while(P1_0!=0&&P1_1!=0)

{P1_5=0

PP=255

delay(10)

PP=0

delay(10)} } }

} }

void delay(uint z)

{ uint x,y

for(x=zx>0x--)

for(y=120y>0y--)

}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12320657.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存