⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dis_wave.c

📁 基于STC12C5412AD单片机的简易存储示波器设计
💻 C
字号:
//模块:Dis_Wave.C
//功能:示波器模块
//晶振:24.000MHz
//芯片: STC12C5412AD
//版本:V1.0.0
//设计:魏广寅
//日期:2007.4.10
#include "lcd12864_driver_new.h"
#define uchar unsigned char			  
#define uint unsigned int
extern void d0(void);
extern uchar keyfuncindex;
extern void d1(void);
extern void AD_init(uchar AD_port_sel );
extern uint GET_AD_Result();//启动AD转换并返回转换值 
extern void delay_1(uchar time);
uint xdata record[128];
sbit key1=P3^0;
sbit key2=P3^1;
//--------------------------------------------------------------------
void delay(uint time)
{
	uchar jj,hh;
	while(--time!=0)
	{
		for(jj==0;jj<255;jj++)
		{
			for(hh==0;hh<255;hh++);
		}
		
	}
}
//--------------------------------------------------------------------
void wave()	
{

	uchar mod=1;
	uchar data k;
	float x2;
	lcd_init();
	AD_init(7);
	while(1)
	{
	
			for(k=0;k<128;k++)
			{
				record[k]=GET_AD_Result();
			
			}

		switch(mod)
		{
			case 0:	
			{
				if(record[k]==512)
				{ 	
					dis_cls();
					for(k=0;k<128;k++)
					{
						x2=record[k]/16;
						dis_point(64-x2,k);
					}
					for(k=127;k>0;k--)
					{
						x2=record[k]/16;
						dis_point(64-x2,k);
					}
				}
			 }
			 break;

			 case 1:
			{
				dis_cls();
				for(k=0;k<128;k++)
				{
					x2=record[k]/16;
					dis_point(64-x2,k);
				}
				for(k=127;k>0;k--)
				{
					x2=record[k]/16;
					dis_point(64-x2,k);
				}
				delay(30000);
			}
			break;
		}

			 key2=1;
			 if(key2==0)
			 {
			 	mod=!mod;
			 	delay_1(5);
				}

			 key1=1;
			 if(key1==0)
			 {
			  delay_1(5);
			  goto exit;
			 }
 	 }
exit:	keyfuncindex=1;
		d1();	
		delay(1);
}
//--------------------------------------------------------------------

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -