导航:首页 > 编程语言 > 波形js

波形js

发布时间:2023-01-25 15:37:59

A. 用DAC0832实现多种波形的输出(汇编程序

汇编没有,C语言的做过。汇编只有正弦波的。

#include "reg52.h"
#define uchar unsigned char
#define uint unsigned int

unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00}; //共阴极0~9对应16进制数
//=============正弦波数据====================
uchar code sin_tab[256]=
{
0x80, 0x83, 0x86, 0x89, 0x8c, 0x8f, 0x92, 0x95, 0x98, 0x9c, 0x9f, 0xa2, 0xa5, 0xa8, 0xab, 0xae,
0xb0, 0xb3, 0xb6, 0xb9, 0xbc, 0xbf, 0xc1, 0xc4, 0xc7, 0xc9, 0xcc, 0xce, 0xd1, 0xd3, 0xd5, 0xd8,
0xda, 0xdc, 0xde, 0xe0, 0xe2, 0xe4, 0xe6, 0xe8, 0xea, 0xec, 0xed, 0xef, 0xf0, 0xf2, 0xf3, 0xf4,
0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfc, 0xfd, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfd, 0xfc, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0xf7,
0xf6, 0xf5, 0xf3, 0xf2, 0xf0, 0xef, 0xed, 0xec, 0xea, 0xe8, 0xe6, 0xe4, 0xe3, 0xe1, 0xde, 0xdc,
0xda, 0xd8, 0xd6, 0xd3, 0xd1, 0xce, 0xcc, 0xc9, 0xc7, 0xc4, 0xc1, 0xbf, 0xbc, 0xb9, 0xb6, 0xb4,
0xb1, 0xae, 0xab, 0xa8, 0xa5, 0xa2, 0x9f, 0x9c, 0x99, 0x96, 0x92, 0x8f, 0x8c, 0x89, 0x86, 0x83,
0x80, 0x7d, 0x79, 0x76, 0x73, 0x70, 0x6d, 0x6a, 0x67, 0x64, 0x61, 0x5e, 0x5b, 0x58, 0x55, 0x52,
0x4f, 0x4c, 0x49, 0x46, 0x43, 0x41, 0x3e, 0x3b, 0x39, 0x36, 0x33, 0x31, 0x2e, 0x2c, 0x2a, 0x27,
0x25, 0x23, 0x21, 0x1f, 0x1d, 0x1b, 0x19, 0x17, 0x15, 0x14, 0x12, 0x10, 0xf, 0xd, 0xc, 0xb ,
0x9, 0x8, 0x7, 0x6, 0x5, 0x4, 0x3, 0x3, 0x2, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0 ,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x2, 0x3, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8 ,
0x9, 0xa, 0xc, 0xd, 0xe, 0x10, 0x12, 0x13, 0x15, 0x17, 0x18, 0x1a, 0x1c, 0x1e, 0x20, 0x23,
0x25, 0x27, 0x29, 0x2c, 0x2e, 0x30, 0x33, 0x35, 0x38, 0x3b, 0x3d, 0x40, 0x43, 0x46, 0x48, 0x4b,
0x4e, 0x51, 0x54, 0x57, 0x5a, 0x5d, 0x60, 0x63, 0x66, 0x69, 0x6c, 0x6f, 0x73, 0x76, 0x79, 0x7c,
};
//三角波信号数据表
uchar code thr_tab[32]=
{
0x00,0x0f,0x1f,0x2f,0x3f,0x4f,0x5f,0x6f,0x7f,0x8f,0x9f,0xaf,0xbf,0xcf,0xdf,0xef,
0xff,0xef,0xdf,0xcf,0xbf,0xaf,0x9f,0x8f,0x7f,0x6f,0x5f,0x4f,0x3f,0x2f,0x1f,0x0f
};
//-------------------------------------------------------------------------------------------------------
//锯齿波信号数据表
uchar code jc_tab[33]=
{
0x00,0x08,0x0f,0x18,0x1f,0x28,0x2f,0x38,0x3f,0x48,0x4f,0x58,0x5f,0x68,0x6f,0x78,
0x7f,0x88,0x8f,0x98,0x9f,0xa8,0xaf,0xb8,0xbf,0xc8,0xcf,0xd8,0xdf,0xe8,0xef,0xf8,0xff
};
sbit LED4=P2^7;
sbit LED3=P2^6;
sbit LED2=P2^5;
sbit LED1=P2^4;

int temp1; //实际温度
int conter=0; //LED占空比计数
unsigned char tabArry[4]; //保存显示数据
//按键口申明
sbit k1=P2^0;
sbit k2=P2^1;
sbit LED=P2^2;
sbit mode=P3^2;

char flag=1; //按键标志
int keycount=0; //按键计数
unsigned char waveth,wavetl;
unsigned int mbjs,wavecount,frecount=500;
//毫秒延时程序
void delayms(int ms)
{
uchar i;
while(ms--)
{
for(i=250;i>0;i--);
}
}
//数据分位
void change(char ch1,unsigned int ch)
{
tabArry[0]=ch1;
tabArry[1]=ch%1000/100;
tabArry[2]=ch%100/10;
tabArry[3]=ch%10;
}
//键盘扫描
void keyscan()
{
if(flag==1)
{
if(mode==0) //用mode切换温度和波形
{
delayms(10);
if(mode==0)
{
flag=0;
keycount++;
if(keycount>=4) keycount=0;
//if(keycount>2) ET1=1;
//else ET1=0;
}
}

if(k1==0)
{
delayms(10);
if(k1==0)
{
flag=0;
switch(keycount)
{
case 0:
//case 4:
// ET1=1;
frecount++;
if(frecount>1000) frecount=0;
change(0x0d,frecount);
break;
case 1:
// case 6:
frecount++;
if(frecount>1000) frecount=0;
change(0x0e,frecount);
break;
case 2:
frecount++;
if(frecount>1000) frecount=0;
change(0x0f,frecount);
break;
case 3:
frecount++;
if(frecount>1000) frecount=0;
change(0x05,frecount);
break;
}
}
}
if(k2==0)
{
delayms(10);
if(k2==0)
{
flag=0;
switch(keycount)
{
case 0:
// ET1=1;
frecount--;
if(frecount<0) frecount=999;
change(0x0d,frecount);
waveth=(65536-31250/frecount)/256;
wavetl=(65536-31250/frecount)%256;
break;
case 1:
frecount--;
if(frecount<0) frecount=999;
change(0x0e,frecount);
waveth=(65536-31250/frecount)/256;
wavetl=(65536-31250/frecount)%256;
break;
case 2:
frecount--;
if(frecount<0) frecount=999;
change(0x0f,frecount);
waveth=(65536-31250/frecount)/256;
wavetl=(65536-31250/frecount)%256;
break;
case 3:
frecount--;
if(frecount<0) frecount=999;
change(0x05,frecount);
waveth=(65536-31250/frecount)/256;
wavetl=(65536-31250/frecount)%256;
break;

}
}
}

}
if(k1!=0 && k2!=0 && mode!=0) flag=1;

}
void display()
{
// int i;
// uchar ch1,ch2;
switch(keycount)
{
case 0:
change(0x0d,frecount);
break;
case 1:
change(0x0e,frecount);
break;
case 2:
change(0x0f,frecount);
break;
case 3:
change(0x05,frecount);
break;

}

/* ch1=0xef;
ch2=0xf0;
for(i=0;i<4;i++)
{
P0= table[tabArry[i]];

// P2 |= ch2;
P2 &= ch1;
ch1<<=1;
delayms(10);
// P2 = P2 | 0xf0;
} */

P0 = table[tabArry[0]];
LED1=0;
delayms(3);
LED1=1;

P0 = table[tabArry[1]];
LED2=0;
delayms(3);
LED2=1;

P0 = table[tabArry[2]];
LED3=0;
delayms(3);
LED3=1;

P0 = table[tabArry[3]];
LED4=0;
delayms(3);
LED4=1;
}
void Timerinit()
{
TMOD=0x01;
// TH0=0xff; //1KHz/256
// TL0=0xfc;
TH0=waveth=(65536-31250/frecount)/256;
TL0=wavetl=(65536-31250/frecount)%256;
EA=1;
ET0=1;
TR0=1;
}
//主函数
void main()
{
Timerinit();
while(1)
{
keyscan();
display();
}
}

void Timer0() interrupt 1
{
TH0=waveth;
TL0=wavetl;
if (keycount==0)
{
wavecount=0;
P1 = sin_tab[mbjs];
mbjs+=8;
if(mbjs>=256)
{
mbjs=0;
}
}
else if(keycount==1)
{
wavecount=0;
P1 = thr_tab[mbjs];
mbjs++;
if(mbjs>=32)
{
mbjs=0;
}
}
else if(keycount==2)
{
wavecount=0;
P1 = jc_tab[mbjs];
mbjs++;
if(mbjs>=32)
{
mbjs=0;
}
}
}

B. 有哪些用 JavaScript 实现的图形库

JS图形、图标库推荐:

1. JS Charts

JS Charts 是个基于JavaScript的图表生成器,不需要任何编码。JS Charts 非常容易使用,只要用户使用客户端脚本(比如,在 web 浏览器中执行)。它不需要多余的插件和服务器模块,只需要下载 JS Charts 的脚本,准备好 XML,JSON 或者 JavaScript 数组数据。
2. Canvasjs

CanvasJS 是个易用的 HTML5 & JavaScript 图表库,基于 Canvas 元素。Graphs 可以通过设备渲染,包括 iPhone,iPad,Android,Windows Phone,Microsoft Surface,Desktops 等等。它允许用户创建适用于所有设备,不影响 web 应用程序的功能和可维护性的富仪表盘。CanvcasJS 有着非常漂亮的主题和超过传统的 Flash 和 SVG 图表 10x 倍以上的速度——生成轻量级,漂亮和响应式的仪表图。
3. Chart.js

Chart.js 是个简单的,面向对象的客户端图形库,用户可以用 6 中不同的方式来可视化数据。每个方式都是动画效果的,完全自定义,而且看起来非常好看,即使在 retina 显示。它使用 HTML5 canvas 元素,支持所有现代浏览器,并且支持 IE7/8。
4. Aristochart

Aristochart 是个高度自定义,灵活的折线 Canvas 图表库,允许用户集中精力在图表的审美方面,后台工作做得非常好。Aristochart 有个持续进步的社区,提供许多不断增长的主题给用户选择。
5. xCharts

xCharts 是一个使用 D3.js 来构建漂亮的可定制的数据驱动的 JavaScript图表库,他使用HTML,CSS,SVG实现图表,xCharts 被设计为一个动态的、流畅的、开放的和可定制化的库。
6. BonsaiJS

BonsaiJS 是个轻量级的 JavaScript图形库,提供直观的图形 API 和 SVG 渲染器。主要特性包括:架构分离的运行器和渲染器;iFrame,Worker 和 Node 运行上下文;形状,路径,Assets(音频,图像,字体,subMovies),Keyframe 和常规动画,等等。支持现代化浏览器: Safari, Chrome 和 Firefox。
7. Sigma.js

Sigma.js 是个免费开源的 JavaScript图形库,使用 HTML5 canvas 元素。它的设计是特别为了在 web 界面分享交互式网络 Map 和动态展示网络数据库
8. Morris.js

Morris.js 是个轻量级的 JavaScript库,使用 jQuery 和 Rapha&enuml 来绘制时序图。 Morris.js 生命周期是从代码驱动 howmanyleft.co.uk 图表开始的。它支持的浏览器有: IE6+, Safari/Chrome/Firefox, iOS 3+ 和 Android 3+。它的公共 API 非常的小,只有一个函数: Morris.Line(选项),包括了许多配置选项。
9. Paper.js

Paper.js 是一个开源的向量图形脚本框架,基于 HTML5Canvas 开发。提供清晰的场景图、DOM和大量强大的功能用来创建各种向量图和贝塞尔曲线。
10. AmCharts

AmCharts 是个高级图表库,适用于所有数据的可视化。AmCharts 包括: Column, Bar, Line, Area, Step, Step without risers, Smoothed line, Candlestick, OHLC, Pie/Donut, Radar/ Polar, XY/Scatter/Bubble, Bullet, Funnel/Pyramid 等等。
11. Smoothie Charts

Smoothie Charts是个极小的图表库,专为实时流媒体数据设计的。Joe Walnes 想展示 WebSocket推动的实时的流数据。虽然很多图表库允许用户动态更新数据,但是没有一个是可以优化源源不断的流数据。
12. Dygraphs

Dygraphs 是个快速,灵活,开源的 JavaScript 图表库。它允许用户展示和解析密集的数据集。可以高亮需要强调的数据集。可以使用鼠标点击或者用鼠标拖动来缩放图表;可以修改数值或者点击条目来调整平均周期。
13. Grafico

Grafico 是 Grafico 是一个基于 Raphaël 和 Prototype.js 构建的 JavaScript 图表库,提供了各种图表类型。这些漂亮的图表,有利于传递他们的信息。
14. Highchart JS

Highcharts JS 是一个制作图表的纯 Javascript类库,主要特性如下:兼容性:兼容当今所有的浏览器,包括 iPhone、IE 和火狐等等;对个人用户完全免 费;纯JS,无BS;支持大部分的图表类型:直线图,曲线图、区域图、区域曲线图、柱状图、饼装图、散布图;跨语言:不管是 PHP、Asp.net 还是 Java 都可以使用。
15. Flotr

Flotr 是一个基于 Prototype 开发的 JavaScript绘图工具。支持图例,鼠标跟踪,图片区域选择,图片缩放,添加事件钩子(event hook),通过CSS设置样式等。
16. Flot

Flot 是受 Plotr 和 PlotKit 的 启发,Ole Laursen 基于 jquery 开发了一个图表绘制(WEB Chart)插件并命名为 flot。 flot 是个纯 JavaSript 库,专注于简单的使用方式,迷人的外观和交互式特性。支持的浏览器有: Internet Explorer 6+, Chrome, Firefox 2+, Safari 3+ and Opera 9.5+。
17. jFreeChart

JFreeChart 主要用来各种各样的图表,这些图表包括:饼图、柱状图(普通柱状图以及堆栈柱状图)、线图、区域图、分布图、混合图、甘特图以及一些仪表盘等等。JFreeChart 项目历史悠久,而且有大量的开发者在维护。
18. Plotkit

PlotKit 是一个纯 JavaScript 绘图工具包。它支持 HTML Canvas 和 Adobe SVG。有着很完整的文档,方便用户使用。
19. Planetary.js

Planetary.js 是个令人称奇的创建交互式 web 地球仪的 JavaScript库。它使用 D3 和 TopoJSON 来解析和渲染地理信息。Planetary.js 使用基于插件的架构,甚至默认自身就是个插件!这使得 Planetary.js 非常灵活,而且它是允许用户完全自定义,包括颜色,大小,rotation 等等。更重要的是,用户可以在任意位置使用自定义的颜色和大小来显示动画“pings”;它还支持鼠标拖动和缩放,100% 免费和开源。
20. Ember Charts

Ember Charts 是个图表库,使用 Ember.js 和 d3.js 框架构建的。它包括时间线,条形图,饼图和散点图,非常容易扩展和修改。这些图表组件都是开箱即用的,在图表交互和演示方面应用的很好。
21. Sparky

Sparky 是个免费的 JavaScript 波形图库,依赖于 Raphaël ,非常容易使用。支持多个图表类型(折线,条形,area),折线和区域图可以有多个颜色选择。
22. Envision.js

Envision.js 是个 JavaScript 库,用来简化,快速创建交互式的 HTML5 可视化图表。它包括两个图表类型:时序图和 Finance ,提供 API 给开发者,用户可以直接自定义创建图表。这个库氏基于 Flotr2 和 HTML5 Canvas 的。它与框架无关,依赖于几个小的 JavaScript 库。
23. Dc.js

dc.js 是个 JavaScript 图表库,有着原生的 crossfilter, 支持和允许高效展示大型多维数据集(基于 crossfilter 的示例);图表使用 dc.js 渲染,是使用原生数据驱动,所以能得到用户的实时反馈;dc.js 最大的亮点在于能提供一个简单而强大的 JavaScript 库,能进行数据可视化和分析;不仅支持桌面浏览器还支持移动端。
24. ElyCharts

Elycharts 是一个易于使用的,可定制的 JavaScript图表绘制组件。这个组件可用于绘制大部分常用的图表类型包括:line, column, are, bar, pie, sparklines and combinations。它支持多种交互式功能包括:鼠标跟踪、事件处理、利用各种动画高亮显示选择中的区域,Tooltip,HTML锚点等。可以动 态修改数据,并以漂亮的动画效果展示图表中的变化。图表利用SVG/VML技术生成,基于jQuery + Raphaël开发。
25. AwesomeChartJS

AwesomeChartJS Awesome Chart JS 是一个 JavaScript生成图表的类库,它利用了 HTML5 的 canvas 标签来创建统计图表。此类库就是为了减轻开发者的工作量,使用它只需书写几行代码便能生成漂亮的图表。
26. Arbor.js

Arbor.js 是一个利用 Web Works 和 jQuery创建的可视化图形库,它为图形组织和屏幕刷新处理提供了一个高效的、力导向的布局算法。
27. CanvasXpress

