void NRF_FTLR( void ) // First Tx Last Rx { u8 i = 0; u8 Sta = ERROR; static u8 FSM_STA = 0; switch(FSM_STA) { /************************** FSM Tx **************************************/ case 0: // FSM_Tx // 資料寫入 TX BUF for(i=0; i<32; i++) { TxBuf[i] = RxBuf[i] + i; if(TxBuf[i]>220) TxBuf[i] = 0; } do { Sta = NRF_TxPacket(TxBuf); } while(Sta == NRF_STA_MAX_RT); // FSM_Tx End FSM_STA = 1; break; /************************** FSM Rx **************************************/ case 1: // FSM_Rx NRF_RX_Mode(); Sta = NRF_RxPacket(RxBuf); if(Sta == NRF_STA_RX_DR) { LED_B = !LED_B; } // FSM_Rx End FSM_STA = 2; break; /************************** FSM USART **************************************/ case 2: // FSM_USART Delay_10ms(20); RS232_SendStr((u8*)"\f"); RS232_SendStr((u8*)"***NRF_MODE_FTLR\r\n"); for(i=0; i<32; i++) { RS232_SendStr((u8*)"RxBuf["); RS232_SendNum(Type_D, 2, i); RS232_SendStr((u8*)"] = "); RS232_SendNum(Type_D, 3, TxBuf[i]); RS232_SendStr((u8*)"\r\n"); } RS232_SendStr((u8*)"\r\n"); // FSM_USART End FSM_STA = 0; break; } }
/*====================================================================================================*/ int main( void ) { int32_t Temp = 0; GPIO_Config(); TEMP_Config(); RS232_Config(); Delay_1ms(1); RS232_SendStr("\r\nHello World!\r\n\r\n"); while(1) { LED_1_Toggle(); LED_2_Toggle(); LED_3_Toggle(); LED_4_Toggle(); Delay_100ms(5); RS232_SendStr("Chip Temp : "); Temp = (TEMP_GetTemp()*25); RS232_SendNum(Type_D, 5, Temp); RS232_SendStr(" deg\r\n"); } }
/*=====================================================================================================*/ int main( void ) { SystemInit(); GPIO_Config(); ADC_Config(); RS232_Config(); while(1) { LED_G = ~LED_G; ADC_Average(ADC_AveTr); RS232_SendStr(USART3, (u8*)"ADC_1 = "); RS232_SendNum(USART3, Type_D, 5, ADC_AveTr[0]); RS232_SendStr(USART3, (u8*)"\r\n"); RS232_SendStr(USART3, (u8*)"ADC_2 = "); RS232_SendNum(USART3, Type_D, 5, ADC_AveTr[1]); RS232_SendStr(USART3, (u8*)"\r\n\r\n"); } }
/*=====================================================================================================*/ int main( void ) { u16 ADC_AVE[2] = {0}; SystemInit(); GPIO_Config(); ADC_Config(); RS232_Config(); while(1) { LED_G = !LED_G; Delay_100ms(1); ADC_Average(ADC_AVE, 128); RS232_SendStr((u8*)"\f"); RS232_SendStr((u8*)"ADC_I = "); RS232_SendNum(Type_D, 4, ADC_AVE[0]); RS232_SendStr((u8*)"\r\n"); RS232_SendStr((u8*)"ADC_V = "); RS232_SendNum(Type_D, 4, ADC_AVE[1]); RS232_SendStr((u8*)"\r\n"); } }
/*====================================================================================================*/ int main( void ) { u8 i = 0; SystemInit(); GPIO_Config(); RS232_Config(); while(1) { LED = !LED; i++; RS232_SendStr((u8*)"i = "); RS232_SendNum(Type_D, 3, i); RS232_SendStr((u8*)"\r\n"); if(i==255) i = 0; Delay_100ms(1); } }
int main( void ) { u32 i = 0; u8 FileNum = 0; u8 ReadBuf[128] = {0}; u8 WriteData[50] = "ABCDEFG"; SystemInit(); GPIO_Config(); RS232_Config(); R61581_Config(); R61581_Init(); LED_R = 1; LED_G = 1; LED_B = 1; LED_Y = 1; LED_R = 0; LCD_Clear(BLACK); // SD Card Init Info #define Axis_X 10 #define Axis_Y 0 LCD_PutStr(Axis_X, Axis_Y+16*0, (u8*)"-----------------------", ASCII1608, WHITE, BLACK); LCD_PutStr(Axis_X, Axis_Y+16*1, (u8*)" SDIO SD Fatfs demo", ASCII1608, WHITE, BLACK); LCD_PutStr(Axis_X, Axis_Y+16*2, (u8*)"-----------------------", ASCII1608, WHITE, BLACK); LCD_PutStr(Axis_X, Axis_Y+16*3, (u8*)" SD Init ... ", ASCII1608, WHITE, BLACK); RS232_SendStr(USART2, (u8*)" \r\n"); RS232_SendStr(USART2, (u8*)"----------------------\r\n"); RS232_SendStr(USART2, (u8*)"----------------------\r\n"); RS232_SendStr(USART2, (u8*)" SDIO SD FatFs demo\r\n"); RS232_SendStr(USART2, (u8*)"----------------------\r\n"); RS232_SendStr(USART2, (u8*)"----------------------\r\n\r\n"); RS232_SendStr(USART2, (u8*)" SD Init ... "); while(SD_Init() != SD_OK) { LCD_PutStr(Axis_X+8*13, Axis_Y+16*3, (u8*)"Failed!!", ASCII1608, WHITE, BLACK); RS232_SendStr(USART2, (u8*)"Failed!!\r\n"); while(1) { LED_R = ~LED_R; Delay_100ms(2); } } LCD_PutStr(Axis_X+8*13, Axis_Y+16*3, (u8*)"OK!!", ASCII1608, WHITE, BLACK); RS232_SendStr(USART2, (u8*)"OK!!\r\n\r\n"); LCD_PutStr(Axis_X, Axis_Y+16*5, (u8*)"---- SD Init Info -----", ASCII1608, WHITE, BLACK); LCD_PutStr(Axis_X, Axis_Y+16*6, (u8*)" Capacity : ", ASCII1608, WHITE, BLACK); LCD_PutNum(Axis_X+8*12, Axis_Y+16*6, Type_D, 5, SDCardInfo.CardCapacity>>20, WHITE, BLACK); LCD_PutStr(Axis_X+8*17, Axis_Y+16*6, (u8*)" MB", ASCII1608, WHITE, BLACK); LCD_PutStr(Axis_X, Axis_Y+16*7, (u8*)" CardBlockSize : ", ASCII1608, WHITE, BLACK); LCD_PutNum(Axis_X+8*17, Axis_Y+16*7, Type_D, 5, SDCardInfo.CardBlockSize, WHITE, BLACK); LCD_PutStr(Axis_X+8*22, Axis_Y+16*7, (u8*)" ", ASCII1608, WHITE, BLACK); LCD_PutStr(Axis_X, Axis_Y+16*8, (u8*)" CardType : ", ASCII1608, WHITE, BLACK); LCD_PutNum(Axis_X+8*12, Axis_Y+16*8, Type_D, 5, SDCardInfo.CardType, WHITE, BLACK); LCD_PutStr(Axis_X+8*17, Axis_Y+16*8, (u8*)" ", ASCII1608, WHITE, BLACK); LCD_PutStr(Axis_X, Axis_Y+16*9, (u8*)" RCA : ", ASCII1608, WHITE, BLACK); LCD_PutNum(Axis_X+8*7, Axis_Y+16*9, Type_D, 5, SDCardInfo.RCA, WHITE, BLACK); LCD_PutStr(Axis_X+8*12, Axis_Y+16*9, (u8*)" ", ASCII1608, WHITE, BLACK); LCD_PutStr(Axis_X, Axis_Y+16*10, (u8*)"-----------------------", ASCII1608, WHITE, BLACK); RS232_SendStr(USART2, (u8*)"-----SD Init Info-----\r\n"); RS232_SendStr(USART2, (u8*)" Capacity : "); RS232_SendNum(USART2, Type_D, 5, SDCardInfo.CardCapacity>>20); RS232_SendStr(USART2, (u8*)" MB\r\n"); RS232_SendStr(USART2, (u8*)" CardBlockSize : "); RS232_SendNum(USART2, Type_D, 5, SDCardInfo.CardBlockSize); RS232_SendStr(USART2, (u8*)"\r\n"); RS232_SendStr(USART2, (u8*)" CardType : "); RS232_SendNum(USART2, Type_D, 5, SDCardInfo.CardType); RS232_SendStr(USART2, (u8*)"\r\n"); RS232_SendStr(USART2, (u8*)" RCA : "); RS232_SendNum(USART2, Type_D, 5, SDCardInfo.RCA); RS232_SendStr(USART2, (u8*)"\r\n"); RS232_SendStr(USART2, (u8*)"----------------------\r\n"); RS232_SendStr(USART2, (u8*)"\r\n"); Delay_100ms(1); //////////////////// Wait while(KEY_S2 != 1){ LED_G = ~LED_G; Delay_100ms(5); } LED_G = 0; LCD_Clear(BLACK); // Read Directory File LCD_PutStr(Axis_X, Axis_Y+16*0, (u8*)"-----------------------", ASCII1608, WHITE, BLACK); LCD_PutStr(Axis_X, Axis_Y+16*1, (u8*)" SD_Card Read Directory", ASCII1608, WHITE, BLACK); LCD_PutStr(Axis_X, Axis_Y+16*2, (u8*)"-----------------------", ASCII1608, WHITE, BLACK); RS232_SendStr(USART2, (u8*)"----------------------\r\n"); RS232_SendStr(USART2, (u8*)" SD_Card Read Directory File\r\n"); RS232_SendStr(USART2, (u8*)"----------------------\r\n\r\n"); res = f_mount(&FatFs, "", 1); res = f_opendir(&dirs, "0:/"); res = f_readdir(&dirs, &finfo); while(res!= FR_OK) { LCD_PutStr(Axis_X, Axis_Y+16*3, (u8*)" Fatfs failed!!", ASCII1608, WHITE, BLACK); RS232_SendStr(USART2, (u8*)" FatFs failed!!\r\n"); while(1) { LED_R = ~LED_R; Delay_100ms(2); } } LCD_PutStr(Axis_X, Axis_Y+16*3, (u8*)" File name : ", ASCII1608, WHITE, BLACK); RS232_SendStr(USART2, (u8*)" File name : \r\n"); while(finfo.fname[0]) { f_readdir(&dirs, &finfo); if(!finfo.fname[0]) break; if(FileNum<11) { LCD_PutStr(Axis_X, Axis_Y+16*(3+FileNum), (u8*)" ... ", ASCII1608, WHITE, BLACK); LCD_PutStr(Axis_X+8*5, Axis_Y+16*(3+FileNum), (u8*)finfo.fname, ASCII1608, WHITE, BLACK); } else if((FileNum>=11) && (FileNum<22)) { LCD_PutStr(Axis_X+200, Axis_Y+16*(3+FileNum-11), (u8*)" ... ", ASCII1608, WHITE, BLACK); LCD_PutStr(Axis_X+8*5+200, Axis_Y+16*(3+FileNum-11), (u8*)finfo.fname, ASCII1608, WHITE, BLACK); } else { FileNum = 0; break; } FileNum++; RS232_SendStr(USART2, (u8*)" ... "); RS232_SendStr(USART2, (u8*)finfo.fname); RS232_SendStr(USART2, (u8*)"\r\n"); } Delay_100ms(1); //////////////////// Wait while(KEY_S2 != 1){ LED_B = ~LED_B; Delay_100ms(5); } LED_B = 0; LCD_Clear(BLACK); // Write File LCD_PutStr(Axis_X, Axis_Y+16*0, (u8*)"-----------------------", ASCII1608, WHITE, BLACK); LCD_PutStr(Axis_X, Axis_Y+16*1, (u8*)" SD_Card Write Data", ASCII1608, WHITE, BLACK); LCD_PutStr(Axis_X, Axis_Y+16*2, (u8*)"-----------------------", ASCII1608, WHITE, BLACK); RS232_SendStr(USART2, (u8*)"-----------------------\r\n"); RS232_SendStr(USART2, (u8*)" SD_Card Write Data File\r\n"); RS232_SendStr(USART2, (u8*)"-----------------------\r\n\r\n"); LCD_PutStr(Axis_X, Axis_Y+16*3, (u8*)" f_open ... ", ASCII1608, WHITE, BLACK); RS232_SendStr(USART2, (u8*)" f_open ... "); res = f_open(&file,"SDCard_K.txt", FA_OPEN_ALWAYS | FA_READ | FA_WRITE); if(res==FR_OK) { LCD_PutStr(Axis_X+8*12, Axis_Y+16*3, (u8*)"OK!!", ASCII1608, WHITE, BLACK); RS232_SendStr(USART2, (u8*)"OK!!\r\n"); } else { LCD_PutStr(Axis_X+8*12, Axis_Y+16*3, (u8*)"failed!!", ASCII1608, WHITE, BLACK); RS232_SendStr(USART2, (u8*)"failed!!\r\n"); } LCD_PutStr(Axis_X, Axis_Y+16*4, (u8*)" f_write ... ", ASCII1608, WHITE, BLACK); RS232_SendStr(USART2, (u8*)" f_write ... "); res = f_write(&file, WriteData, 20, &i); if(res==FR_OK) { LCD_PutStr(Axis_X+8*13, Axis_Y+16*4, (u8*)"OK!!", ASCII1608, WHITE, BLACK); RS232_SendStr(USART2, (u8*)"OK!!\r\n"); } else { LCD_PutStr(Axis_X+8*13, Axis_Y+16*4, (u8*)"failed!!", ASCII1608, WHITE, BLACK); RS232_SendStr(USART2, (u8*)"failed!!\r\n"); } file.fptr = 0; LCD_PutStr(Axis_X, Axis_Y+16*5, (u8*)" f_read ... ", ASCII1608, WHITE, BLACK); RS232_SendStr(USART2, (u8*)" f_read ... "); res = f_read(&file, ReadBuf, 100, &i); if(res==FR_OK) { LCD_PutStr(Axis_X+8*12, Axis_Y+16*5, (u8*)"OK!!", ASCII1608, WHITE, BLACK); RS232_SendStr(USART2, (u8*)"OK!!\r\n"); } else { LCD_PutStr(Axis_X+8*12, Axis_Y+16*5, (u8*)"failed!!", ASCII1608, WHITE, BLACK); RS232_SendStr(USART2, (u8*)"failed!!\r\n"); } f_close(&file); LCD_PutStr(Axis_X, Axis_Y+16*7, (u8*)" Read String : ", ASCII1608, WHITE, BLACK); LCD_PutStr(Axis_X+8*1, Axis_Y+16*8, (u8*)ReadBuf, ASCII1608, WHITE, BLACK); RS232_SendStr(USART2, ReadBuf); while(1) { LED_Y = ~LED_Y; Delay_100ms(2); } }