资源简介
在Proteus,基于51单片机,实现一个波形发生器,可在三角波、方波、正弦波三种波形之间转换,可手动调节(用矩阵键盘实现按键输入效果)频率(1到400HZ)和幅度。

代码片段和文件信息
#include
typedef unsigned char u8;
#define __BEGIN(ms) static unsigned long _clk = 0; \
if(ALL_Clk - ms > _clk)do{_clk = ALL_Clk
#define __END() }while(0)
#define KEY P1
#define DAC P2
#define DISPLAY P0
typedef struct{
u8 key_value;
u8 port_value;
}Table;
Table code keyTable[16]={
00x1110x2120x4130x81
40x1250x2260x4270x82
80x1490x24100x44110x84
120x18130x28140x48150x88
};
u8 code smgTableNumber[]={
0x3f0x060x5b0x4f
0x660x6d0x7d0x07
0x7f0x6f0x770x7c
0x390x5e0x790x71
};
u8 code smgTableSelect[]={
0xef0xdf0xbf0x7f
0xfe0xfd0xfb0xf70xff
};
u8 code Waveform_sin_5[40]={
128148167186203
218231242249254
255254249241231
217202185166147
127106876851
36231351
0161425
38547190109
};
u8 code Waveform_sin_4[40]={
102117133148162
174184193199202
203202198192184
173161147132117
10185695441
29181041
0151120
3043567187
};
u8 code Waveform_sin_3[40]={
7789100112122
131139145150153
153153150145139
13112111110088
7664524131
2214830
014815
2332435466
};
u8 code Waveform_sin_2[40]={
5158667481
87929699101
101101999692
8680736658
5042342720
149520
002510
1521283543
};
u8 code Waveform_sin_1[40]={
2630343741
4447495051
5151504946
4441373329
2521171310
74210
00125
711141822
};
u8 code Waveform_triangular_5[40]={
012253851
637689102114
127140153165178
191204216229242
255242229216204
191178165153140
1271141028976
6351382512
};
u8 code Waveform_triangular_4[40]={
010203040
5161718191
102112122132142
153163173183193
204193183173163
153142132122112
10291817161
5140302010
};
u8 code Waveform_triangular_3[40]={
07152230
3845536168
76849199107
114122130137145
153145137130122
114107999184
7668615345
383022157
};
u8 code Waveform_triangular_2[40]={
05101520
2530354045
5156616671
7681869196
10296918681
7671666156
5145403530
252015105
};
u8 code Waveform_triangular_1[40]={
025710
1215172022
2528303335
3840434548
5148454340
3835333028
2522201715
1210752
};
static unsigned long ALL_Clk = 0;
static u8 KeyValue = 0;
static u8 KeyStatus = 0;
// 0 为 脉冲波,1 为三角波,2 为正弦波
static unsigned int WaveType = 0;
// 0 为可以输入数字模式改频率,1为输入值为改变幅度
static u8 KeyInFlag = 0;
static u8 KeyInStart = 0;
static unsigned int KeyInput = 10; //显示的数
static unsigned int FreInput = 10; //实际的频率数
static unsigned int Timer = 100;
static unsigned int Tim1Low = 0;
static unsigned int Tim1Hei = 0;
static unsigned int D
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-02-10 21:11 Renew\
文件 24860 2019-02-10 21:08 Renew\Last Loaded MakeWave.pdsbak
目录 0 2019-02-10 21:10 Renew\Listings\
文件 21229 2018-12-29 09:03 Renew\Listings\Main.lst
文件 14084 2018-12-27 14:09 Renew\Listings\Task.lst
文件 20092 2018-12-27 15:17 Renew\Listings\Task.m51
文件 22520 2019-02-10 21:10 Renew\Listings\Wave.m51
文件 10890 2018-12-29 09:03 Renew\Main.c
文件 24846 2019-02-10 21:11 Renew\MakeWave.pdsprj
文件 2357 2019-02-10 21:11 Renew\MakeWave.pdsprj.DESKTOP-1LVPF52.wolov.workspace
目录 0 2019-02-10 21:10 Renew\ob
文件 23244 2018-12-29 09:03 Renew\ob
文件 20022 2019-02-10 21:10 Renew\ob
文件 1002 2019-02-10 21:10 Renew\ob
文件 7811 2019-02-10 21:10 Renew\ob
文件 89 2019-02-10 21:10 Renew\ob
文件 91248 2019-02-10 21:10 Renew\Wave.uvgui.wolov
文件 5380 2018-12-27 15:18 Renew\Wave.uvopt
文件 14274 2018-12-27 15:18 Renew\Wave.uvproj
- 上一篇:netkeeper破解
- 下一篇:山东大学汇编试验报告
相关资源
- 最新的北京地铁shp文件75146
- 程序员专用字体YaHei.Consolas.1.11b42517
- STC8951系列单片机中方指南
- 基于MCS_51单片机的工业屏柜散热方案
- 清翔电子MCS51开发板资料_新版 01_开发
- MCS_51单片机与8255A的接口设计
- Rtx51_tiny_RTOS中文版.pdf
- 51单片机PWM程序,占空比、周期可调整
- 51单片机多功能自行车测速仪
- proteus仿真 AT89C51输出各种波形
- 00
- 用51单片机实现G代码翻译
- 简易的电阻电容测量电路
- 51单片机基于protues的几个仿真实例
- 51单片机PCB设计图
- PC -- 单片机的串口数据传输系统设计
- 51模拟SPI读写SD卡(包括Fat和Fat32文件
- NRF24L01实现51与STM32双向通讯
- 基于c8051f020的AD转换程序及LCD显示程序
- 51单片机控制舵机程序
- 51单片机读取温度数据存储到SD卡中并
- 【单片机】51单片机数码管显示万年历
- proteus_24C08—有注释(proteus里面使用的
- DS18B20分布式多点测温的Proteus仿真
- 课程设计蔬菜大棚自动控制系统,包
- 基于proteus的单片机仿真--交通灯控制
- 带时间温度显示的室内灯光控制系统
- 基于AT89C51的数据采集系统设计新方法
- C51单片机汇编指令查询、学习工具集
- 基于8051单片机的红外接收程序
评论
共有 条评论