canvasXpress 是一个基于HTML5 canvas标签实现的 JavaScript图表类库,它能够支持线性图、柱形图、饼图和热点图等多种常见的图表类型。它所生成的图表交互性很强,鼠标放 上去时会动态显示值。除此之外,它也具有相当高的可定制性,可设置图表的文字、颜色和要显示/隐藏的元素等。当然更重要的一点是,虽然它使用了 HTML5,但是依然支持IE6浏览器。
28. JSXGraph

JSXGraph 是一个支持各种浏览器的交互式几何图库绘制。JSXGraph 使用 SVG 和 VML。
29. Rickshaw

Rickshaw 是一个用于绘制时序图的简单 jS 库,基于 Mike Bostock’s delightful D3 库构建。
30. rGraph

RGraph 是基于HTML5 canvas标签的HTML5 canvas图形库,支持 20 种不同的可视化类型。使用 canvas 标签,RGraph 创建“HTML5 图表”,意味着更快的 web 页面加载和更少的 web 服务器加载。这能帮助减小 web 页面的大小,低能耗和更快的浏览速度。
31. Fusion Chart

FusionCharts Suite XT 是个专业的 JavaScript图表库,能创建任何类型的图表。它创建的图表都是可以进行完全自定义的,标签,字体,边界等等,都可以进行修改。它有很强的交互功能,有许多信息提示,可 点击的 legend 关键字,还有 dril-down,缩放/滚动 和单击打印图表功能。
32. Graph Dracula

Dracula 是用一系列的工具来显示和布局互动图表,包括各种相关的算法。它只是纯 JavaScript 和 SVG ,并无 Flash,Java,其他插件。它非常容易使用,用户可以很简单的自定义任意的元素。
33. Bluff

Bluff 是个 JavaScript 的 Ruby 的 Gruff graphing library端口。它支持所有 Gruff 的特性,但是有着最小的依赖。用户只需要运行一个第三方脚本: JS.Class 副本(压缩后只有 2.6kB ) 和 Google 的 ExCanvas 副本,用来支持 IE 中的 canvas。这两个脚本在 Bluff 中都有下载。Bluff 自身压缩后大小大概有 11KB 。
34. Pizza Pie Chart

Pizza Pie Charts 是个响应式饼图图表,基于 Adobe Snap SVG 框架,通过 HTML 标记和 CSS 来替代 JavaScript 对象,更容易集成各种先进的技术。
35. jGraph

HTML5 图表组件,完全支持l IE 6-8 和触屏设备。 JGraph 自2001年来就一直提供最先进的图表软件组件,是第一个流行的 JGraph Swing 库。然后在 2005 年走在时代的前沿开发 mxGraph。

C. 求 wavesurfer.js 波形生成数据

机状态时关机。原因:电池性能较差。因为手机刚开机

D. 避雷器检测器里有一块石头是什么

有接线端子的是避雷器,没有接线端子的是绝缘子;通俗点讲,你看头上有一块竖着的钢板的就是避雷器

E. window.clipboardData.getData 有几种参数类型。除了getdta('text') 还有什么 Javascript里面的知识、

Syntax
sRetrieveData = object.getData(sDataFormat)

Parameters
sDataFormat Required. String that specifies one of the following data format values:
TextRetrieves data formatted as text.
URLRetrieves data formatted as a URL.
综上所述:有url和text 两种
url是通过dataTransfer从剪贴板 获取
text是通过clipboardData 从剪贴板获取
<HEAD>
<SCRIPT>
var sAnchorURL;
function InitiateDrag()
/* setData 参数告诉源对象将数据传送为 URL 并提供
路径。*/
{
event.dataTransfer.setData("URL", oSource.href);
}
function FinishDrag()
/* 传递给 getData 的参数告诉目标对象所期望的数据
格式。*/
{
sAnchorURL = event.dataTransfer.getData("URL");
oTarget.innerText = sAnchorURL;
}
</SCRIPT>
</HEAD>
<BODY>
<A ID=oSource HREF="about:Example_Complete" onclick="return(false)"
ondragstart="InitiateDrag()">测试锚</A>
<SPAN ID=oTarget ondragenter="FinishDrag()">将链接拖曳到这里</SPAN>
</BODY>

F. 避雷器放电计数器检测仪的作用是什么

避雷器放电计数器检测仪适用于各种JS8,JS9及其它JS型号避雷器的放电动作计数器动作情况检测。由于密封不良,动作计数器在运行过程中可能进入潮气或水分,使内部元件锈蚀,导致计数器不能正常动作,所以《规程》规定,每年应检测一次。
技术指标
输出电流波形:8/20μs
电流辐值:>100A
输入电源:AC200(1+5%)V

G. 在电脑中的后缀名inf、dll、js、db、chk、lnk是什么意思

