main.c

来自「LF2407的各个模块的测试程序,包含2407里面的所有模块,均已经调试通过,心」· C语言 代码 · 共 110 行

C
110
字号
#include "lf2407regs.h"
#include "math.h"

#include "GLB.h"
#include "Init.h"

#include "SCI.h"
#include "PWM.h"
#include "AD.h"

#include "DA.h"
#include "INT.h"
#include "QEP.h"

#include "CAN.h"

void main()
{
	UINT i = 0x00;
	UINT j = 0;
	
	
	System_Init();
	BUZZER_ON;
	Delay(50000);
//	SPDU_Define();
	BUZZER_OFF;	
	
	SCI_Init();		Delay(50);
	PWM_Init();		Delay(50);
	XINT_Init();	Delay(50);
	Timer_Init();	Delay(50);
	QEP_Init();		Delay(50);
	AD_Init();		Delay(50);	
	CAN_init();		Delay(50);	
	
	asm(" clrc INTM");//开总中断
	Start_Timer(1);//PWM输出
//	Start_Timer(2);//QEP
//	Start_Timer(3);//自定义5ms定时器	
//	Start_Timer(4);//DA采集
	
	SPWM_Test();	
	
	
	
	/*
	Set_LED(0);
	
	ID = 0xAABBCCDD;
	
	while(1)
	{	
		for(i=0;i<8;i++)
			data[i] = j;
		j++;	
		CAN_Send_Data(5,ID,8,data);	
		Delay(500*Get_Group_Key());
	}
	while(1)
	{
		i = ++i%2;
		
		if(1)//(RX_FLG == 0x01)
		{			
			if(i == 0)//CAN的发送有问题.....................
				CAN_Send_Data(5,RecvFrame.ID+i,RecvFrame.DataLen,RecvFrame.Data);
			else if(i == 1)
				CAN_Send_Data(4,RecvFrame.ID+i,RecvFrame.DataLen,RecvFrame.Data);
				
			RX_FLG = 0x00;
		}											
	}*/
	
	/*
	
	while(1);
	
	
	while(1)//模拟QEP信号
	{
		BRK_CTL_0;Delay(100);
		IO_SCIT_0;Delay(100);
		BRK_CTL_1;Delay(100);	
		IO_SCIT_1;Delay(100);
		Set_LED(QEP_count);
	}
	
	while(1)
	{
		if(Get_Group_Key() == 0x0001)
			Set_LED(AD_ACC>>2);
		else
			Set_LED(AD_BRK>>2);			
	}
	while(1)
	{
		Set_LED(Get_Group_Key());
	}*/
	while(1)
	{
		//j = 
	/*	Write_DAC(0,(AD_BRK<<2));
		Write_DAC(1,(AD_BRK<<2));
		Write_DAC(2,(AD_BRK<<2));
		Write_DAC(3,(AD_BRK<<2));*/
	}
	
	while(1);
}

⌨️ 快捷键说明

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