PIC C を使用して PIC18F4455 マイクロコントローラをプログラミングしています。USB_CDC.h ヘッダー ファイルを使用しています。「W250025」などの文字列を送信するプログラムがコンピュータ上にあります。ただし、usb_cdc_getc() を使用して最初の文字を取得すると、フリーズします。プログラムが 'T' のみを送信する場合があるため、実際には最初の文字だけを取得したいと考えています。
私のコードはなぜ過去に実行されないのですか? received=usb_cdc_getc(); 「W250025」を送ると?
if (usb_cdc_kbhit())
{
//printf(lcd_putc, "Check 3"); delay_ms(3000); printf(lcd_putc, "\f");
received = usb_cdc_getc();
printf(lcd_putc, "Received "); lcd_putc(received); delay_ms(3000); printf(lcd_putc, "\f");
if (received == 'W'){ //waveform
disable_interrupts(INT_TIMER1);
set_adc_channel(0);
load_and_print_array(read_into_int(), read_into_int());}
else if (received == 'T'){ //temperature
set_adc_channel(1);
enable_interrupts(INT_TIMER1);}
}