A 对象代码库文件
AAM Authorware shocked文件
AAS Authorware shocked包
ABF Adobe二进制屏幕字体
ABK CorelDRAW自动备份文件
ACE Ace压缩档案格式
ACL CorelDRAW 6键盘快捷键文件
ACM Windows系统目录文件
ACP Microsoft office助手预览文件
ACR 美国放射医学大学文件格式
ACT Microsoft office助手文件
ACV OS/2的驱动程序,用于压缩或解压缩音频数据
AD After Dark屏幕保护程序
ADA Ada源文件(非-GNAT)
ADB Ada源文件主体(GNAT);HP100LX组织者的约定数据库
ADD OS/2用于引导过程的适配器驱动程序
ADF Amiga磁盘文件
ADI AutoCAD设备无关二进制绘图仪格式
ADM After Dark多模块屏幕保护;Windows NT策略模板
ADP FaxWork用于传真调制解调器的交互安装文件;Astound Dynamite文件
ADR After Dark随机屏幕保护;Smart Address的地址簿
ADS Ada源文件说明书(GNAT)
AFM Adobe的字体尺度
AF2,AF3 ABC的FlowChat文件
AI Adobe Illustrator格式图形
AIF,AIFF 音频互交换文件,Silicon Graphic and Macintosh应用程序的声音格式
AIFC 压缩AIF
AIM AOL即时信息传送
AIS ACDSee图形序列文件;Velvet Studio设备文件
ANT SimAnt For Windows中保存的游戏文件
API Adobe Acrobat使用的应用程序设计接口文件
APR Lotus Approach 97文件
APS Microsoft Visual C++文件
ARC LH ARC的压缩档案文件
ARI Aristotle声音文件
ARJ Robert Jung ARJ压缩包文件
ART Xara Studio绘画文件;Canon Crayola美术文件;Clip Art文件格式;另一种光线跟踪格式;AOL使用的用Johnson—Grace压缩算法压缩的标记文件
ASO Astound Dynamite对象文件
ASP 动态网页文件;ProComm Plus安装与连接脚本文件;Astound介绍文件
AST Astound多媒体文件;ClarisWorks“助手”文件
ASV DataCAD自动保存文件
ASX Cheyenne备份脚本文件;Microsoft高级流媒体重定向器文件,视频文件
ATT AT< Group 4位图文件
ATW 来自个人软件的Any Time Deluxe For Windows个人信息管理员文件
AU Sun/NeXT/DEC/UNIX声音文件;音频U-Law(读作“mu-law”)文件格式
AVB Computer Associates Inoculan反病毒软件的病毒感染后文件
AVI Microsoft Audio Video Interleave电影格式
AVR Audio Visual Research文件格式
AVS 应用程序可视化格式
AWD FaxVien文档
AWR Telsis数字储存音频文件扩展名格式
Axx ARJ压缩文件的分包序号文件,用于将一个大文件压至几个小的压缩包中(xx取01-99的数字)
A3L Authorware 3.x库文件
A4L Authorware 4.x库文件
A5L Authorware 5.x库文件
A3M,A4M Authorware Macintosh未打包文件
A4P Authorware无运行时间的打包文件
A3W,A4W,A5W 未打包的Authorware Windows文件
BAK 备份文件
BAS BASIC源文件
BAT 批处理文件
BDF West Point Bridger Designer文件
BFC Windows 95 Briefcase文档
BG Backgammon For Windows下的游戏文件
BGL Microsoft Flight Simulator(微软飞行模拟器)的视景文件
BI 二进制文件
BIF Group Wise的初始化文件
BIFF XLIFE 3D格式文件
BIN 二进制文件
BK,BK$ 有时用于代表备份版本
BKS IBM BookManager Read书架文件
BMK 书签文件
BMP Windows或OS/2位图文件
BMI Apogee BioMenace数据文件
BOOK Adobe FrameMaker Book文件
BOX Lotus Notes的邮箱文件
BPL Borlard Delph 4打包库
BQY BrioQuery文件
BRX 用于查看多媒体对象目录的文件
BSC MS Developer Studio浏览器信息文件
BSP Quake图形文件
BS1 Apogee Blake Stone数据文件
BS_ Microsoft Bookshelf Find菜单外壳扩展名
BTM Norton 应用程序使用的批处理文件
BUD Quicken的备份磁盘
BUN CakeWalk 声音捆绑文件(一种MIDI程序)
BW SGI黑白图像文件
BWV 商业波形文件
BYU BYU的电影文件格式
B4 Helix Nuts and Bolts文件
C C代码文件
C0l 台风波形文件
CAB Microsoft压缩档案文件
CAD Softdek的Drafix CAD文件
CAL CALS压缩位图;日历计划表数据
CAM Casio照相机格式
CAP 压缩音乐文件格式
CAS 逗号分开的ASCⅡ文件
CAT Quicken使用 的IntellCharge分类文件
CB Microsoft干净引导文件
CBI 二进制卷格式文件(用于IBM大型机系统)
CC Visual dBASE用户自定义类文件
CCA cc:邮件文件
CCB Visual Basic动态按钮配置文件
CCF 多媒体查看器配置文件,用于OS/2
CCH Corel图表文件
CCM Lotus cc:邮箱(例如“INBOX.CCM”)
CCO CyberChat数据文件
Microsoft Visual FoxPro索引文件
CEL CIMFast事件语言文件
CER 证书文件(MIME x-x509-ca-cert)
CFB Compton的多媒文件
CFG 配置文件
CFM CotdFusion模板文件;Visual dBASE Windows用户定制表单
CGI 公共网关接口脚本文件
CGM 计算机图形元文件
CH OS/2配置文件
CHK 由Windows磁盘碎片整理器或磁盘扫描保存的文件碎片
CHM 编译过的HTML文件
CHR 字符集(字体文件)
CHP Ventura Publisher章节文件
CHT ChartViem文件;Harvard Graphics矢量文件
CIF Adaptec CD 创建器 CD映像文件
CIL Clip Gallery下载包
CIM SimCity 2000文件
CIN OS/2改变控制文件用于跟踪INI文件中的变化
CK1 iD/Apogee Commander Keen 1数据文件
CK2 iD/Apogee Commander Keen 2数据文件
CK3 iD/Apogee Commander Keen 3数据文件
CK4 iD /Apogee Commander Keen 4数据文件
CK5 iD /Apogee Commander Keen 5数据文件
CK6 iD /Apogee Commander Keen 6数据文件
CLASS Java类文件
CLL Crick Software Clicker文件
CLP Windows 剪贴板文件
CLS Visual Basic类文件
CMD Windows NT,OS/2的命令文件;DOS CD/M命令文件;dBASEⅡ程序文件
CMF Corel元文件
CMG Chessmaster保存的游戏文件
CMP JPEG位图文件;地址文档
CMV Corel Move动画文件
CMX Corel Presentation Exchange图像
CNF Telnet,Windows和其他其内格式会发生改变的应用程序使用的配置文件
CNM Windows应用程序菜单选项和安装文件
CNQ Compuworks Design Shop文件
CNT Windows(或其他)系统用于帮助索引或其他目的内容文件
COB TrueSpace 2对象文件
COD Microsoft C编译器产生的可显示机器码/汇编代码文件,其中附有源C代码作为注释
COM 命令文件(程序)
CPD Corel Print Office文件(图形)
CPD,CPE 传真覆盖文档
CPI Microsoft MS-DOS代码页信息文件
CPL 控制面板扩展名,Corel颜色板
CPO Corel打印存储文件
CPP C++代码文件
CPR Corel提供说明书文件
CPT Corel 照片-绘画图像
CPX Corel Presentation Exchange压缩图形文件
CRD Windows Cardfile文件
CRP Corel 提供的运行时介绍文件;Visual dBASE自定义报表文件
CRT 认证文件
CSC Corel脚本文件
CSP PC Emcee On_Screen图像
CSS 瀑布式表格文件
CST Macromedia Director Cast文件
CSV 逗号分隔的值文件
CT Scitex CT位图文件;Paint Shop Pro Grapic编辑器文件
CTL 通常用于表示一个包含控件信息的文件;FaxWork用它来保持有关每个传真收到或发出的信息
CUE Microsoft提示牌数据文件
CUR Windows光标文件
CUT Dr Halo位图文件
CV Corel版本的档案文件;Microsoft CodeView信息屏幕文件
CWK ClarisWorks数据文件.
CWS ClarisWorks模块
CXT Macromedia Director受保护的(不可编辑的)投影文件
CXX C++源代码文件
DAT 数据文件;WrodPerfect合并数据文件;用于一些MPEG格式的文件
DB Borland的Paradox 7表
DBC Microsoft Visual FoxPro数据库容器文件
DBF dBASE文件,一种由Ashton-Tate创建的格式,可以被ACT!、Lipper、FoxPro、Arago、Wordtech、Xbase和类似数据库或与数据库有关产品识别;可用数据文件(能被Excel 97打开);Oracle 8.1.x表格空间文件
DBX DataBearn图像;Microsoft Visual FoxPro表格文件
DCM DCM模块格式文件
DCR 冲击波文件
DCS 桌面颜色分隔文件
DCT Microsoft Visual FoxPro数据库容器
DCU Delphi编译单元文件
DCX Microsoft Visual FoxPro数据库容器;基于PCX的传真图像;宏
DC5 DataCAD绘图文件
DDF Btrieve或Xtrieve数据定义文件,它包含用于描述Btrieve或Xtrieve文件的元数据
DDIF Digital Equipment或 Compaq格式,用于保存他们图像与字处理文档
DEF SmartWareⅡ数据文件;C++模块定义文件
DEFI Oracle 7 卸载脚本文件
DEM 用于表示数字高度模型的USGS基准的文件
DER 认证文件
DEWF Macintosh Sound Cap/Sound Edit录音设备格式
DGN Macintosh 95 CAD绘图文件
DIB 设备无关位图
DIC 目录
DIF 可进行数据互换的电子表格
DIG DigiLink格式;Sound DesignerⅠ音频文件
Word Star文档、Word Perfect文档、Microsoft Word文档;DisplayWrite文档
DOT Microsoft Word文档模板
DPL Borland Delph3压缩库
DPR Borland Delphi工程头文件
DRAW Acorn的基于对象的矢量图像文件
DRV 驱动程序
DRW Micrografx Designer/Draw;Pro/E绘画文件
DSF Micrografx Designer VFX文件
DSG DOOM保存的文件
DSM Dynamic Studio音乐模块(MOD)文件
DSP Microsoft Developer Studio工程文件
DSQ Corel QUERY(查询)文件
DST 刺绣机图形文件
DSW Microsoft Developer Studio工作区文件
DTA Word Bank(世界银行)的STARS数据文件
DTD SGML文档类型定义(DTD)文件
DTED 地面高度数字数据(图形的数据格式)文件
DTF Symantec Q&A相关的数据库数据文件
DTM DigiTrakker模块文件
DUN Microsoft拔号网络导出文件
DV 数字视频文件(MIME)
DWD DiamondWare数字化文件
DWG AutoCAD工程图文件;AutoCAD或Generic CADD老版本的绘图格式
DXF 可进行互交换的绘图文件格式,二进制的DWG格式的文本表示;数据交换文件
DXR Macromedia Director受保护(不可编辑)电影文件
D64 Commodore的64位模拟磁盘图像文件
EDA Ensoniq ASR磁盘映像
EDD 元素定义文档(FrameMaker+SGML文档)
EDE Ensoniq EPS磁盘映像
EDK Ensoniq KT磁盘映像
EDQ Ensoniq SQ1/SQ2/Ks32磁盘映像
EDS Ensoniq SQ80磁盘映像
EDV Ensoniq VFX-SD磁盘映像
EFA Ensoniq ASR文件
EFE Ensoniq EPS文件
EFK Ensoniq KT文件
EFQ Ensoniq SQ1/SQ2/Ks32文件
EFS Ensoniq SQ80文件
EFV Ensoniq VFX-SD文件
EMD ABT扩展模块
EMF Windows增强元文件
EML Microsoft Outlook Express邮件消息(MIME RTC822)文件
ERR 当RobooHELP帮助编译器企图编译一个帮助系统源文件时用来存储错误消息的文件
EPX ERWin文件
ESPS ESPS音频文件
EUI Ensoniq ESP家族的压缩磁盘映像
EVY 特使文档
EWL Microsoft Encarta文档
EXC Microsoft Word禁止字字典
FBK Navison 金融备份
FCD 虚拟CD-ROM
FDB Navison 金融数据库
FDF Adobe Acrobat表单文档文件
FEM CADRE有限元素网络文件
FFA,FFL,FFO,FFK Microsoft快速查找文件
FFF GUS PnP银行文件格式
FFT 最终格式文本(IBM的DCA一部分)
FH3 Als Freehand 3绘图文件
FIF Fractal图像文件
FIG REND386/AVRIL使用的文件格式
FITS CCD照相机图像;灵活图像传输系统
FLA Macromedia Flash电影
FLC Autodesk FLIC动画文件
FLF Corel Paradox产生的格式:Navison Financials许可文件;OS/2驱动程序文件
PLI Autodesk FLIC动画
FLT StarTrekker音乐模块(MOD)文件;MultiGen Inc的Open Flight使用的文件格式;Corel过滤器文件
FM Adobe FrameMaker文档
FMB Oracle4.0版或以后版本表单的二进制源代码文件
FML 文件镜象列表(GetRight)
FOT 字体相关文件
FP FileMaker Pro文件
FP1 Flying Pigs for Windows数据文件
FP3 FileMaker Pro文件
FPT FileMaker Pro文件;Microsoft Fox Pro备注字体文件
FPX FlashPix位图
FRM 表单;Frame Maker或Frame Builder文档;Oracle可执行表(3.0版或早期版本);Visual Basic表单;WordPerfect Merge表单;DataCAD标志报表文件
FRT Microsoft FoxPro报表文件
FRX Visual Basic表单文本;Microsoft FoxPro报表文件
FSF fPrint Audit Tool文件格式
FSL Borland的Paradox 7表单;Corel Paradox保存的表单
FSM Parandoyle示例格式
FT Lotus Notes全文本索引
FTG 全文本搜索组文件,由Windows帮助系统查找时产生——可以删除,并在需要时重建起来
FTS 全文本搜索引文件,由Windows帮助系统查找时产生
FW2 Framework Ⅱ文件
FW3 Framework Ⅲ文件
FW4 Framework Ⅳ文件
FXP 经Microsoft FoxPro编译的源文件
FZB Casio FZ-1银行转储
FZF Casio FZ-1完全转储
FZV Casio FZ-1声音转储
G721 Raw CCITT G.721 $bit ADPCM格式数据
G723 Raw CCITT G.723 3或5bit ADPCM格式数据
GAL Corel多媒体管理器相集
GCD Generic CADD绘画文件(后续版本)
GEM GEM元文件
GEN Ventura产生的文本文件
GetRight GetRight未完成的下载文件
GFC Patton&Patton FlowCharting 4 flowchart文件
GFI,GFX Genigraphics图形链接表示文件
景数据产生地图过程的格式文件,通常应用于形成地图工程—CHIPS(copenhagen image processing system)使用这些文件
GRF Grapher(Golden Software公司)图形文件
GRP 程序管理组
GSM Raw GSM 6.10音频流;Raw“byte aligned(比特对齐的)” GSM 6.10音频流;US Robotics语音调制解调器
GTK Graoumftracker(老)音乐模块(MOD)文件
GT2 Graoumftracker(新)音乐模块(MOD)文件
GWX,GWZ Cenigraphis图形链接介绍文件
言绘图文件
HH 映射文件,包括一些话题ID和在帮助文件系统中话题的映射数字—允许运行中应用程序发送给用户合适的上下文帮助话题
HLP 帮助文件;Date CAD Windows帮助文件
HOG Lucas Arts的Dark Forces WAD文件
HPJ Visual Basic帮助工程
HPP C++程序头文件
HQX Macintosh BinHex 4.0文件
HST 历史文件
HT HyperTerminal(超级终端)
HTM,HTML 超文本文档
HTT Microsoft超文本模板
HTX 扩展HTML模板
HXM Descent2 HAM文件扩展
ICA Citrix文件
ICB Targa位图文件
ICC Kodak打印机格式文件
ICL 图标库文件
ICM 图形颜色匹配配置文件
ICO Windows图标
IDB MSDev中间层文件
IDD MIDI设备定义
IDF MIDI设备定义(Windows 95需要的文件)
IDQ Internet数据查询文件
IDX Microsoft FoxPro相关数据库索引文件;Symantec Q&A相关数据库索引文件;Microsoft Outlook Express文件
IFF 交换格式文件;Amiga ILBM
IGES 初始图形交换说明文件
压缩磁盘映像文件
INC 汇编语言或动态服务器包含文件
INF 信息文件
INI 初始化文件;MWave DSP Synth的“nwsynth.ini” GMS安装;Cravis Ultrasound bank安装
INP Oracle 3.0版或早期版本的表单源代码
INRS INRS远程通信声频
INS InstallShield安装脚本;X-Internet签字文件;Ensoniq EPS字簇设备;Cell/ⅡMAC/PC抽样设备
INT 中间代码,当一个源程序经过语法检查后编译产生一个可执行代码
IOF Findit文档
IQY Microsoft Internet查询文件
系统设备
ITS 脉冲跟踪系统抽样,Internet文档位置
IV Open Inventor中使用的文件格式
IVD 超过20/20微观数据维数或变量等级文件
IVP 超过20/20的用户子集配置文件
IVT 超过20/20表或集合数据文件
IVX 超过20/20微数据目录文件
IW Idlewild屏幕保护程序
的Jill of the Jungle数据文件
JPE,JPEG,JPG JPEG图形文件
JS JavaScript源文件
JSP HTML网页,其中包含有对一个Java servlet的参考
JTF JPEG位图文件
K25 Kurzweil 2500抽样文件
KAR 卡拉OK MIDI文件(文本+MIDI)
KDC Kodak光增强器
KEY DataCAD图标工具条文件
KFX KoFak Group 4图像文件
KIZ Kodak数字明信片文件
KKW RoboHELP帮助工程索引设计器中与主题无关的K开头的所有关键字
Microsoft FoxPro标签文件
LDB Microsoft Access加锁文件
LDL Corel Paradox分发库
LEG Legacy文档
LES Logitech娱乐系统游戏配置文件(与REC文件一样)
LFT 3D Studio(DOS)放样文件
LGO Paintbrush(Microsoft画图应用程序)的徽标文件
LHA LZH更换文件后缀
LIB 库文件
LIN DataCAD线型文件
LIS 结构化查询报告(SQR)程序产生的输出文件
LLX Laplink交换代理
LNK Windows快捷方式文件
LOG 日志文件
LPD Helix Nut和Bolt文件
LRC Intel可视电话文件
LSL Corel Paradox保存的库文件
LSP AutoLISP、CommonLISP和其他LISP语言文件
LST 列表文件
LU ThoughtWing库单元文件
LVL Parallax Software的 Miner Descent/D2 Level扩展
LWLO Lightwave分层对象文件
LWOB Lightwave对象文件
LWP Lotus WordPro 96/97文件
LWSC Lightwave视景文件
LYR DataCAD层文件
LZH LH ARC压缩档案
LZS Skyroads数据文件
M1V MPEG相关文件(MIME“mpeg”类型)
M3D Corel Motion 3D动画文件
M3U MPEG URL(MIME声音文件)
MAC MacPaint图像文件
MAD Microsoft Access模块文件
MAF Microsoft Access表单文件
MAG 在一些日本文件中发现的图形文件格式
MAGIC 魔力邮件监视器配置文件
MAK Visual Basil或Microsoft Visual C++工程文件
MAM Microsoft Access宏
MAN UNIX手册页输出
MAP 映射文件;Duke Nukem 3D WAD游戏文件
MAQ Microsoft Access查询文件
MAR Microsoft Access报表文件
MAS Lotus Freelance Graphics Smart Master文件
MAT Microsoft Access表;3D Studio MAX材料库
MAUD MAUD抽样格式
MAX Kinetx的3DStudio MAX文件;该格式用于一个3D场景文件;Paperport文件;OrCAD设计文件
MAZ Hover迷路数据;Division的dVS/dVISE使用的文件格式
MB1 Apogee Monster Bash数据文件
MBOX Berkeley Unix邮箱格式
MBX Microsoft Outlook保存email格式;Eudora邮箱
MCC Dailerl0呼叫卡
MCP Metrowerks CodeWarrior工程文件
MCR DataCAD键盘宏文件
MCW Microsoft Word的Macintosh文档
MDA Microsoft Access内抽入器;Microsoft Access 2.0版及其后续版本的工作组事件
MDB Microsoft Access数据库
MDE Microsoft Access MDE文件
MDL 数字跟踪器音乐模块(MOD)文件;Quake模 块文件
MDN Microsoft Access空数据库模板
MDW Microsoft Access工作组文件
MDZ Microsoft Access向导模板文件
MED 音乐编辑器,OctaMED音乐模块(MOD)文件
MER 电子表格/数据库数据交换格式;FileMaker、Excel及其他软件能识别
MET 表示管理器元文件
MFG Pro/ENGINEER制造文件
MGF 在材料与几何学里的文件格式
MHTM,MHTML MHTML文档(MIME)
MI 杂项
MIC Microsoft Image Composer文件
MID MIDI音乐
MIF Adobe FramMaker交换格式
MIFF 与机器无关格式文件
MIM,MIME,MME Internet邮件扩展格式的多用途文件,经常作为发送e-mail时在AOL里附件而创建的文件;在一个多区MIM文件里的文件能用WinZip或其他类似程序打开
MLI 3D Studio的材料库格式文件
MMF Meal Master格式;一个处方类格式;Microsoft邮件文件
MMG 超过20/20表或集会数据文件
MMM Microsoft多媒体电影
MMP Mindmapor Mind Manager文件
MN2 Descent2任务文件
MND,MNI Mandelbort for Windows
MNG 多映像网络图形
MNT,MNX Microsoft FoxPro菜单文件
MNU Visual dBASE菜单文件;Intertel Systems Interact菜单文件
MOD Fast Tracker、Star Trekker、Noise Tracker(等等)音乐模块文件;Microsoft多计划电子表格;Amiga/PC磁道文件
MOV QuickTime for Windows电影
MP2 第二层MPEG音频文件
MP3 第三层MPEG音频文件
MPA MPEG相关文件,MIME“mpeg类型”
MPE,MPEG,MPG MPEG动画文件
MPP Microsoft工程文件;CAD绘图文件格式
MPR Microsoft FoxPro菜单(已编译)
MRI MRI扫描文件
MSA 魔术阴影档案
MSDL Manchester的场景描述语言
MSG Microsoft邮件消息
MSI Windows 安装器包
MSN Microsoft网络文档;Descent Mission文件
MSP Microsoft Paint(画图)位图文件;Windows Installer路径文件
MST Windows 安装器传输文件
MTM Multi 跟踪器音乐模块(MOD)文件
MUL Ultima在线
MUS 音乐
MUS10 Mus10声音
MVB Microsoft多媒体查看器文

