查看: 2229|回复: 4

[分享] LPC4337之UART收发实验(Polling)

[复制链接]
  • TA的每日心情

    2017-1-4 08:05
  • 签到天数: 11 天

    [LV.3]偶尔看看II

    85

    主题

    1629

    帖子

    1

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    2569

    优秀版主

    最后登录
    2019-3-28
    发表于 2016-12-16 19:29:52 | 显示全部楼层 |阅读模式
    LPC4337之UART收发实验(Polling)

       上次我们使用LPC4337跑了下流水灯,这次我们来跑下他的串口(Polling方式),接下来先看下LPC43XX系列串口的特点:
       •16字节接收和发送FIFO。
       •寄存器位置符合550行业标准。
       •接收器FIFO触发点为1,4,8和14字节。
       •内置波特率发生器。
       •UART模式允许实现软件或硬件流控制。
       •支持输出使能的RS-485 / EIA-485 9位模式。
       •支持同步模式UART(USART)。
       •IrDA接口(仅限USART3)。
       •DMA支持。
       •智能卡接口。
    使用步骤:
       1.通过万能的SCU模块设置复用引脚功能为串口
       2.设置串口波特率等参数
       3.配置串口FIFO
       4.接收数据(发送数据需要打开发送功能)
    代码
    1. /*
    2.      *  选择引脚复用
    3.      */
    4.     scu_pinmux(2, 0, MD_PDN, FUNC1);                                    /* P2.1->UART0_TXD              */
    5.     scu_pinmux(2, 1, MD_PLN | MD_EZI | MD_ZI, FUNC1);   
    6. /*
    7.      *  串口参数配置
    8.      *  Baudrate           = 9600bps
    9.      *  Word Length Select = 8 data bit
    10.      *  Stop Bit Select    = 1 Stop bit
    11.      *  Parity Select      = None parity
    12.      */
    13.     UARTConfigStruct.Baud_rate   = 115200;
    14.     UARTConfigStruct.Databits    = UART_DATABIT_8;
    15.     UARTConfigStruct.Parity      = UART_PARITY_NONE;
    16.     UARTConfigStruct.Stopbits    = UART_STOPBIT_1;
    17.     UARTConfigStruct.Clock_Speed = 0;
    18.     UART_Init(LPC_USART0,&UARTConfigStruct);
    19. /*
    20.      *  Config UART FIFO
    21.      *  FIFO_DMAMode    = DISABLE
    22.      *  FIFO_Level      = UART_FIFO_TRGLEV0
    23.      *  FIFO_ResetRxBuf = ENABLE
    24.      *  FIFO_ResetTxBuf = ENABLE
    25.      *  FIFO_State      = ENABLE
    26.      */
    27.     UARTFIFOConfigStruct.FIFO_DMAMode    = DISABLE;
    28.     UARTFIFOConfigStruct.FIFO_Level      = UART_FIFO_TRGLEV0;
    29.     UARTFIFOConfigStruct.FIFO_ResetRxBuf = ENABLE;
    30.     UARTFIFOConfigStruct.FIFO_ResetTxBuf = ENABLE;
    31.     UART_FIFOConfig(LPC_USART0, &UARTFIFOConfigStruct);
    32. /*  enable tx */
    33.     UART_TxCmd(LPC_USART0, ENABLE);
    34.     UART_Send(LPC_USART0, test, sizeof(test), BLOCKING);
    35. /**
    36. *UART Rev
    37. */
    38. UART_Receive(LPC_USART0, ucBuffer, sizeof(ucBuffer), NONE_BLOCKING);
    复制代码



    UART结构框图

    UART结构框图
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2022-12-12 12:24
  • 签到天数: 160 天

    [LV.7]常住居民III

    1

    主题

    226

    帖子

    0

    高级会员

    Rank: 4

    积分
    660
    最后登录
    2022-12-12
    发表于 2016-12-16 21:55:12 | 显示全部楼层
    支持一下
    哎...今天够累的,签到来了~
    回复

    使用道具 举报

  • TA的每日心情
    擦汗
    2017-10-15 13:16
  • 签到天数: 191 天

    [LV.7]常住居民III

    11

    主题

    664

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1722
    最后登录
    2017-10-15
    发表于 2016-12-17 09:19:41 | 显示全部楼层
    谢谢分享                        
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2017-1-18 20:00
  • 签到天数: 45 天

    [LV.5]常住居民I

    17

    主题

    262

    帖子

    0

    高级会员

    Rank: 4

    积分
    518
    最后登录
    2019-11-10
    发表于 2016-12-17 10:17:47 | 显示全部楼层
    谢谢分享
    回复

    使用道具 举报

  • TA的每日心情
    开心
    4 天前
  • 签到天数: 822 天

    [LV.10]以坛为家III

    71

    主题

    2452

    帖子

    24

    金牌会员

    Rank: 6Rank: 6

    积分
    5531
    最后登录
    2024-5-1
    发表于 2016-12-17 11:06:59 | 显示全部楼层
    谢谢分享
    该会员没有填写今日想说内容.
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2024-5-3 09:20 , Processed in 0.134197 second(s), 26 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表