1. 程式人生 > 其它 >超低功耗mcu晶片AMA3B 開發備忘之初串列埠列印

超低功耗mcu晶片AMA3B 開發備忘之初串列埠列印


一 前言
  對於軟體工程師來說,沒什麼比看到一個hello world的列印更讓人感覺興奮了。除錯晶片,很多人都知道,hello world這個列印意味著什麼。   二 軟硬體準備   1 一個AMA3B的開發板,記得把GPIO22,GPIO23接到串列埠上,如下圖所示: 2 準備好下載bin檔案的工具JLINK,這個以前寫過,這裡就不做贅述了。 3 下載成功之後,開啟串列埠工具,上電,即可看到如下的日誌資訊,說明系統已經完全起來了。 
三 原始碼分析   1 串列埠的初始化,可以看出軟硬體的對映關係
    //
    // Initialize the printf interface for UART output.
    //
    CHECK_ERRORS(am_hal_uart_initialize(0, &phUART));



    CHECK_ERRORS(am_hal_uart_power_control(phUART, AM_HAL_SYSCTRL_WAKE, false));


    am_hal_uart_clock_speed_e eUartClockSpeed 
= eUART_CLK_SPEED_DEFAULT ; CHECK_ERRORS(am_hal_uart_control(phUART, AM_HAL_UART_CONTROL_CLKSEL, &eUartClockSpeed)); CHECK_ERRORS(am_hal_uart_configure(phUART, &g_sUartConfig)); // // Enable the UART pins. // am_hal_gpio_pinconfig(AM_BSP_GPIO_COM_UART_TX, g_AM_BSP_GPIO_COM_UART_TX); am_hal_gpio_pinconfig(AM_BSP_GPIO_COM_UART_RX, g_AM_BSP_GPIO_COM_UART_RX);

 

2 串列埠列印函式  
    while (1)
    {
        /* code */
        am_util_stdio_printf("Hello World! icnt:%d \n\r",icnt);
        am_util_delay_ms(1000);
        icnt++;
        if(icnt > 10)
        {
            break;
        }

    }

  

一個怕看不出來,所以多列印幾個。   四 總結備忘      晶片一旦hello world出來了,就如一個大廈地基已經打好了,具體要建什麼樣子的樓,就看實際的需求了。 順便贊一個,這個晶片用起來非常絲滑。高手寫的程式碼啊。