zoukankan      html  css  js  c++  java
  • 基于ATxmega128的ASF串口应用

    1、编辑串口的配置参数,一般将这些参数放在conf_usart.h配置头文件中,本程序将这些参数放在user_board.h头文件中

    #define USART_SERIAL &USARTD0                 //使用USARTD0作为串口
    #define USART_SERIAL_BAUDRATE 9600                 //波特率设置为9600
    #define USART_SERIAL_CHAR_LENGTH USART_CHSIZE_8BIT_gc   //字符长度8位
    #define USART_SERIAL_PARITY USART_PMODE_DISABLED_gc    //无校验位
    #define USART_SERIAL_STOP_BIT false                  //1位停止位

    2、发送一个字符a;

    int main (void)
    {
    sysclk_init(); //系统时钟初始化,默认主时钟;
    board_init(); //板卡初始化,打开IO时钟,初始化引脚等

    static usart_rs232_options_t USART_SERIAL_OPTIONS ={
    .baudrate = USART_SERIAL_BAUDRATE,
    .charlength = USART_SERIAL_CHAR_LENGTH,
    .paritytype = USART_SERIAL_PARITY,
    .stopbits = USART_SERIAL_STOP_BIT
    };

    sysclk_enable_module(SYSCLK_PORT_D,PR_USART0_bm);

    usart_init_rs232(USART_SERIAL, &USART_SERIAL_OPTIONS); //串口初始化

    usart_putchar(USART_SERIAL,'a');//通过串口发送一个字符

    }

    3、接收一个字符,并回传

    int main (void)
    {
    /* Insert system clock initialization code here (sysclk_init()). */
    sysclk_init(); //系统时钟初始化,默认主时钟;
    board_init(); //板卡初始化,打开IO时钟,初始化引脚等

    static usart_rs232_options_t USART_SERIAL_OPTIONS ={
    .baudrate = USART_SERIAL_BAUDRATE,
    .charlength = USART_SERIAL_CHAR_LENGTH,
    .paritytype = USART_SERIAL_PARITY,
    .stopbits = USART_SERIAL_STOP_BIT
    };

    sysclk_enable_module(SYSCLK_PORT_D,PR_USART0_bm);
    usart_init_rs232(USART_SERIAL, &USART_SERIAL_OPTIONS); //串口初始化
    received_byte = usart_getchar(USART_SERIAL);//接收一个字符
    usart_putchar(USART_SERIAL,received_byte);//将接收的字符发出

    /* Insert application code here, after the board has been initialized. */
    }

  • 相关阅读:
    Linux 打印可变参数日志
    am335x system upgrade kernel f-ram fm25l16b(十六)
    spi signal analyze using logic analyzer
    learning armbian steps(3) ----- armbian 文件系统定制思路
    learning armbian steps(2) ----- armbian 镜像编译
    learning armbian steps(1) ----- armbian 入门知识基础学习
    create rootfs.img using loop device
    learning docker steps(8) ----- docker network 初次体验
    learning docker steps(7) ----- docker registry 搭建
    learning docker steps(6) ----- docker 镜像加速
  • 原文地址:https://www.cnblogs.com/FZLGYZ/p/10980904.html
Copyright © 2011-2022 走看看