查看: 1603|回复: 1

[原创] 【我眼中的LPC】USART之发送

[复制链接]
  • TA的每日心情
    郁闷
    2021-3-10 19:44
  • 签到天数: 7 天

    [LV.3]偶尔看看II

    126

    主题

    525

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    2018
    最后登录
    2023-12-25
    发表于 2016-11-11 09:54:54 | 显示全部楼层 |阅读模式
    本帖最后由 MDebug 于 2016-11-11 22:23 编辑

    一、LPC824 USART的特点。
    Feature如UM10800中所述:
    1.jpg
    •7,8或9个数据位和1或2个停止位
    •同步模式,具有主或从操作。包括数据相位选择和连续时钟选项。
    •具有软件地址比较的多处理器/多点(9位)模式。
    •RS-485收发器输出使能。
    •奇偶校验生成和检查:奇,偶或无。
    •在异步模式下软件可选择5到16个时钟的过采样。
    •一个发送和一个接收数据缓冲区。
    •RTS / CTS用于自动流量控制的硬件信号。软件流控制可以使用Delta CTS检测,发送禁止控制和任何GPIO执行RTS输出。
    •可以从单个寄存器读取接收的数据和状态
    •中断生成和检测。
    •接收数据是3个样本中的2个。一个样品不同时设置状态标志。
    •内置波特率发生器,具有自动波特率功能。
    •小数速率分频器在所有USART之间共享。
    •可用于接收器就绪,发送器就绪,接收器空闲,切换的中断
    接收器断点检测,成帧错误,奇偶校验错误,溢出,欠载,增量CTS
    检测和接收机采样噪声。
    •用于测试数据和流量控制的环回模式。
    •USARTn发送和接收功能可以通过系统DMA操作控制器
    二、一般配置
    2.jpg
    配置的一般过程如图所示。
    1.在SYSAHBCLKCTRL寄存器中,将位3设置为5以使能时钟寄存器接口。
    2.使用PRESETCTRL寄存器清除USART外设复位。
    3.在NVIC中#3至#5中启用或禁用USART中断。
    4.配置USART引脚功能。
    5.配置USART时钟和波特率。
    6.发送和接收线连接到DMA请求线。
    波特率的计算方法:分两种方式:异步方式和同步方式
    0 in the common USART">1.通过在USART中写入值FRGCLKDIV> 0来配置UART时钟小数波特率分频器寄存器。共用USART的分频主时钟。
    2.如果需要小数值来获得特定的波特率,请编制小数分频器。小数分频器值是MULT / DIV的分数。 MULT和DIV
    值在FRGCTRL寄存器中进行赋值。 DIV值必须为用固定值256赋值。
    U_PCLK = FRGCLKDIV /(1+(MULT / DIV))
    以下规则适用于MULT和DIV:
    - 通过对值为的FRGCTRL寄存器进行编程,始终将DIV设置为2560xFF。
    - 将MULT设置为0到255之间的任何值
    3.在异步模式下:在USARTn BRG中配置波特率分频器BRGVAL寄存器。波特率分频器将公共USART外设时钟除以a因子16乘以波特率值提供
    波特率= U_PCLK / 16 x BRGVAL。
    4.在同步模式下:串行时钟为Un_SCLK = U_PCLK / BRGVAL。
    三、例程
    1. #include "mbed.h"
    2. uint16_t data;
    3. Serial ser(P0_4, P0_0);
    4. int main() {
    5.     ser.baud(115200);
    6.     while(1)
    7. {
    8.         ser.printf("\r\nPlease input:");
    9.         ser.scanf("%d", &dat);
    10.         ser.printf("\r\nThe User input is %d", dat);
    11.     }
    12. }
    复制代码
    接收函数在昨天的ADC的帖子中已经讲述。
                                                                                 山东交通学院

    很开心
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2021-7-30 13:41
  • 签到天数: 28 天

    [LV.4]偶尔看看III

    1

    主题

    161

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    387
    最后登录
    2021-12-16
    发表于 2016-11-11 10:19:31 | 显示全部楼层
    谢谢分享!!!
    该会员没有填写今日想说内容.
    回复

    使用道具 举报

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

    本版积分规则

    关闭

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

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

    GMT+8, 2024-5-13 09:40 , Processed in 0.133492 second(s), 23 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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