dacontrol.c

来自「单片机对DAC转换器的操作」· C语言 代码 · 共 94 行

C
94
字号
#include <stdio.h>
#include <reg51.h>
#include <intrins.h>

sbit Mode1=P2^0;		//调制模式1的输入
sbit Mode2=P2^1;	  	//调制模式2的输入
sbit Mode3=P2^2;	 	//调制模式3的输入
sbit Mode4=P2^3;  		//调制模式4的输入

void main()
{
	int i;
	P1=0xBF;	//无参数设置,无调制
	P0=0x11;	//电压1
	P1=0xBE;	//设置电压1
	P1=0xBF;	//无参数设置,无调制
	P0=0x22;	//电压2
	P1=0xBD;	//设置电压2
	P1=0xBF;	//无参数设置,无调制
	P0=0x33;	//电压3
	P1=0xBB;	//设置电压3
	P1=0xBF;	//无参数设置,无调制
	while(1)
	{
		if(Mode1==0 && Mode2==1 && Mode3==1 && Mode4==1) 		//调制模式1
		{
			P1=0xF7;			   								//选通调制电压1输出
			_nop_();											//保持输出
			P1=0xBF;											//无参数设置,无调制
			for (i=0;i<4;i++)									//保持输出
			{
				_nop_();
			}
		}
		else if(Mode1==1 && Mode2==0 && Mode3==1 && Mode4==1)	//调制模式2
		{
			P1=0xEF;					 						//选通调制电压2输出
			_nop_();
			P1=0xBF;
			for (i=0;i<4;i++)
			{
				_nop_();
			}
		}
		else if(Mode1==1 && Mode2==1 && Mode3==0 && Mode4==1)  	//调制模式3
		{
			P1=0xDF;										 	//选通调制电压3输出
			_nop_();
			P1=0xBF;
			for (i=0;i<4;i++)
			{
				_nop_();
			}
		}  
		else if(Mode1==1 && Mode2==1 && Mode3==1 && Mode4==0) 	//调制模式4
		{
			P1=0xBF;	   										//调制电压0输出
			_nop_();
			P1=0xBF;
			for (i=0;i<4;i++)
			{
				_nop_();
			}
			//
			P1=0xF7;	 										//选通调制电压1输出
			_nop_();
			P1=0xBF;
			for (i=0;i<4;i++)
			{
				_nop_();
			}
			//
			P1=0xEF; 											//选通调制电压2输出
			_nop_();
			P1=0xBF;
			for (i=0;i<4;i++)
			{
				_nop_();
			}
			//
			P1=0xDF;   											//选通调制电压3输出
			_nop_();
			P1=0xBF;
			for (i=0;i<4;i++)
			{
				_nop_();
			}
		}
		else
		{
		 	P1=0xBF;   											//无调制
		}
	}
}

⌨️ 快捷键说明

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