H. quartus ii 仿真通过 但没波形,怎么回事程序实现测频功能

是怎么没波形了? 找不到引脚还是新建的波形文件 仿真不对?,。、
编译通过后是没波形的,得新建一个波形文件, 然后按alt +1看那个 list过滤是不是选的 all。

I. 将正弦波变矩形波能在单片机中处理吗

首先根据输出波形的频率和幅值进行编码,存储在单片机的ROM里,
然后以一定的时间间隔依次将这些数字量送往D/A进行转换输出,这样,只要循环送数,在D/A的双极性输出端就可以得到波形波形。

采用单片机片内的振荡器、上电复位和外部硬件看门狗电路。

至于波形编码,网上资料很多,下面是硬件电路设计的描述(这个是网上找的):
输出两路幅值相等相位相差90°的正弦波形作为物体偏转测量的基准波形;另一路输出测角波形,该波形相对基准波形的相位反映角偏差的方向、幅值反映角偏差量。专用波形发生器就是模拟角位移输出波形的装置,用来进行后续解调电路以及功放电路的检测。它以单片机为核心,经过D/A转换和放大电路的处理,最后输出反应弹体姿态的基准波形和测角波形。

软件方面的编程:
#include "reg52.h"
#define uchar unsigned char
#define uint unsigned int

unsigned char code table[]=; //共阴极0~9对应16进制数
//=============正弦波数据====================
uchar code sin_tab[256]=
{
0x80, 0x83, 0x86, 0x89, 0x8c, 0x8f, 0x92, 0x95, 0x98, 0x9c, 0x9f, 0xa2, 0xa5, 0xa8, 0xab, 0xae,
0xb0, 0xb3, 0xb6, 0xb9, 0xbc, 0xbf, 0xc1, 0xc4, 0xc7, 0xc9, 0xcc, 0xce, 0xd1, 0xd3, 0xd5, 0xd8,
0xda, 0xdc, 0xde, 0xe0, 0xe2, 0xe4, 0xe6, 0xe8, 0xea, 0xec, 0xed, 0xef, 0xf0, 0xf2, 0xf3, 0xf4,
0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0xfb, 0xfc, 0xfc, 0xfd, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfd, 0xfc, 0xfc, 0xfb, 0xfa, 0xf9, 0xf8, 0xf7,
0xf6, 0xf5, 0xf3, 0xf2, 0xf0, 0xef, 0xed, 0xec, 0xea, 0xe8, 0xe6, 0xe4, 0xe3, 0xe1, 0xde, 0xdc,
0xda, 0xd8, 0xd6, 0xd3, 0xd1, 0xce, 0xcc, 0xc9, 0xc7, 0xc4, 0xc1, 0xbf, 0xbc, 0xb9, 0xb6, 0xb4,
0xb1, 0xae, 0xab, 0xa8, 0xa5, 0xa2, 0x9f, 0x9c, 0x99, 0x96, 0x92, 0x8f, 0x8c, 0x89, 0x86, 0x83,
0x80, 0x7d, 0x79, 0x76, 0x73, 0x70, 0x6d, 0x6a, 0x67, 0x64, 0x61, 0x5e, 0x5b, 0x58, 0x55, 0x52,
0x4f, 0x4c, 0x49, 0x46, 0x43, 0x41, 0x3e, 0x3b, 0x39, 0x36, 0x33, 0x31, 0x2e, 0x2c, 0x2a, 0x27,
0x25, 0x23, 0x21, 0x1f, 0x1d, 0x1b, 0x19, 0x17, 0x15, 0x14, 0x12, 0x10, 0xf, 0xd, 0xc, 0xb ,
0x9, 0x8, 0x7, 0x6, 0x5, 0x4, 0x3, 0x3, 0x2, 0x1, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0 ,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x1, 0x2, 0x3, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8 ,
0x9, 0xa, 0xc, 0xd, 0xe, 0x10, 0x12, 0x13, 0x15, 0x17, 0x18, 0x1a, 0x1c, 0x1e, 0x20, 0x23,
0x25, 0x27, 0x29, 0x2c, 0x2e, 0x30, 0x33, 0x35, 0x38, 0x3b, 0x3d, 0x40, 0x43, 0x46, 0x48, 0x4b,
0x4e, 0x51, 0x54, 0x57, 0x5a, 0x5d, 0x60, 0x63, 0x66, 0x69, 0x6c, 0x6f, 0x73, 0x76, 0x79, 0x7c,
};
//三角波信号数据表
uchar code thr_tab[32]=
{
0x00,0x0f,0x1f,0x2f,0x3f,0x4f,0x5f,0x6f,0x7f,0x8f,0x9f,0xaf,0xbf,0xcf,0xdf,0xef,
0xff,0xef,0xdf,0xcf,0xbf,0xaf,0x9f,0x8f,0x7f,0x6f,0x5f,0x4f,0x3f,0x2f,0x1f,0x0f
};
//-------------------------------------------------------------------------------------------------------
//锯齿波信号数据表
uchar code jc_tab[33]=
{
0x00,0x08,0x0f,0x18,0x1f,0x28,0x2f,0x38,0x3f,0x48,0x4f,0x58,0x5f,0x68,0x6f,0x78,
0x7f,0x88,0x8f,0x98,0x9f,0xa8,0xaf,0xb8,0xbf,0xc8,0xcf,0xd8,0xdf,0xe8,0xef,0xf8,0xff
};
//数码管位选控制口定义
sbit LED4=P2^7;
sbit LED3=P2^6;
sbit LED2=P2^5;
sbit LED1=P2^4;
//按键口申明
sbit S1=P2^3;
sbit S2=P2^2;
sbit S3=P2^1;
unsigned char tabArry[4]; //保存显示数据
char flag=1; //按键标志,当flag=1时表示没有按下,当flag=0时表示有按键按下
int keycount=0; //按键计数
unsigned char waveth,wavetl; //用于对定时器付值
unsigned int frecount=100; //频率计数
unsigned int mbjs; //码表计数,共采32个点
//毫秒延时程序
void delayms(int ms)
{
uchar i;
while(ms--)
{
for(i=250;i>0;i--);
}
}

