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

📄 test3.c

📁 ADE7758三相电能芯片读写源程序
💻 C
字号:
/***********************************************************************/
/*                                                                     */
/*  FILE        :TEST3.c                                               */
/*  DATE        :Fri, Nov 07, 2003                                     */
/*  DESCRIPTION :Main Program                                          */
/*  CPU TYPE    :H8/38024F                                             */
/*                                                                     */
/*  This file is generated by Renesas Project Generator (Ver.3.0).     */
/*                                                                     */
/***********************************************************************/
                  

                  
#define SF03P09_GLOBALS        
#include "includes.h"

#ifdef __cplusplus
extern "C" {
#endif
void abort(void);
#ifdef __cplusplus
}
#endif

void ini_sys(void);
void main(void)
{
	ini_sys();
	P_LED1_ON;P_LED0_OFF;
	nop();
	
        while(1)
        	{
		SCI3a_send_somebytes(GA_buf_rdwr7758,2,0x0d,0x0a);
		delay(2);
        	}
 	
	/*
	nop();
	nop();
	Data_rd7758(Addr_MMODE);
	nop();
	GA_buf_rdwr7758[0]=0x55;
	Data_wr7758(Addr_MMODE,  GA_buf_rdwr7758);
	nop();
	us_delay(30);
	GA_buf_rdwr7758[0]=0;
	Data_rd7758(Addr_MMODE);
	nop();
	GA_buf_rdwr7758[0]=0x40;
	Data_wr7758(Addr_OPMODE,  GA_buf_rdwr7758);
	us_delay(30);
	Data_rd7758(Addr_MMODE);
	nop();
	Data_rd7758(Addr_OPMODE);
	nop();
	*/
	/*
	Dis_1char(0, 0); 
	Dis_1char(1, 1);
	Dis_1char(2, 2);
	Dis_1char(3, 3);
	Dis_1char(3, 3);
	Dis_1char(4, 4);
	Dis_1char(5, 5);
	Dis_1char(6, 6);
	Dis_1char(7, 7);
	Dis_1char(8, 9);*/
	Dis_data(83165195);
	/*
	GSTRU_receive_buf.buff[0]=0x55;
	GSTRU_receive_buf.buff[2]=0x0aa;
	GSTRU_receive_buf.buff[4]=0x0dd;

	while(1)
		{
		nop();
		Write_EeprData(GSTRU_receive_buf.buff, 5, 0);
		sub_delay(10);
		GSTRU_receive_buf.buff[0]=0x00;
		GSTRU_receive_buf.buff[2]=0x00;
		GSTRU_receive_buf.buff[4]=0x00;
		Read_EeprData(GSTRU_receive_buf.buff, 5, 0);
		GSTRU_receive_buf.buff[0]=0x35;
		GSTRU_receive_buf.buff[2]=0x0a5;
		GSTRU_receive_buf.buff[4]=0x3a;
		nop();
		sub_delay(3);
		}
	*/
	
      Sci3a_ReEn(GSTRU_receive_buf.buff, Uconst_recbuf_size);
	while(1)
		{
		
		if(GF_disp_circle)
			{
			GF_disp_circle=0;		
			Disp_circle(GB_circle);
			toggle_led0();
			GB_circle++;
			if(GB_circle==Circle_sum)GB_circle=0;
			}
		if(GF_Sample_Circle)
			{
			GF_Sample_Circle=0;
			Read_58data_batch();
			}
	       Sci3a_CmmPrc();
		if(GF_sci3a_comm_active)
			{
			nop();
			GF_sci3a_comm_active=0;
			switch(GSTRU_receive_buf.buff[2])
				{
				case 1:
					prcess_cmd01_wr();
					switch(GSTRU_receive_buf.buff[3])
						{
						case Addr_APCFDEN:
							Write_EeprData(&(GSTRU_receive_buf.buff[4]),2,APCFDEN_EeAddr);
							us_delay(30);
							Read_EeprData(&(GSTRU_receive_buf.buff[10]), 2, APCFDEN_EeAddr);
							nop();
							break;
						case Addr_VARCFDEN:
							Write_EeprData(&(GSTRU_receive_buf.buff[4]),2,VARCFDEN_EeAddr);
							us_delay(30);
							Read_EeprData(&(GSTRU_receive_buf.buff[10]), 2, VARCFDEN_EeAddr);
							nop();
							break;
						case Addr_AWG:
							Write_EeprData(&(GSTRU_receive_buf.buff[4]),2,AWG_EeAddr);
							us_delay(200);
							Read_EeprData(&(GSTRU_receive_buf.buff[10]), 2, AWG_EeAddr);
							nop();
							break ;
						case Addr_BWG:
							Write_EeprData(&(GSTRU_receive_buf.buff[4]),2,BWG_EeAddr);
							us_delay(30);
							Read_EeprData(&(GSTRU_receive_buf.buff[10]), 2, BWG_EeAddr);
							nop();
							break;
						case Addr_CWG:
							Write_EeprData(&(GSTRU_receive_buf.buff[4]),2,CWG_EeAddr);
							us_delay(200);
							Read_EeprData(&(GSTRU_receive_buf.buff[10]), 2, CWG_EeAddr);
							nop();
							break;
						case Addr_AVARG:
							Write_EeprData(&(GSTRU_receive_buf.buff[4]),2,AVARG_EeAddr);
							us_delay(20);
							Read_EeprData(&(GSTRU_receive_buf.buff[10]), 2, AVARG_EeAddr);
							nop();
							break;
						case Addr_BVARG:
							Write_EeprData(&(GSTRU_receive_buf.buff[4]),2,BVARG_EeAddr);
							us_delay(20);
							Read_EeprData(&(GSTRU_receive_buf.buff[10]), 2, BVARG_EeAddr);
							nop();
							break;
						case Addr_CVARG:
							Write_EeprData(&(GSTRU_receive_buf.buff[4]),2,CVARG_EeAddr);
							us_delay(20);
							Read_EeprData(&(GSTRU_receive_buf.buff[10]), 2, CVARG_EeAddr);
							nop();
							break;
						case Addr_WDIV:
							Write_EeprData(&(GSTRU_receive_buf.buff[4]),1,WDIV_EeAddr);
							us_delay(20);
							Read_EeprData(&(GSTRU_receive_buf.buff[10]), 1, WDIV_EeAddr);
							nop();
							break;
						case Addr_VARDIV:
							Write_EeprData(&(GSTRU_receive_buf.buff[4]),1,VARDIV_EeAddr);
							us_delay(20);
							Read_EeprData(&(GSTRU_receive_buf.buff[10]), 1, VARDIV_EeAddr);
							nop();
							break;
						case Addr_APHCAL:
							Write_EeprData(&(GSTRU_receive_buf.buff[4]),1,APHCAL_EeAddr);
							us_delay(100);
							Read_EeprData(&(GSTRU_receive_buf.buff[10]), 1, APHCAL_EeAddr);
							nop();
							break;
						case Addr_BPHCAL:
							Write_EeprData(&(GSTRU_receive_buf.buff[4]),1,BPHCAL_EeAddr);
							us_delay(100);
							Read_EeprData(&(GSTRU_receive_buf.buff[10]), 1, BPHCAL_EeAddr);
							nop();
							break;
						case Addr_CPHCAL:
							Write_EeprData(&(GSTRU_receive_buf.buff[4]),1,CPHCAL_EeAddr);
							us_delay(100);
							Read_EeprData(&(GSTRU_receive_buf.buff[10]), 1, CPHCAL_EeAddr);
							nop();
							break;
						case  Addr_AWATTOS:
							Write_EeprData(&(GSTRU_receive_buf.buff[4]),2,AWATTOS_EeAddr);
							us_delay(100);
							Read_EeprData(&(GSTRU_receive_buf.buff[10]), 2, AWATTOS_EeAddr);
							nop();
							break;
						case  Addr_BWATTOS:
							Write_EeprData(&(GSTRU_receive_buf.buff[4]),2,BWATTOS_EeAddr);
							us_delay(100);
							Read_EeprData(&(GSTRU_receive_buf.buff[10]), 2, BWATTOS_EeAddr);
							nop();
							break;
						case  Addr_CWATTOS:
							Write_EeprData(&(GSTRU_receive_buf.buff[4]),2,BWATTOS_EeAddr);
							us_delay(100);
							Read_EeprData(&(GSTRU_receive_buf.buff[10]), 2, BWATTOS_EeAddr);
							nop();					
							break;
						case  Addr_AVAROS:
							Write_EeprData(&(GSTRU_receive_buf.buff[4]),2,AVAROS_EeAddr);
							us_delay(100);
							Read_EeprData(&(GSTRU_receive_buf.buff[10]), 2, AVAROS_EeAddr);
							nop();
							break;
						case  Addr_BVAROS:
							Write_EeprData(&(GSTRU_receive_buf.buff[4]),2,BVAROS_EeAddr);
							us_delay(100);
							Read_EeprData(&(GSTRU_receive_buf.buff[10]), 2, BVAROS_EeAddr);
							nop();
							break;
						case  Addr_CVAROS:
							Write_EeprData(&(GSTRU_receive_buf.buff[4]),2,CVAROS_EeAddr);
							us_delay(100);
							Read_EeprData(&(GSTRU_receive_buf.buff[10]), 2,CVAROS_EeAddr);
							nop();
							break;
						default:
							break;
						}
					break;
				case 2:
					prcess_cmd02_rd();
					break;
				default:
					break;
				}
			nop();
			toggle_led1();
			}
		}
	
	while(1)
		{
		wait_for_command();
		nop();	
		}
	
	while(1)
		{
		toggle_led0();
		SCI3a_send_somebytes(GACHC_rdy,6,0x0d,0x0a);
		GA_buf_rdwr7758[0]=HB_TCA;
		SCI3a_send_somebytes(GA_buf_rdwr7758,2,0x0d,0x0a);
		delay(2);
		}
	while(1);
}
void ini_sys(void)
{
	set_imask_ccr(1);
	Lcd_ini();
	SET_OUTPUT_LED0;SET_OUTPUT_LED1;/*initialize the ports of the test led*/
	ini_7758();
	SCI3a_ini();
	/*initialize timer A*/
	HF_IENR1_IENTA=1;/*enable timer A interrupt*/
	HB_TMA=0x15;/*set the clock in timer A is interval 1/128*/
	GW_circle_coun=600;
	GB_Smp_crcl=9;
	set_imask_ccr(0);
	
}
	
void abort(void)
{
	
}

⌨️ 快捷键说明

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