81 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
		
		
			
		
	
	
			81 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| 
								 | 
							
								/*
							 | 
						||
| 
								 | 
							
								*   Dtest scan main entry.
							 | 
						||
| 
								 | 
							
								*/
							 | 
						||
| 
								 | 
							
								#include "os_types.h"
							 | 
						||
| 
								 | 
							
								#include "dtest_scan_main.h"
							 | 
						||
| 
								 | 
							
								#include "iot_irq.h"
							 | 
						||
| 
								 | 
							
								#include "mac_tx_main.h"
							 | 
						||
| 
								 | 
							
								#include "phy_bb.h"
							 | 
						||
| 
								 | 
							
								#include "hw_desc.h"
							 | 
						||
| 
								 | 
							
								#include "plc_mpdu_header.h"
							 | 
						||
| 
								 | 
							
								#if HW_PLATFORM > HW_PLATFORM_SIMU
							 | 
						||
| 
								 | 
							
								#include "dbg_io.h"
							 | 
						||
| 
								 | 
							
								#endif
							 | 
						||
| 
								 | 
							
								#include "iot_io.h"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								extern int ada_auto_vpp_test(int argc, char **argv);
							 | 
						||
| 
								 | 
							
								extern int ada_auto_snr_test(int argc, char **argv);
							 | 
						||
| 
								 | 
							
								extern int ada_auto_fa_test(int argc, char **argv);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#ifndef RISCV
							 | 
						||
| 
								 | 
							
								extern void mac_tx_start();
							 | 
						||
| 
								 | 
							
								#endif
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								DtestScanCasePara_t scan_cases_tb[] =
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    {DTEST_TEST_UART,       "\n[Dtest][UART] print hello world::::::::::::::::::::::::::::::\n"},
							 | 
						||
| 
								 | 
							
								    {DTEST_TEST_VPP,        "\n[Dtest][ADA][VPP] Print Tone VPP voltage:::::::::::::::::::::\n"},
							 | 
						||
| 
								 | 
							
								    {DTEST_TEST_SNR,        "\n[Dtest][ADA][SNR] Print SIGNAL-NOISE RATIO:::::::::::::::::::\n"},
							 | 
						||
| 
								 | 
							
								    {DTEST_TEST_FA,         "\n[Dtest][ADA][FA] Print Freq vs Amplitude curve:::::::::::::::\n"},
							 | 
						||
| 
								 | 
							
								    {DTEST_TEST_INTR,       "\n[Dtest][TX][INTC] Print Interrupt status:::::::::::::::::::::\n"},
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								int dtest_scan_uart(int argc, char **argv)
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								#if HW_PLATFORM > HW_PLATFORM_SIMU
							 | 
						||
| 
								 | 
							
								  	dbg_uart_init();
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    iot_printf("%s",scan_cases_tb[DTEST_TEST_UART].name);
							 | 
						||
| 
								 | 
							
								#endif
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    return 0;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#ifdef __GNUC__
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								int main(int argc, char **argv) {
							 | 
						||
| 
								 | 
							
								    for(int i = 0; i < sizeof(scan_cases_tb)/sizeof(DtestScanCasePara_t); i++)
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								        switch(scan_cases_tb[i].case_id)
							 | 
						||
| 
								 | 
							
								        {
							 | 
						||
| 
								 | 
							
								            case DTEST_TEST_UART:
							 | 
						||
| 
								 | 
							
								                dtest_scan_uart(argc,argv);
							 | 
						||
| 
								 | 
							
								                break;
							 | 
						||
| 
								 | 
							
								            case DTEST_TEST_VPP:
							 | 
						||
| 
								 | 
							
								                ada_auto_vpp_test(argc,argv);
							 | 
						||
| 
								 | 
							
								                break;
							 | 
						||
| 
								 | 
							
								            case DTEST_TEST_SNR:
							 | 
						||
| 
								 | 
							
								                ada_auto_snr_test(argc,argv);//dump tone wave for matlab to cal SNR
							 | 
						||
| 
								 | 
							
								                break;
							 | 
						||
| 
								 | 
							
								            case DTEST_TEST_FA:
							 | 
						||
| 
								 | 
							
								                ada_auto_fa_test(argc,argv);
							 | 
						||
| 
								 | 
							
								                break;
							 | 
						||
| 
								 | 
							
								            case DTEST_TEST_INTR:
							 | 
						||
| 
								 | 
							
								                iot_printf("%s",scan_cases_tb[DTEST_TEST_INTR].name);
							 | 
						||
| 
								 | 
							
								#ifndef RISCV
							 | 
						||
| 
								 | 
							
								                mac_tx_handle(PLC_PROTO_TYPE_SG,FC_DELIM_SOF,100);
							 | 
						||
| 
								 | 
							
								#endif
							 | 
						||
| 
								 | 
							
								                break;
							 | 
						||
| 
								 | 
							
								            case DTEST_TEST_MAX:
							 | 
						||
| 
								 | 
							
								            default:return 0;
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    iot_printf("[Dtest][scan][end]::::::::::::::::::::::::::::::::::::::::::::\n");
							 | 
						||
| 
								 | 
							
								    while(1);//run away
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    return 0;
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								#endif // __GCC__
							 | 
						||
| 
								 | 
							
								
							 |