//键盘扫描
void keyscan()
{
if(flag==1)
{
if(S3==0) //用S3切换波形
{
delayms(2); //延时去抖
if(S3==0) //按键计数,便于切换波形
{
flag=0;
keycount++;
if(keycount>=4) keycount=0; //四种波形计数4次
}
}

if(S2==0) //频率加1 处理
{
delayms(2);
if(S2==0)
{
flag=0;
switch(keycount)
{
case 0: //正弦波频率加1
frecount++;
if(frecount>1000) frecount=0;
break;
case 1: //三角波频率加1
frecount++;
if(frecount>1000) frecount=0;
break;
case 2: //锯齿波频率加1
frecount++;
if(frecount>1000) frecount=0;
break;
case 3: //方波频率加1
frecount++;
if(frecount>1000) frecount=0;
break;
}
waveth=(65536-57603/frecount)/256; //重新计算初值
wavetl=(65536-57603/frecount)%256;
}
}
if(S1==0) //频率减1 处理
{
delayms(2);
if(S1==0)
{
flag=0;
switch(keycount)
{
case 0: //正弦波频率减1
frecount--;
if(frecount<0) frecount=999;
break;
case 1: //三角波频率减1
frecount--;
if(frecount<0) frecount=999;
break;
case 2: //锯齿波频率减1
frecount--;
if(frecount<0) frecount=999;
break;
case 3: //方波频率减1
frecount--;
if(frecount<0) frecount=999;
break;
}
waveth=(65536-57603/frecount)/256; //重新计算初值
wavetl=(65536-57603/frecount)%256;
}
}

}
if(S1!=0 && S2!=0 && S3!=0) flag=1; //判断按键是否弹起

}
//数据分位
void change(char wavetype,unsigned int frequency)
{
tabArry[0]=wavetype; //显示字母,表示波形类型
tabArry[1]=frequency%1000/100; //百位
tabArry[2]=frequency%100/10; //十位
tabArry[3]=frequency%10; //个位
}
//显示函数
void display()
{

switch(keycount)
{
case 0: //显示A和正弦波的频率
change(0x0a,frecount);
break;
case 1: //显示b和三角波的频率
change(0x0b,frecount);
break;
case 2: //显示C和锯齿波的频率
change(0x0c,frecount);
break;
case 3: //显示d和方波的频率
change(0x0d,frecount);
break;
}

P0 = table[tabArry[0]]; //送最高位段码
LED1=0; //打开对应的位选控制口
delayms(2); //显示延时
LED1=1; //关闭对应的位选控制后显示下一位

P0 = table[tabArry[1]];
LED2=0;
delayms(2);
LED2=1;

P0 = table[tabArry[2]];
LED3=0;
delayms(2);
LED3=1;

P0 = table[tabArry[3]];
LED4=0;
delayms(2);
LED4=1;
}
void Timerinit()
{
TMOD=0x01; //定时器0方式1

//定时器初值计算公式:X=65536-(T/T0)=65536-(f0/f/32)
TH0=waveth=(65536-57603/frecount)/256; //定时器初值 22.1184MHz
TL0=wavetl=(65536-57603/frecount)%256;
EA=1; //开总中断
ET0=1; //开定时器0中断
TR0=1; //定时器0开始计数
}
//主函数
void main()
{
Timerinit(); //定时器初始化
while(1)
{
keyscan(); //扫描按键
display(); //显示程序
}
}

void Timer0() interrupt 1
{
TH0=waveth; //重新赋初值
TL0=wavetl;
if (keycount==0) //输出正弦波
{
P1 = sin_tab[mbjs];
mbjs+=8; //256点,每隔8点输出一个数据
if(mbjs>=256)
{
mbjs=0;
}
}
else if(keycount==1) //输出三角波
{
P1 = thr_tab[mbjs];
mbjs++;
if(mbjs>=32)
{
mbjs=0;
}
}
else if(keycount==2) //输出锯齿波
{
P1 = jc_tab[mbjs];
mbjs++;
if(mbjs>=32)
{
mbjs=0;
}
}
else if(keycount==3) //输出方波
{
mbjs++;
if(mbjs>=32)
{
mbjs=0;
}
else if(mbjs<16) P1=0xff;
else P1=0x00;

}
}

摘 要
函数信号发生器是一种能够产生多种波形,如三角波、锯齿波、矩形波(含方波)、正弦波的电路。函数信号发生器在电路实验和设备检测中具有十分广泛的用途。通过对函数波形发生器的原理以及构成分析,可设计一个能变换出三角波、正弦波、方波的函数波形发生器。
本课题采用由集成运算放大器与晶体管差分放大器共同组成的方波—三角波—正弦波函数发生器的设计方法,先通过比较器产生方波,再通过积分器产生三角波,最后通过差分放大器形成正弦波。波形变换的原理是利用差分放大器传输特性曲线的非线性。
经过仿真得出了方波、三角波、正弦波、方波——三角波转换及三角波——正弦波转换的波形图。
关键字:函数信号发生器、集成运算放大器、晶体管差分放
设计目的、意义
1 设计目的
(1)掌握方波—三角波——正弦波函数发生器的原理及设计方法。
(2)掌握迟滞型比较器的特性参数的计算。
(3)了解单片集成函数发生器8038的工作原理及应用。
(4)能够使用电路仿真软件进行电路调试。
2 设计意义
函数发生器作为一种常用的信号源,是现代测试领域内应用最为广泛的通用仪器之一。
在研制、生产、测试和维修各种电子元件、部件以及整机设备时,都学要有信号源,由它产生不同频率不同波形的电压、电流信号并加到被测器件或设备上,用其他仪器观察、测量被测仪器的输出响应,以分析确定它们的性能参数。信号发生器是电子测量领域中最基本、应用最广泛的一类电子仪器。它可以产生多种波形信号,如正弦波,三角波,方波等,因而广泛用于通信、雷达、导航、宇航等领域。
设计内容
1 课程设计的内容与要求(包括原始数据、技术参数、条件、设计要求等):
1.1课程设计的内容
(1)该发生器能自动产生正弦波、三角波、方波。
(2)函数发生器以集成运放和晶体管为核心进行设计
(3)指标:
输出波形:正弦波、三角波、方波
频率范围:1Hz~10Hz,10Hz~100Hz
输出电压:方波VP-P≤24V,三角波VP-P=8V,正弦波VP-P>1V;
(4)对单片集成函数发生器8038应用接线进行设计。
1.2课程设计的要求
(1)提出具体方案
(2)给出所设计电路的原理图。
(3)进行电路仿真,PCB设计。
2 函数波形发生器原理
2.1函数波形发生器原理框图

图2.1 函数发生器组成框图
2.2函数波形发生器的总方案
函数发生器一般是指能自动产生正弦波、三角波、方波及锯齿波、阶梯波等电压波形的电路或仪器。根据用途不同,有产生三种或多种波形的函数发生器,使用的器件可以是分立器件 (如低频信号函数发生器S101全部采用晶体管),也可以采用集成电路(如单片函数发生器模块8038)。为进一步掌握电路的基本理论及实验调试技术,本课题采用由集成运算放大器与晶体管差分放大器共同组成的方波—三角波—正弦波函数发生器的设计方法。
产生正弦波、方波、三角波的方案有多种,如首先产生正弦波,然后通过整形电路将正弦波变换成方波,再由积分电路将方波变成三角波;也可以首先产生三角波—方波,再将三角波变成正弦波或将方波变成正弦波等等。本课题采用先产生方波—三角波,再将三角波变换成正弦波的电路设计方法[3]。
由比较器和积分器组成方波—三角波产生电路,比较器输出的方波经积分器得到三角波,三角波到正弦波的变换电路主要由差分放大器来完成。差分放大器具有工作点稳定,输入阻抗高,抗干扰能力较强等优点。特别是作为直流放大器时,可以有效地抑制零点漂移,因此可将频率很低的三角波变换成正弦波。波形变换的原理是利用差分放大器传输特性曲线的非线性。
2.3函数波形发生器各组成部分的工作原理
2.3.1方波发生电路的工作原理
此电路由反相输入的滞回比较器和RC电路组成。RC回路既作为延迟环节,又作为反馈网络,通过RC充、放电实现输出状态的自动转换。设某一时刻输出电压Uo=+Uz,则同相输入端电位Up=+Ut。Uo通过R3对电容C正向充电,如图2.3中实线箭头所示。反相输入端电位n随时间t的增长而逐渐增高,当t趋于无穷时,Un趋于+Uz;但是,一旦Un=+Ut,再稍增大,Uo从+Uz跃变为-Uz,与此同时Up从+Ut跃变为-Ut。随后,Uo又通过R3对电容C反向充电,如图中虚线箭头所示。Un随时间逐渐增长而减低,当t趋于无穷大时,Un趋于-Uz;但是,一旦Un=-Ut,再减小,Uo就从-Uz跃变为+Uz,Up从-Ut跃变为+Ut,电容又开始正相充电。上述过程周而复始,电路产生了自激振荡[4]。
2.3.2方波——三角波转换电路的工作原理
图2.2方波—三角波产生电路
工作原理如下:
若a点断开,整个电路呈开环状态。运算发大器A1与R1、R2及R3、RP1组成电压比较器,C1为加速电容,可加速比较器的翻转。运放的反相端接基准电压,即U-=0,同相输入端接输入电压Uia,R1称为平衡电阻。比较器的输出Uo1的高电平等于正电源电压+Vcc,低电平等于负电源电压-Vee(|+Vcc|=|-Vee|), 当比较器的U+=U-=0时,比较器翻转,输出Uo1从高电平跳到低电平-Vee,或者从低电平Vee跳到高电平Vcc。设Uo1=+ Vcc,则
(2.1)
将上式整理,得比较器翻转的下门限单位Uia_为
(2.2)
若Uo1=-Vee,则比较器翻转的上门限电位Uia+为
(2.3)
比较器的门限宽度:
(2.4)
由以上公式可得比较器的电压传输特性,如图2.3所示。
a点断开后,运放A2与R4、RP2、C2及R5组成反相积分器,其输入信号为方波Uo1,则积分器的输出Uo2为:
(2.5)
时,
(2.6)
时,
(2.7)
可见积分器的输入为方波时,输出是一个上升速度与下降速度相等的三角波,其波形关系如图2.4所示。
a点闭合,即比较器与积分器形成闭环电路,则自动产生方波-三角波。三角波的幅度为:
(2.8)
方波-三角波的频率f为:
(2.9)
由以上两式(2.8)及(2.9)可以得到以下结论:
(1) 电位器RP2在调整方波-三角波的输出频率时,不会影响输出波形的幅度。若要求输出频率的范围较宽,可用C2改变频率的范围,PR2实现频率微调。
(2) 方波的输出幅度应等于电源电压+Vcc。三角波的输出幅度应不超过电源电压+Vcc。
电位器RP1可实现幅度微调,但会影响方波-三角波的频率[3]。

