projekty/Source/example1/src/ex1_menu.c

Go to the documentation of this file.
00001 /*
00002  * $Id: ex1_menu.c,v 1 2004/26/07 8:00:00 BorisK Exp $
00003  *
00004  * Copyright (C) 2005 ONTRACK s.r.o.
00005  *
00006  * This program is free software; you can redistribute it and/or
00007  * modify it under the terms of the GNU General Public License
00008  * as published by the Free Software Foundation; either version 2
00009  * of the License, or (at your option) any later version.
00010  *
00011  * This program is distributed in the hope that it will be useful,
00012  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00013  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00014  * GNU General Public License for more details.
00015  *
00016  * You should have received a copy of the GNU Generae  Public License
00017  * along with this program; if not, write to the Free Software
00018  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA    
00019  * 02111-1307, USA.
00020  *
00021  * [1] ARM-based Microcontroller LPC2119/2129/2194/2292/9994, "Preliminary User Manual", February 03, 2004
00022  *
00023  * Written by Boris Kralik <kralikbo@yahoo.com>, 2004.
00024  *
00025  */
00026 
00027 #include "ex1.h"
00028 #define DO_MENU "i - init, H/L - all H/L, m - DO_MENU e - exit"
00029 
00030 void DoMenu()
00031 {
00032         char str[2]={0,0},smer=0,cChannel=      0;
00033         unsigned int iC=0;
00034         int32_t ret=0;
00035         #if 1
00036                 printf("\n\r%s",DO_MENU);WD_Reset();
00037         #else
00038                 WD_Reset();
00039         #endif
00040         do
00041         {
00042                 WD_Reset();
00043                 switch (str[0])
00044                 {
00045                         case 'i':
00046                         case 'I':
00047                                 #if 1
00048                                         printf("\n\r\tDO_MAX_Init(1)=%x",DO_MAX_Init(1));
00049                                         printf("\n\r\tDO_MAX_Init(0)=%x",DO_MAX_Init(0));
00050                                 #else
00051                                         if ((ret = DO_MAX_Init(0)))
00052                                                 {
00053                                                 #if 1
00054                                                         printf("\n\rError Initalize DO.0(0x%X) (I2C_I2STAT=0x%X)",ret,I2C_I2STAT);WD_Reset();
00055                                                 #else
00056                                                         WD_Reset();
00057                                                 #endif
00058                                                 }
00059                                         if ((ret = DO_MAX_Init(1)))
00060                                                 {
00061                                                 #if 1
00062                                                         printf("\n\rError Initalize DO.1(0x%X) (I2C_I2STAT=0x%X)",ret,I2C_I2STAT);WD_Reset();
00063                                                 #else
00064                                                         WD_Reset();
00065                                                 #endif
00066                                                 }
00067                                         return;
00068                                 #endif
00069                                 WD_Reset();
00070                                 str[0]=0;
00071                                 break;
00072                         case 'h':
00073                         case 'H':
00074                                 #if 1
00075                                         printf("\n\r\H=%X",DO_H());
00076                                 #else
00077                                         ;
00078                                 #endif
00079                                 str[0]=0;
00080                                 break;
00081                         case 'l':
00082                         case 'L':
00083                                 #if 1
00084                                         printf("\n\r\tL=%X",DO_L());
00085                                 #else
00086                                         ;
00087                                 #endif
00088                                 str[0]=0;
00089                                 break;
00090                         case 'm':
00091                         case 'M':
00092                                 printf("\n\r%s",DO_MENU);
00093                                 WD_Reset();
00094                                 str[0]=0;
00095                                 break;
00096                         case 'e':
00097                         case 'E':
00098                                 printf("\n\rExiDOMenu");
00099                                 return;
00100                         default:
00101                                 str[0]=0;
00102                                 break;
00103                 }
00104                 if ((UART0_LSR & 0x01)==1)
00105                                 {str[0]=(char) UARTgetchar(0);str[1]='\x0';continue;}
00106         }while(1);
00107         #if 1
00108                 printf("\n\rExit DO");
00109         #endif  
00110 }
00111 #define AD7997_MENU     "\n\rR - ReadConfRegister, (1,2,3,4,5,6,7,8) - Read Channel\n\rS - SetSycleTime \n\rt - H/L-0/1Change chip \n\rE - Exit"
00112 
00113 void AD7997_Menu()
00114 {
00115         char str[1],sChip=0;
00116         int i=500;
00117         uint32_t        chipAddress_W=I2C_AD7997BRU_1_H_W;
00118         uint32_t        chipAddress_R=I2C_AD7997BRU_1_H_R;
00119         printf("\n\r*** AD5397_MENU ***%s\n\r\tCHIP  %d",AD7997_MENU,sChip);
00120         do
00121         {
00122                 WD_Reset();     
00123                 switch (str[0])
00124                 {
00125                         case 's':
00126                         case 'S':
00127                                 printf("\n\r\tCHIP(R,W):(0x%X,0x%X)",chipAddress_R,chipAddress_W);
00128                                 if (SendSlaveAdress(chipAddress_W) != 0 )       {
00129                                         #if 1
00130                                                 printf("\n\rError Set slave address, I2STAT=0x%X",I2C_I2STAT);
00131                                         #endif
00132                                         return I2C_I2STAT;
00133                                         }
00134                                 AD7997_SetCycleTimeRegister(1);
00135                                 str[0]=0;
00136                                 break;
00137                         case 'r':
00138                         case 'R':
00139                                 printf("\n\r\tCHIP(R,W):(0x%X,0x%X)",chipAddress_R,chipAddress_W);
00140                                 if (SendSlaveAdress(chipAddress_W) != 0 ){      // Set Address 
00141                                                         printf("\n\rError Set slave address, I2STAT=0x%X",I2C_I2STAT);
00142                                                         I2C_SetSTO();return;}
00143                                         else {  
00144                                                 #if 1
00145                                                         printf("\n\rOK - STA:0x%X",I2C_I2STAT);
00146                                                 #endif
00147                                                 ;
00148                                                 }
00149                                 while( i!=0 ) i--;
00150                                 if (WriteOnI2C(AD7997_CONF_REG) != 0x28) {      // Select Point register
00151                                                 printf("\n\rError(1)=0x%X",I2C_I2STAT);
00152                                                 I2C_SetSTO();
00153                                                 return;}
00154                                 I2C_SetSTO();
00155                                 while( i!=0 ) i--;
00156                                 if (SendSlaveAdress(chipAddress_R) != 0 )       // Read Register
00157                                         {
00158                                                 printf("\n\rError Set slave address, I2STAT=0x%X",I2C_I2STAT);
00159                                                 I2C_SetSTO();return;
00160                                                 }else { 
00161                                                                 #if 0
00162                                                                         printf("\n\rSTA:0x%X",I2C_I2STAT);
00163                                                                 #endif
00164                                                                 ;
00165                                                 }
00166                                 printf("\n\rH:ReadOnI2C()=0x%X",ReadOnI2C());   //Read Frame 2/H
00167 //                              printf("\n\rL:ReadOnI2C()=0x%X",ReadOnI2C());   //Read Frame 2/L
00168                                 I2C_SetSTO();
00169                                 str[0]=0;
00170                                 break;
00171                         case 'h':
00172                         case 'H':
00173                                 printf("\n\r*** AD5397_MENU ***%s",AD7997_MENU);
00174                                 str[0]=0;
00175                                 break;
00176                         case 'e':
00177                         case 'E':
00178                                 return;
00179                         case 't':
00180                         case 'T':
00181                                 switch(sChip)
00182                                 {
00183                                         case 0:
00184                                         sChip=1;chipAddress_W=I2C_AD7997BRU_1_H_W;chipAddress_R=I2C_AD7997BRU_1_H_R;
00185                                         break;
00186                                         case 1:
00187                                         sChip=0;chipAddress_W=I2C_AD7997BRU_1_L_W;chipAddress_R=I2C_AD7997BRU_1_L_R;
00188                                         break;
00189                                 }
00190                                 printf("\n\rChip number changed to:%d",sChip);
00191                                 str[0]=0;
00192                                 break;
00193                                 
00194                                 str[0]=0;
00195                                 break;
00196                         case '3':
00197                                 printf("\n\r\tCHIP(R,W):(0x%X,0x%X)",chipAddress_R,chipAddress_W);
00198                                 printf("\n\rAD7997_ReadAnalogValue(0x%X)=0x%X",3,AD7997_ReadAnalogValue(3));
00199                                 str[0]=0;
00200                                 break;
00201                         default:
00202                                 //printf("\n\r\tCHIP(R,W):(0x%X,0x%X)",chipAddress_R,chipAddress_W);
00203                                 if ((str[0] > 0x30)&& (str[0] < 0x39))
00204                                 {
00205                                         printf("\n\rChannel %d=0x%X",(str[0] - 0x30),AD7997_ReadAnalogValue((str[0] - 0x30)));
00206                                         
00207                                 }else
00208                                         if (str[0] != 0) printf("\n\rdefault AD7997 %c",str[0]);
00209                                 str[0]=0;
00210                                 break;
00211                 }
00212                 if ((UART0_LSR & 0x01)==1){str[0]=(char) UARTgetchar(0);str[1]='\x0';} else continue;
00213         }while(1);
00214 }
00215 
00216 #define A_MENU  "\n\ri-init, c-Select Chip, l-soft clear, p/m-Select Channel, +/- - value up/down, f-SelectFunction, u/d-up/down, s-set the parameters h-help, e-exit"
00217 void AMenu(void)
00218 {
00219         char str[1]={0,0};
00220         short   Address=0,sChannel=0;
00221         short sFunc=0,ret=0;
00222         unsigned int uiADval=0,uiOffset=0x2000;
00223         uint16_t uiGain=0x1FFF;
00224         char sChip=0;
00225         printf("%s",A_MENU);
00226         do{
00227                 WD_Reset();
00228                 if ((UART0_LSR & 0x01)==1)
00229                         {str[0]=(char) UARTgetchar(0);str[1]='\x0';continue;}
00230                 switch(str[0])
00231                 {
00232                         case '0':
00233                                 switch(sChip)
00234                                 {
00235                                 case 0:
00236                                         AD5382Write(sChannel,0);
00237                                         break;
00238                                 default:
00239                                         AD5391Write(sChannel,0);
00240                                         break;
00241                                 }
00242                                 str[0]=0;
00243                                 break;
00244                         case '1':
00245                                 switch(sChip)
00246                                 {
00247                                 case 0:
00248                                         AD5382Write(sChannel,0x100);
00249                                         break;
00250                                 default:
00251                                         AD5391Write(sChannel,0x100);
00252                                         break;
00253                                 }
00254                                 str[0]=0;
00255                                 break;
00256                         case '2':
00257                                 switch(sChip)
00258                                 {
00259                                 case 0:
00260                                         AD5382Write(sChannel,0x200);
00261                                         break;
00262                                 default:
00263                                         AD5391Write(sChannel,0x200);
00264                                         break;
00265                                 }
00266                                 str[0]=0;
00267                                 break;
00268                         case '3':
00269                                 switch(sChip)
00270                                 {
00271                                 case 0:AD5382Write(sChannel,0x300);
00272                                         break;
00273                                 default:
00274                                         break;
00275                                 }
00276                                 str[0]=0;AD5391Write(sChannel,0x300);
00277                                 break;
00278                         case '4':
00279                                 switch(sChip)
00280                                 {
00281                                 case 0:AD5382Write(sChannel,0x400);
00282                                         break;
00283 
00284                                 default:AD5391Write(sChannel,0x400);
00285                                         break;
00286                                 }
00287                                 str[0]=0;
00288                                 break;
00289                         case '5':
00290                                 switch(sChip)
00291                                 {
00292                                 case 0:AD5382Write(sChannel,0x500);
00293                                         break;
00294 
00295                                 default:AD5391Write(sChannel,0x500);
00296                                         break;
00297                                 }
00298                                 str[0]=0;
00299                                 break;
00300                         case '6':
00301                                 switch(sChip)
00302                                 {
00303                                 case 0:AD5382Write(sChannel,0x600);
00304                                         break;
00305                                 default:AD5391Write(sChannel,0x600);
00306                                         break;
00307                                 }
00308                                 str[0]=0;
00309                                 break;
00310                         case '7':
00311                                 switch(sChip)
00312                                 {
00313                                 case 0:AD5382Write(sChannel,0x700);
00314                                         break;
00315                                 default:AD5391Write(sChannel,0x700);
00316                                         break;
00317                                 }
00318                                 str[0]=0;
00319                                 break;
00320                         case '8':
00321                                 switch(sChip)
00322                                 {
00323                                 case 0:AD5382Write(sChannel,0x800);
00324                                         break;
00325 
00326                                 default:AD5391Write(sChannel,0x800);
00327                                         break;
00328                                 }
00329                                 str[0]=0;
00330                                 break;
00331                         case '9':
00332                                 switch(sChip)
00333                                 {
00334                                 case 0:AD5382Write(sChannel,0x999);
00335                                         break;
00336 
00337                                 default:AD5391Write(sChannel,0x999);
00338                                         break;
00339                                 }
00340                                 str[0]=0;
00341                                 break;
00342                         case 'l':
00343                         case 'L':
00344                                 uiADval=0;
00345                                 uiOffset=0x2000;
00346                                 uiGain=0x1FFF;
00347                                 switch(sChip)
00348                                 {
00349                                         case 0:
00350                                                 printf("\n\r\tAD5382 SoftClear");
00351                                                 AD5382_SoftClr();
00352                                                 break;
00353                                         deflaut:
00354                                                 printf("\n\r\tAD5391 SoftClear");
00355                                                 AD5391_SoftClr();
00356                                                 break;
00357                                 }
00358                                 str[0]=0;
00359                                 break;
00360                         case 'u':
00361                         case 'U':
00362                                 switch(sChip)
00363                                 {
00364                                         case 0:
00365                                                 printf("\n\r\tAD5382 UP");
00366                                                 AD5382_SoftPowerUp();
00367                                                 break;
00368                                         default:
00369                                                 printf("\n\r\tAD5391 UP");
00370                                                 AD5391_SoftPowerUp();
00371                                                 break;
00372                                 }
00373                                 str[0]=0;
00374                                 break;
00375                         case 'd':
00376                         case 'D':
00377                                 switch(sChip)
00378                                 {
00379                                         case 0:
00380                                                 printf("\n\r\tAD5382 DOWN");
00381                                                 AD5382_SoftPowerDown();
00382                                                 break;
00383                                         default:
00384                                                 printf("\n\r\tAD5391 DOWN");
00385                                                 AD5391_SoftPowerDown();
00386                                                 break;
00387                                 }
00388                                 str[0]=0;
00389                                 break;
00390                         case 'i':
00391                         case 'I':
00392                                 sChannel=0;
00393                                 uiGain = 0x1FFF;
00394                                 uiOffset = 0x2000;
00395                                 uiADval = 0;
00396                                 switch(sChip)
00397                                 {
00398                                         case 0:
00399                                                 #if 1
00400                                                         printf("\n\rAD5382_ControlRegisterWrite=0x%x",AD5382_ControlRegister());WD_Reset();
00401                                                 #else
00402                                                         AD5382_ControlRegister();WD_Reset();    //Napisat vysledok este do status slova
00403                                                 #endif
00404                                                 str[0]=0;
00405                                                 break;
00406                                         default:
00407                                                 #if 1
00408                                                         printf("\n\rAD5391_ControlRegisterWrite=0x%x",AD5391_ControlRegisterWrite());WD_Reset();
00409                                                 #else
00410                                                         AD5391_ControlRegisterWrite());WD_Reset();//Napisat vysledok este do status slova
00411                                                 #endif
00412                                 }
00413                                 
00414                                 str[0]=0;
00415                                 break;
00416                         case 'F':
00417                         case 'f':
00418                                 if( (++sFunc) > 2) sFunc = 0;
00419                                 switch(sFunc)
00420                                 {
00421                                         case 0:
00422                                                 printf("\n\r\tSelected value manipulation\n\r\tuiADval = %d",uiADval);
00423                                                 break;
00424                                         case 1:
00425                                                 printf("\n\r\tSelected gain manipulation\n\r\tgain = %d",uiGain);
00426                                                 break;
00427                                         case 2:
00428                                                 printf("\n\r\tSelected offset manipulatAD5382Writeion\n\r\toffset = %d",uiOffset);
00429                                                 break;
00430                                 }
00431                                 str[0]=0;
00432                                 break;
00433                         case '+':
00434                                 switch(sFunc)
00435                                 {
00436                                         case 0:
00437                                                 if ((uiADval+=10) > 0x3FFF) uiADval = 0;
00438                                                 printf("\n\r\tValue [%X/%d]=0x%X",sChip,sChannel,uiADval);
00439                                                 break;
00440                                         case 1:
00441                                                 if ((uiGain+=10) > 0x1FFF) uiGain=0x1FFF;
00442                                                 printf("\n\r\tGain [%X/%d]=%d",sChip,sChannel,uiGain);
00443                                                 break;
00444                                         case 2: 
00445                                                 if ((++uiOffset) > 0x3FFF) uiOffset=0x3FFF;
00446                                                 printf("\n\r\tOffset [%X/%d]=%d",sChip,sChannel,uiOffset);
00447                                                 break;
00448                                 }
00449                                 str[0]='s';
00450                                 break;
00451                         case '-':
00452                                 switch(sFunc)
00453                                 {
00454                                         case 0:
00455                                                 if ((uiADval-=10) < 0) uiADval=0x3FFF;
00456                                                 printf("\n\r\tValue [%X/%d]=0x%X",sChip,sChannel,uiADval);
00457                                                 break;
00458                                         case 1:
00459                                                 if ((uiGain-=10) < 0) uiGain=0x3FFF;
00460                                                 printf("\n\r\tGain [%X/%d]=%d",sChip,sChannel,uiGain);
00461                                                 break;
00462                                         case 2: 
00463                                                 if ((uiOffset-=10) < 0) uiOffset=0;
00464                                                 printf("\n\r\tOffset [%X/%d]=%d",sChip,sChannel,uiOffset);
00465                                                 break;
00466                                 }       
00467                                 str[0]='s';
00468                                 break;
00469                         case 's':
00470                         case 'S':
00471                                 switch(sChip)
00472                                 {
00473                                         case 0:
00474                                                 printf("\n\rSet The Parameters of AD5382[%d]:\n\r\tgain:%d, Offset:%d Value:0x%X",sChannel,uiGain,uiOffset,uiADval);
00475                                                 //if (AD5382_SetGain(sChannel,uiGain) == -1)printf("\n\rError AD5382_SetGain !!!");
00476                                                 //AD5382_SetOffset(sChannel,uiOffset);
00477                                                 if (I2C_Status() == True) {
00478                                                                         if(((ret=AD5382Write(sChannel,uiADval)) != -1)&&(ret != 255)) {
00479                                                                                         #if 1
00480                                                                                                 printf("\n\rAnalo AD5382Write(%d,0x%x)=0x%x",sChannel,uiADval,ret);
00481                                                                                         #else
00482                                                                                                 WD_Reset();
00483                                                                                         #endif
00484                                                                         }else printf("\n\rI2C is Off !!!");
00485                                                                 }
00486                                                 break;
00487                                         default:
00488                                                 printf("\n\rSet The Parameters of AD5391:\n\r\t%d, gain:%d, Offset:%d",sChannel,uiGain,uiOffset);
00489                                                 //if (AD5391_SetGain(sChannel,uiGain) == -1)printf("\n\rError AD5391_SetGain !!!");
00490                                                 //AD5391_SetOffset(sChannel,uiOffset);
00491                                                 AD5391Write(sChannel,uiADval);
00492                                                 break;
00493                                 }
00494                                 str[0]=0;
00495                                 break;
00496                         case 'c':
00497                         case 'C':
00498                                 sChip = ~sChip;
00499                                 if (sChip == 0) printf("\n\r\tChip = AD5382");
00500                                         else printf("\n\r\tChip = AD5391");
00501                                 str[0]=0;
00502                                 break;
00503                         case 'p':
00504                         case 'P':
00505                                 if ((++sChannel) > 12) sChannel=0;
00506                                 printf("\n\r\tChannel [0x%X]=%d",sChip,(sChannel));
00507                                 str[0]=0;
00508                                 break;
00509                         case 'm':
00510                         case 'M':
00511                                 if ((--sChannel)<0)
00512                                         sChannel = 12;
00513                                 printf("\n\r\tChannel [0x%X]=%d",sChip,sChannel);
00514                                 str[0]=0;
00515                                 break;
00516                         case 'h':
00517                         case 'H':
00518                                 printf("%s",A_MENU);
00519                                 str[0]=0;
00520                                 break;
00521                         case 'e':
00522                         case 'E':
00523                                 return;
00524                 }
00525         }while(1);
00526 }
00527 #define RAMTRON_HELP    "\n\rRamtron:i = init r = read, w = write, +/-, h = help, e = exit"
00528 void RMenu(void)
00529 {
00530         char str[1]={'i',0};
00531         unsigned char chTmp=0;
00532         short   Address=0,ret;
00533         printf("%s",RAMTRON_HELP);
00534         do{
00535                 WD_Reset();
00536                 switch(str[0])
00537                 {
00538                         case 'i':
00539                         case 'I':
00540                                 #if 1
00541                                         printf("\n\rRamtron init=0x%X",RamtronInit());
00542                                 #else
00543                                         if (RamtronInit()!=0)
00544                                         {
00545                                         #if 1
00546                                                 printf("\n\rError RamtronInit.STAT:0x%X",I2C_I2STAT);
00547                                                 return;
00548                                         #else
00549                                                 WD_Reset();
00550                                                 return;
00551                                         #endif
00552                                         }
00553                                 #endif 
00554                                 str[0]=0;
00555                                 break;
00556                         case '+':
00557                                 Address++;
00558                                 printf("\n\r\tAddress = %d",(Address));WD_Reset();
00559                                 str[0]=0;
00560                                 break;
00561                         case '-':
00562                                 Address--;
00563                                 if (Address < 0) Address = 0;
00564                                 printf("\n\r\tAddress = %d",(Address));WD_Reset();
00565                                 str[0]=0;
00566                                 break;
00567                         case 'r':
00568                         case 'R':
00569                                 printf("\n\r\tRamtronReadByte(0x%x)=0x%x ('%c')",Address,(chTmp=RamtronReadByte(Address)),chTmp);WD_Reset();
00570                                 str[0]=0;
00571                                 break;
00572                         case 'w':
00573                         case 'W':
00574                                 printf("\n\r\tPress key to write [0x%X]",Address);WD_Reset();
00575                                 str[0]=0;
00576                                 do{ 
00577                                         WD_Reset();
00578                                         if ((UART0_LSR & 0x01)==1)
00579                                                 {str[0]=(char) UARTgetchar(0);str[1]='\x0';WD_Reset();break;}
00580                                                 else WD_Reset();
00581                                 }while(1);
00582                                 RamtronWriteByte(Address,str[0]);WD_Reset();
00583                                 printf("\n\r\tcheck Write Byte [0x%X]=%c",Address,RamtronReadByte(Address));WD_Reset();
00584                                 str[0]=0;
00585                                 break;
00586                         case 'e':
00587                         case 'E':
00588                                 printf("\n\rReturn");
00589                                 return;
00590                         case 'h':
00591                         case 'H':
00592                                 printf("\n\r%s",RAMTRON_HELP);
00593                                 str[0]=0;
00594                                 break;
00595                         default:
00596                                 str[0]=0;
00597                                 break;
00598                 }
00599                 if ((UART0_LSR & 0x01)==1)
00600                                 {str[0]=(char) UARTgetchar(0);str[1]='\x0';continue;}   
00601         }while(1);
00602 }
00603 #define C_MENU  "\n\r\ti-CansInit\n\ro-off\n\rx(1,2,3,4)-SendToCAN1,2,4 as station x\n\rr-read on CAN"
00604 void CANMenu(void)
00605 {
00606         char str[1]={'i',0};
00607         uint16_t uiStatus=0;
00608         #if 1
00609                 printf("%s",C_MENU);WD_Reset();
00610         #endif
00611         do{
00612                 WD_Reset();
00613                 switch(str[0])
00614                 {
00615                         case 'e':
00616                         case 'E':
00617                                 return;
00618                         case '1':
00619                                 SendToCAN1(1,1,(2),(3),(4),(5),(6));
00620                                 SendToCAN2(1,1,(2),(3),(4),(5),(6));
00621                                 SendToCAN4(1,1,(2),(3),(4),(5),(6));
00622                                 iAddress        =       1;
00623                                 printf("\n\rCAN station 1");
00624                                 str[0]=0;
00625                                 break;
00626                         case '2':
00627                                 SendToCAN1(2,2,(2),(3),(4),(5),(6));
00628                                 SendToCAN2(2,2,(2),(3),(4),(5),(6));
00629                                 SendToCAN4(2,2,(2),(3),(4),(5),(6));
00630                                 printf("\n\rCAN station 2");
00631                                 iAddress        =       2;
00632                                 str[0]=0;
00633                                 break;
00634                         case '3':
00635                                 printf("\n\rCAN station 3");
00636                                 SendToCAN1(3,3,(2),(3),(4),(5),(6));
00637                                 SendToCAN2(3,3,(2),(3),(4),(5),(6));
00638                                 SendToCAN4(3,3,(2),(3),(4),(5),(6));
00639                                 str[0]=0;
00640                                 iAddress        =       3;
00641                                 break;
00642                         case '4':
00643                                 printf("\n\rCAN station 4");
00644                                 SendToCAN1(4,4,(2),(3),(4),(5),(6));
00645                                 SendToCAN2(4,4,(2),(3),(4),(5),(6));
00646                                 SendToCAN4(4,4,(2),(3),(4),(5),(6));
00647                                 iAddress        =       4;
00648                                 str[0]=0;
00649                                 break;
00650                         case 'r':
00651                         case 'R':
00652                                 CanRead();
00653                                 str[0]=0;
00654                                 break;
00655                         case 'i':
00656                         case 'I':
00657                                 printf("\n\rCANs init");
00658                                 CansInit(uiStatus);
00659                                 str[0]=0;
00660                                 break;
00661                         case 'h':
00662                         case 'H':
00663                                 printf("%s",C_MENU);
00664                                 str[0]=0;
00665                                 break;
00666                         case 'o':
00667                         case 'O':
00668                                 uiStatus=CAN_Off(uiStatus);
00669                                 str[0]=0;
00670                                 break;
00671                         }
00672                 if ((UART0_LSR & 0x01)==1)
00673                         {str[0]=(char) UARTgetchar(0);str[1]='\x0';uiStatus=GetStatus();continue;}
00674                 WD_Reset();
00675         }while(1);
00676 }

Generated on Fri Sep 21 13:41:54 2007 for example1 by  doxygen 1.4.7