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

📄 oem_pym.c

📁 用MSP430(C)写的红外抄表程序,是初学者好代码
💻 C
字号:
/******************************************************************************/
//功能:读取模块信息
/******************************************************************************/
#include <msp430x14x.h>
 void  rxon_txoff(void)
  {
    ME2 |= UTXE0;
    ME2 &= ~URXE0;   //set TXEN
  }

 void  rxoff_txon(void)
 {
   ME2 &= ~UTXE0;
   ME2 |= URXE0; 
 }
/*
 void ser_init(void)
 {
   //USART initialization
   //Communication Parameters:8 Data,2 Stop,No parity
   //USART Receiver:ON
   //USART Transmitter:Off
   //USART Mode:Asynchronous
   //USART Band Rate:19200
   
   UCSRA = 0x00;
   UCSRB = 0x90;
   UCSRC = 0x8e;
   UBRRH = 0x00;
   UBRRL = 0x0b;
 }
*/
 void cmd_interperter(void)
 {
   char buffer[2],i;
   rxoff_txon();
   putchar(0x7f);
   putchar(0x01);
   putchar(0x21);
   rxon_txoff();
   
   buffer[0] = getchar();
   buffer[1] = getchar();
   
   for(i=0;i<8;i++)
   {
     buffer[0] = buffer[0]>>1; //read first byte
   }
   
   for(i=0;i<8;i++)
   {
     buffer[1] = buffer[1]>>1; //read second byte
   }
 }

  void Init_UART1(void)
   {
    //USART initialization
    //Communication Parameters:8 Data,2 Stop,No parity
    //USART Receiver:ON
    //USART Transmitter:Off
    //USART Mode:Asynchronous
    //USART Band Rate:19200
	  //将寄存器的内容清零
      U0CTL = 0X00;	
	  //数据位为8bit
      U0CTL += CHAR;			
    
	 //将寄存器的内容清零
      U0TCTL = 0X00;	
	 //波特率发生器选择SMCLK
      U0TCTL += SSEL1;			
    
	//波特率为19200
      UBR0_0 = 0X36;			
      UBR1_0 = 0X00;
	//调整寄存器
      UMCTL_0 = 0X6b;			

	//使能UART1的TXD和RXD
      ME1 |= UTXE0 + URXE0; 
	//使能UART1的RX中断
      //IE2 |= URXIE1;	
	//使能UART1的TX中断
      //IE2 |= UTXIE1;			
    
	//设置P3.6为UART1的TXD
      P3SEL |= BIT4;	
	//设置P3.7为UART1的RXD
      P3SEL |= BIT5;			
    
	//P3.6为输出管脚
      P3DIR |= BIT5;		
      P3DIR &= ~BIT4;	
      return;
}

 void  main(void)
 {
    WDTCTL = WDTPW + WDTHOLD;
    
   Init_UART1();
   while(1)
   {
    cmd_interperter();
   }
 }


⌨️ 快捷键说明

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