int main(void) { initTimeOut(); initQueue(); UART_init(); LCDInit(); clearMem(WHITE); LCDStart(); refresh(); while (1) { if (msg_flag) { if(RxBuffer[0] == 1){ printNewMsg(); START_TIMEOUT; } else if(RxBuffer[0] == 2){ uint8_t h = RxBuffer[1]-1; uint8_t m = RxBuffer[2]-1; uint8_t s = RxBuffer[3]-1; //since it's probably a bad idea to have a data value that's the same as the string terminator RTCinit(h,m,s); rtc_time_flag = 1; } msg_flag = 0; RxBuffer[0] = 0; }if (rtc_time_flag) { printTime(); rtc_time_flag = 0; } } }
//下一页处理函数 void CRecognitionTextView::OnNextPage() { // TODO: 在此添加命令处理程序代码 if (fileCount > 0) { if(index < fileCount-1) { int tempIndex = index; index += 1; if (index >= fileCount) { index = tempIndex; MessageBox(TEXT("后续页数已被删除,这已经是最后一张图片")); return; } filePath = fileDictionary + (CString)fileName[index]; //加载图片 clsCutInfo(); clearMem(); OnPaint(); } else{ MessageBox(TEXT("这已经是最后一张图片")); } } else { MessageBox(TEXT("请先加载图片")); } }
//上一页处理函数 void CRecognitionTextView::OnPreviousPage() { // TODO: 在此添加命令处理程序代码 if (fileCount > 0) { if(index > 0) //当前图片下标有效 { int tempIndex = index; index -= 1; if (index < 0) { index = tempIndex; MessageBox(TEXT("前续页数已被删除,这已经是第一张图片")); return; } filePath = fileDictionary + (CString)fileName[index]; //加载图片 clsCutInfo(); clearMem(); OnPaint(); } else{ MessageBox(TEXT("这是第一张图片")); } } else { MessageBox(TEXT("请先加载图片")); } }
// Main demo process void Demo(PCIE_HANDLE hPCIe, char *filename) { BITMAPINFOHEADER info; printf("\n\n"); if(!WriteImage(hPCIe, filename, &info)) return; //dancing.bmp if(!WriteInfo2(hPCIe, &info)) return; //dancing.bmp if(!WriteStartByte(hPCIe)) return; //printf("\nNow press **KEY1** on board to start processing.\n"); while(!checkImageDone(hPCIe)); printf("\nProcessing finished.\n"); if(!NewReadImage(hPCIe, &info)) return; //dancing.bmp if(!clearMem(hPCIe, &info)) return; printf("To copy the output image to your own account, use\n scp out.bmp [email protected]:~/Desktop/. \n"); printf("\n\n"); return; }
void printNewMsg() { STOP_TIMEOUT; clearMem (WHITE); setTextSize(3); fillRect(0, 0, 400, (textsize * 8) + Y_PADDING, BLACK); setTextColor(WHITE, BLACK); setCursor(X_PADDING, Y_PADDING / 2); writeString("New Message!"); setCursor(X_PADDING, (textsize * 8) + Y_PADDING); setTextSize(2); setTextColor(BLACK, WHITE); writeString((char*) (RxBuffer+1)); refresh(); setCursor(X_PADDING, 0); enqeue ((uint8_t *)(RxBuffer+1)); memset(RxBuffer,0,201); }
void printTime() { getTime(&hour, &minute); if(hour >=0 || minute >=0){ timestring[1] = (hour / 10) + 48; timestring[2] = (hour % 10) + 48; timestring[4] = (minute / 10) + 48; timestring[5] = (minute % 10) + 48; } clearMem (WHITE); setTextSize(8); setCursor(30, Y_PADDING); writeString(timestring); setCursor(X_PADDING, textsize * 8); setTextSize(3); for (i = 0; i < QUEUE_SIZE / 2; i++) { write(i + 49); write(':'); writeString((char *) getMsg(i)); setCursor(X_PADDING, cursor_y + 8 * textsize); } refresh(); }