图2.3比较器的电压传输特性

图2.4方波与三角波波形关系

2.3.3三角波---正弦波转换电路的工作原理
如图2.5三角波——正弦波的变换电路主要由差分放大电路来完成。
差分放大器具有工作点稳定,输入阻抗高,抗干扰能力较强等优点。特别是作为直流放大器,可以有效的抑制零点漂移,因此可将频率很低的三角波变换成正弦波。波形变换的原理是利用差分放大器传输特性曲线的非线性[1]。

图2.5 三角波——正弦波的变换电路
分析表明,传输特性曲线的表达式为:
(2.10)
(2.11)
式中
——差分放大器的恒定电流;
——温度的电压当量,当室温为25oc时, ≈26mV。
如果Uid为三角波,设表达式为
(2.12)
式中 Um——三角波的幅度;
T——三角波的周期。
为使输出波形更接近正弦波,由图2.6可见:
(1)传输特性曲线越对称,线性区越窄越好。
(2)三角波的幅度Um应正好使晶体管接近饱和区或截止区。
(3)图2.7为实现三角波——正弦波变换的电路。其中RP1调节三角波的幅度,RP2调整电路的对称性,其并联电阻RE2用来减小差分放大器的线性区。电容C1,C2,C3为隔直电容,C4为滤波电容,以滤除谐波分量,改善输出波形[2]。

图2.6三角波—正弦波变换原理
图2.7三角波—正弦波变换电路

2.4电路的参数选择及计算
2.4.1方波-三角波中电容C1变化(关键性变化之一)
实物连线中,我们一开始很长时间出不来波形,后来将C2从10uf(理论时可出来波形)换成0.1uf时,顺利得出波形。实际上,分析一下便知当C2=10uf时,频率很低,不容易在实际电路中实现。
2.4.2三角波—正弦波部分的计算
比较器A1与积分器A2的元件计算如下:
由式(2.8)得

取 ,则 ,取 ,RP1为47KΩ的点位器。取平衡电阻
由式(2.9)

当 时,取 ,则 ,取 ,为100KΩ电位器。当 时 ,取 以实现频率波段的转换,R4及RP2的取值不变。取平衡电阻 。
三角波—正弦波变换电路的参数选择原则是:隔直电容C3、C4、C5要取得较大,因为输出频率很低,取 ,滤波电容 视输出的波形而定,若含高次斜波成分较多, 可取得较小, 一般为几十皮法至0.1微法。RE2=100欧与RP4=100欧姆相并联,以减小差分放大器的线性区。差分放大器的静态工作点可通过观测传输特性曲线,调整RP4及电阻R*确定。
2.5 总电路图
先通过比较器产生方波,再通过积分器产生三角波,最后通过差分放大器形成正弦波。如图2.5.1所示,

图2.5.1三角波-方波-正弦波函数发生器实验电路

2.6 8038单片集成函数发生器
2.6.1 8038的工作原理
8038由恒流源I1、I2,电压比较器C1、C2和触发器①等组成。其内部原理电路框图和外部引脚排列分别如图2.8和图2.9所示。

图2.8 8038原理框图

图2.9 8038管脚图(顶视图)
1. 正弦波线性调节;2. 正弦波输出;3. 三角波输出;4. 恒流源调节;5. 恒流源调节;6. 正电源;7. 调频偏置电压;8. 调频控制输入端;9. 方波输出(集电极开路输出); 10. 外接电容;11. 负电源或接地;12.正弦波线性调节;13、14. 空脚
在图2.8中,电压比较器C1、C2的门限电压分别为2VR/3和VR/3( 其中VR=VCC+VEE),电流源I1和I2的大小可通过外接电阻调节,且I2必须大于I1。当触发器的Q端输出为低电平时,它控制开关S使电流源I2断开。而电流源I1则向外接电容C充电,使电容两端电压vC随时间线性上升,当vC上升到vC=2VR/3 时,比较器C1输出发生跳变,使触发器输出Q端由低电平变为高电平,控制开关S使电流源I2接通。由于I2>I1 ,因此电容C放电,vC随时间线性下降。当vC下降到vC≤VR/3 时,比较器C2输出发生跳变,使触发器输出端Q又由高电平变为低电平,I2再次断开,I1再次向C充电,vC又随时间线性上升。如此周而复始,产生振荡。若I2=2I1 ,vC上升时间与下降时间相等,就产生三角波输出到脚3。而触发器输出的方波,经缓冲器输出到脚9。三角波经正弦波变换器变成正弦波后由脚2输出。当I1<I2<2I1 时,vC的上升时间与下降时间不相等,管脚3输出锯齿波。因此,8038能输出方波、三角波、正弦波和锯齿波等四种不同的波形。
图2.8中的触发器,当R端为高电平、S端为低电平时,Q端输出低电平;反之,则Q端为高电平。
2.6.2 8038构成函数波形发生器
由图2.9可见,管脚8为调频电压控制输入端,管脚7输出调频偏置电压,其值(指管脚6与7之间的电压)是(VCC+VEE/5) ,它可作为管脚8的输入电压。此外,该器件的方波输出端为集电极开路形式,一般需在正电源与9脚之间外接一电阻,其值常选用10k左右,如图2.10所示。当电位器Rp1动端在中间位置,并且图中管脚8与7短接时,管脚9、3和2的输出分别为方波、三角波和正弦波。电路的振荡频率f约为0.3/[C(R1+RP1/2)] 。调节RP1、RP2可使正弦波的失真达到较理想的程度。
在图2.10中,当RP1动端在中间位置,断开管脚8与7之间的连线,若在+VCC与-VEE之间接一电位器,使其动端与8脚相连,改变正电源+VCC与管脚8之间的控制电压(即调频电压),则振荡频率随之变化,因此该电路是一个频率可调的函数发生器。如果控制电压按一定规律变化,则可构成扫频式函数发生器。

图2.10 8038接成波形产生器阿
3电路仿真
3.1电路仿真
3.1.1方波——三角波发生电路的仿真

图3.1 方波

图3.2 三角波

图3.3 方波——三角波
3.1.2三角波---正弦波转换电路的仿真

图3.4 三角波——正弦波

参考文献
[1]王 远.模拟电子技术(第二版)[M].北京:机械工业出版社,2000
[2]谢自美.电子线路设计实验测试(第二版)[M].武昌:华中科技大学出版社,2000
[3]路 勇.电子电路实验及仿真[M].清华大学出版社,2003
[4]胡宴如.模拟电子技术[M].北京:高等教育出版社,2000
[5]周跃庆.模拟电子技术基础教程[M].天津大学出版社, 2001
[6]曾建唐.电工电子实践教程[M].北京:机械工业出版社,2002

J. 波形为什么没有变化 仿真是成功的

波形。他的。变化可能用我们的肉眼。分辨不出来,其实它是有变化的。他的仿真是非常成功的。

阅读全文

与波形js相关的资料

热点内容
百度地图加载多个点代码 浏览:146
数据横向复制如何纵向粘贴 浏览:433
2020cab画图数据怎么调 浏览:534
teamview12linux 浏览:175
java编辑word文件 浏览:149
类似scihub的网站有哪些 浏览:398
ios哪里找小众app 浏览:377
毒霸新闻弹窗是哪个文件 浏览:331
雨林木win10 浏览:881
写好的代码怎么编程小程序 浏览:945
改文件属性软件 浏览:917
linux网卡重启新命令 浏览:216
win10升级工具下 浏览:935
电脑qq怎么传文件到手机qq 浏览:417
被360隔离的文件在哪个文件夹 浏览:971
骷髅教程图 浏览:954
ps淘宝女包修图教程 浏览:568
55公里app 浏览:556
欠费多少充多少为啥还用不了数据 浏览:607
苹果7如何使用万能钥匙 浏览:254

友情链接