user_test.c
上传用户:zbk8730
上传日期:2017-08-10
资源大小:12168k
文件大小:1k
源码类别:

uCOS

开发平台:

C/C++

  1. #include <stdio.h>
  2. #include <string.h>
  3. #include "def.h"
  4. #include "option.h"
  5. #include "2440addr.h"
  6. #include "2440lib.h"
  7. #include "User_Test.h"
  8. #include "User_Test1.h"
  9. #include "User_Test2.h"
  10. #include "memtest.h"
  11. #include "userlib.h"
  12. void SwReset(void);
  13. void * func_user_test[][2]=
  14. {
  15. //                          "0123456789012345"
  16. (void *)User_Test1, "user test 1(dvs)", // max 15磊 肺茄沥窍咯 comment窍技夸.
  17. (void *)User_Test2, "user test 2  ",
  18. (void *)Mem_Test, "Memory test  ",
  19. (void *)Firm_DVS_Onoff, "Firm_DVS_Onoff  ",
  20. (void *)DVS_Onoff_Man, "DVS_Onoff(manual) ", 
  21. (void *)SwReset, "rst                    ", 
  22. 0,0
  23. };
  24. extern void Calc_Clock(int pring_msg);
  25. extern U32 Mdiv, Pdiv, Sdiv, Fclk, Hclk, Pclk, Hdivn, Pdivn, Hclk_Ratio, Pclk_Ratio, Ref_Cnt;
  26. void SwReset(void)
  27. {
  28. rWTDAT=0x1000;
  29. rWTCNT=0x1000;
  30. rWTCON= (0x80<<8) | (1<<5) | (1<<0);
  31. while(1);
  32. }
  33. void User_Test(void)
  34. {
  35. int i;
  36. while(1)
  37. {
  38. i=0;
  39. Uart_Printf("nn");
  40. while(1)
  41. {   //display menu
  42. Uart_Printf("%2d:%s",i,func_user_test[i][1]);
  43. i++;
  44. if((int)(func_user_test[i][0])==0)
  45. {
  46. Uart_Printf("n");
  47. break;
  48. }
  49. if((i%4)==0)
  50. Uart_Printf("n");
  51. }
  52. Uart_Printf("nSelect ("-1" to exit) : ");
  53. i = Uart_GetIntNum();
  54. if(i==-1) break; // return.
  55. if(i>=0 && (i<((sizeof(func_user_test)-1)/8)) ) // select and execute...
  56. ( (void (*)(void)) (func_user_test[i][0]) )();
  57. }
  58. Uart_Printf("nUser_Test program end.n");
  59. }