stm32f051移植RT-Thread串口注意点

1. STM32_SRAM_SIZE  RAM的大小,051是8K

       #define STM32_SRAM_SIZE         8

2. 时钟配置,默认是8M,我的外接HSE晶振是24M,那需要修改倍频参数

     查看SetSysClock这个函数,

  RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_PREDIV1 | RCC_CFGR_PLLXTPRE_PREDIV1 | RCC_CFGR_PLLMULL2); 

3.  HSE_VALUE  ,这个值要根据HSE晶振实际值来改,不改,串口时钟不对,无法使用,切记

    #define HSE_VALUE    ((uint32_t)24000000) 

4. 串口接收DMA这块,参考bsp下面103系列来修改,基本都一致,几个注意点如下:

    stm32_putc和stm32_getc里面的寄存器和103不一样,需要修改下

static int stm32_putc(struct rt_serial_device *serial, char c)
{
    struct stm32_uart* uart;

    RT_ASSERT(serial != RT_NULL);
    uart = (struct stm32_uart *)serial->parent.user_data;

    if (serial->parent.open_flag & RT_DEVICE_FLAG_INT_TX)
    {
        if (!(uart->uart_device->ISR & USART_FLAG_TXE))
        {
     
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值