当前位置: 代码迷 >> C语言 >> 产生锯齿波以及方波的C程序
  详细解决方案

产生锯齿波以及方波的C程序

热度:748   发布时间:2006-11-04 19:56:35.0
产生锯齿波以及方波的C程序

产生锯齿波以及方波的C程序
产生锯齿波以及方波的C程序
产生锯齿波以及方波的C程序
产生锯齿波以及方波的C程序
放心吧 我都调试过的 没问题
//#pragma db oe sb

#include<reg51.h>

#include<absacc.h>

#define DAC0832 XBYTE[0x7fff] /* 定义DAC0832端口地址 */

#define uchar unsigned char

void delay(uchar t) { /* 延时函数 */

while(t--);

}

void saw(void) { /* 锯齿波发生函数 */

uchar i;

for (i=0;i<255;i++) {

DAC0832=i;

}

}

void square(void) { /* 方波发生函数 */

DAC0832=0x00;

delay(0x10);

DAC0832=0xff;

delay(0x10);

}

void main(void) {

uchar i,j;

i=j=0xff;

while(i--) {

saw(); /* 产生一段锯齿波 */

}

while(j--) {

square(); /* 产生一段方波 */

}

}

搜索更多相关的解决方案: 方波  锯齿  

----------------解决方案--------------------------------------------------------

单版机C语言,朋友这个应该是51C语言。这个#include<absacc.h>是什么。


----------------解决方案--------------------------------------------------------

他是一个头文件
是51单片机里面的

----------------解决方案--------------------------------------------------------

#include<absacc.h>是一个头文件
里面的内容是
/*--------------------------------------------------------------------------
ABSACC.H

Direct access to 8051, extended 8051 and Philips 80C51MX memory areas.
Copyright (c) 1988-2001 Keil Elektronik GmbH and Keil Software, Inc.
All rights reserved.
--------------------------------------------------------------------------*/

#define CBYTE ((unsigned char volatile code *) 0)
#define DBYTE ((unsigned char volatile data *) 0)
#define PBYTE ((unsigned char volatile pdata *) 0)
#define XBYTE ((unsigned char volatile xdata *) 0)

#define CWORD ((unsigned int volatile code *) 0)
#define DWORD ((unsigned int volatile data *) 0)
#define PWORD ((unsigned int volatile pdata *) 0)
#define XWORD ((unsigned int volatile xdata *) 0)


#ifdef __CX51__
#define FVAR(object, addr) (*((object volatile far *) (addr)))
#define FARRAY(object, base) ((object volatile far *) (base))
#else
#define FVAR(object, addr) (*((object volatile far *) ((addr)+0x10000L)))
#define FCVAR(object, addr) (*((object const far *) ((addr)+0x810000L)))
#define FARRAY(object, base) ((object volatile far *) ((base)+0x10000L))
#define FCARRAY(object, base) ((object const far *) ((base)+0x810000L))
#endif


----------------解决方案--------------------------------------------------------
这个有什么用,介绍一下。
----------------解决方案--------------------------------------------------------


是用来定义宏的
要是没有这些头文件
就不能定义像"#define DAC0832 XBYTE[0x7fff] /* 定义DAC0832端口地址 */"的宏指令


----------------解决方案--------------------------------------------------------
以下是引用hehuihh2004在2006-11-4 20:06:08的发言:

他是一个头文件
是51单片机里面的

以前见过我哥哥用哪个哦.
硬件用的多吧...
貌似楼主也搞硬件?


----------------解决方案--------------------------------------------------------

怎样编写不规则的方波啊?用C编写 急啊!


----------------解决方案--------------------------------------------------------
  相关解决方案