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

📄 main.c

📁 用于at91sam9261EK的串口通信代码实例
💻 C
字号:
#include "AT91SAM9261.h"
#include "lib_AT91SAM9261.h"
#include <string.h>

#define AT91C_BAUDRATE_115200	115200
#define AT91C_MASTER_CLOCK 	99300000
#define AT91C_US_ASYNC_MODE ( AT91C_US_USMODE_NORMAL + \
                        AT91C_US_NBSTOP_1_BIT + \
                        AT91C_US_PAR_NONE + \
                        AT91C_US_CHRL_8_BITS + \
                        AT91C_US_CLKS_CLOCK )

void delay()
{
  unsigned int i;
  for(i=0;i<2000000;i++);
}



int AT91F_Putc(int ch) 
{
    while (!AT91F_US_TxReady((AT91PS_USART)AT91C_BASE_US1));
    AT91F_US_PutChar((AT91PS_USART)AT91C_BASE_US1, (char)ch);
    return ch; 
}

int AT91F_Getc() 
{
    while(!AT91F_US_RxReady((AT91PS_USART)AT91C_BASE_US1));
    return((int)AT91F_US_GetChar((AT91PS_USART)AT91C_BASE_US1));
}

void AT91F_US1_Printstr(char *strbuf)
{
         while(*strbuf!='\0')
              {
                 while(!AT91F_US_TxReady((AT91PS_USART)AT91C_BASE_US1));
                 AT91F_US_PutChar((AT91PS_USART)AT91C_BASE_US1,*strbuf++);
               }
          while(!((AT91C_BASE_US1->US_CSR) & AT91C_US_TXEMPTY) );
}

int main()
{
  char  ch[]="my usart test!!!";
  char  ch1[]={0x0d,0x0a,'\0'};
  
  AT91F_US1_CfgPMC ();
  AT91F_US1_CfgPIO ();
  AT91F_US_Configure(AT91C_BASE_US1,
                 AT91C_MASTER_CLOCK,
                 AT91C_US_ASYNC_MODE,
                 AT91C_BAUDRATE_115200,
                 0);
  AT91F_US_ResetRx((AT91PS_USART) AT91C_BASE_US1);
  AT91F_US_ResetTx((AT91PS_USART) AT91C_BASE_US1);
  
  while(1) 
  {
   char c1='a';
   int c=0x31;
/*   *AT91C_PIOA_PER=0x00018000;
   *AT91C_PIOA_OER=0x00018000;
   *AT91C_PIOA_PPUDR=0x00018000;
   *AT91C_PIOA_CODR=0x00018000;//全亮*/
   
   
   AT91F_Putc(c1);
   AT91F_Putc(c);
   c1=AT91F_Getc();
   AT91F_Putc(c1);
   AT91F_Putc(c);
   AT91F_US1_Printstr(ch);
   AT91F_US1_Printstr(ch1);
   
/*   *AT91C_PIOA_SODR=0x00018000;//全灭*/
   
  
  }

  
  return 0;
}

⌨️ 快捷键说明

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