⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sample.c

📁 关于手持机与射频芯片的红外通信程序
💻 C
字号:

#include <stdio.h>
#include <stdlib.h>
#include <api.h>
#include <string.h>
#include <ctype.h>
#include "keybrd.h"

#define IRDA_TEST
#define IDLE_FOR_4S 256

char chip[10];
// delay subroutine:
void delay_n_ms(int mscnt) {
  for (;mscnt > 0; mscnt--)
    delay_1ms();
}

// puts via UART
void UART_puts(char *lb) {
  while (*(lb)) {
    while(UART_send_char(*lb));
    lb++;
  }
}
void IR_test(void)
{
  int ch_read=0;
  typ_msg_word msg_buffer;
  char stmp[60];  

  UART_init(UART_IRDA_ON | UART_ON | UART_8_DATA_BITS | UART_BAUD_115200);
  UART_fcntl(UART_fcntl(UART_F_INQ) | UART_F_NO_CTS);
  SPI_set_595_EN(0); 

  while (1) {
    msg_buffer.s_word = sys_msg(SM_STAY_AWAKE);
    if(msg_buffer.bits.time_out)
    {
    	goto_xy(0,3);
    	Disp_write_str("                    ");
    	stmp[ch_read]=0;
    	goto_xy(0,3);
    	Disp_write_str(stmp);
    	ch_read=0;
    }
    if (msg_buffer.bits.comm_data) 
    {
          typ_UART_stat_word Ustat;
	  do 
	  {
	    stmp[ch_read++]= UART_get_char();
	    Ustat.l_word = UART_stat();
	  } while (Ustat.bits.buff_data_available);
	  SPT_set(8);
    }
    if (msg_buffer.bits.key_available) 
    {
       unsigned char tb;
       tb = KEY_read();
       goto_xy(0,3);
       Disp_write_str("        ");
       goto_xy(0,3);
       Disp_write_str(terminal_key_strings[key_translated(tb)]);
       UART_puts(terminal_key_strings[key_translated(tb)]);

    }
  }  
  SPI_set_595_EN(1);  
  UART_init(UART_OFF);
  

}
main(void)
{
      typ_msg_word msg_buffer;

      clr_scr();
      Disp_set_font_attribute(DISP_FONT_TYPE_5x7_ENG);
      goto_xy(20,1);
      Disp_write_str("IR test");
      sm_setting(MSK_KEY_UP | MSK_KEY_DOWN);
      KEY_init(KEY_BEEP_KEY | KEY_AUTO_EL_ON);
      SPT_set(16);
      while (1) 
      {

		msg_buffer.s_word = sys_msg(SM_GOTO_SLEEP);
		if(msg_buffer.bits.time_out)
		{
			IR_test();	
		}

      }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -