0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【愛普特APT32F110開發(fā)板工程師測評1】printf花式表白

愛普特微電子 ? 2023-03-05 10:35 ? 次閱讀

APT32F110X 系列串口功能強大:可以完成STM32串口功能,驅(qū)動AT物聯(lián)網(wǎng)模組不在話下。

資源串行通信接口:1 × I2C,3 x UART,1 x USART,1 x SPI,1 x SIO

通用異步收發(fā)器(UART)

3個通道

8位數(shù)據(jù)長度,支持校驗位(奇偶校驗,0/1校驗)

單獨的8x8位收發(fā)FIFO

編程的波特率


同步異步收發(fā)器(USART)

  • 1個通道
  • 支持5、6、7和8位數(shù)據(jù)長度
  • 單獨的8x8位收發(fā)FIFO可編程的波特率
  • 校驗位,幀檢測和緩存溢出錯誤報告
  • 支持Loop-back模式
  • 支持同步全雙工模式
  • 支持LIN總線協(xié)議:LIN1.2或者LIN2.0
  • 支持智能卡協(xié)議:ISO7816-3兼容

28b3dd58-b91d-11ed-ad0d-dac502259ad0.png編程實踐:

時鐘配置

void system_init(void)

{

CK_CPU_DISALLNORMALIRQ;

csi_iwdt_close();//close iwdt

csi_sysclk_config();//sysclk config

csi_get_sclk_freq();

csi_get_pclk_freq();

csi_tick_init();

csi_clk_calib();

CK_CPU_ENALLNORMALIRQ;

}

串口配置:115200波特率

__attribute__((weak)) void board_init(void)

{

//console config for print

console.uart_id = (uint32_t)CONSOLE_IDX;

console.baudrate = 115200U;

console.tx.pin = CONSOLE_TXD;

console.tx.func = CONSOLE_TXD_FUNC;

console.rx.pin = CONSOLE_RXD;

console.rx.func = CONSOLE_RXD_FUNC;

console.uart = (csp_uart_t *)(APB_UART0_BASE + CONSOLE_IDX * 0x1000);

console_init(&console);

#ifdef CONFIG_USER_PM//low power manage switch

if(csi_get_rst_reason() & RST_SRC_SNOOZE_WKUP)//wake up from snooze mode

{

g_tPmCore.wkup_frm_snooze = (void *)csi_ureg_read(USER_REG0);

if(g_tPmCore.wkup_frm_snooze)

g_tPmCore.wkup_frm_snooze();

}

else if(csi_get_rst_reason() & RST_SRC_SHD_WKUP)//wake up from shutdown mode

{

g_tPmCore.wkup_frm_shutdown = (void *)csi_ureg_read(USER_REG0);

if(g_tPmCore.wkup_frm_shutdown)

g_tPmCore.wkup_frm_shutdown();

}

#endif

}

花式打印表白啊,程序員哄女孩子的利器!!

先上圖案:

28e4f9b0-b91d-11ed-ad0d-dac502259ad0.png

代碼實現(xiàn)很簡單, printf打印就可以了:

int main()

{

//start_system();

system_init();

board_init();

csi_pin_set_mux(PB02, PB02_OUTPUT); //PA06 output

csi_pin_set_high(PB02); //PA06 output high;

int a[23][80] = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,0,0,0,0,0,2,2,2,2,2,2,2,2,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,0,0,0,0,2,2,2,2,2,2,2,2,2,0,0,2,2,2,2,2,2,2,2,2,2,0,0,0,1,1,1,1,1,1,1,1,0,0,1,1,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,2,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,2,2,2,2,2,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,0,0,2,2,2,2,2,2,2,2,2,0,0,0,0,0,0,0,0,0,0,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,0,0,0,0,0,0,2,2,2,2,0,0,0,0,3,3,3,0,0,3,3,3,0,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,0,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,3,0,0,3,0,0,3,3,3,0,0,3,0,0,0,3,0,0,3,3,3,3,0,0,3,0,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,3,0,3,0,0,0,3,0,0,3,0,3,0,0,3,3,0,0,3,3,0,3,0,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,3,0,3,0,0,0,3,0,0,3,0,3,0,0,3,3,3,3,3,3,0,3,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,3,0,3,0,0,0,3,0,0,0,3,0,0,0,3,3,0,0,0,0,0,3,0,0,0,0,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,3,0,0,3,0,0,3,3,3,0,0,0,0,3,0,0,0,0,0,3,3,3,0,0,0,3,3,3,3,0,0,0,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

};

for(int i=0;i<23;i++)

for(int j=0;j<80;j++)

{

if(a[i][j] == 0)

my_printf(" ",a[i][j]);

else if(a[i][j] == 1)

my_printf("*",a[i][j]);

else if(a[i][j] == 2)

my_printf("o",a[i][j]);

else if(a[i][j] == 3)

my_printf("u",a[i][j]);

}

//my_printf("%d",a[i][j]);

my_printf("\n");

while(1)

{

//my_printf("Best wishes to every one\n"); //print message

mdelay(1000); //delay 100ms

csi_pin_toggle(PB02); //PA06 toggle

}

}

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2899

    文章

    43807

    瀏覽量

    369211
  • 開發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    4840

    瀏覽量

    96862
收藏 人收藏

    評論

    相關(guān)推薦

    【北京迅為】《stm32mp157開發(fā)板嵌入式linux開發(fā)指南》第五章 Ubuntu使用apt-get下載

    【北京迅為】《stm32mp157開發(fā)板嵌入式linux開發(fā)指南》第五章 Ubuntu使用apt-get下載
    的頭像 發(fā)表于 09-03 16:26 ?617次閱讀
    【北京迅為】《stm32mp157<b class='flag-5'>開發(fā)板</b>嵌入式linux<b class='flag-5'>開發(fā)</b>指南》第五章 Ubuntu使用<b class='flag-5'>apt</b>-get下載

    PY32F002A單片機開發(fā)板 PY32F002AF15P6開發(fā)板 32位MCU,M0+內(nèi)核

    PY32F002A 開發(fā)板上 搭載的是 PY32F002AF15P6 單片機,TSSOP20封裝,開發(fā)板使用Type C接口供電, 可以用來對PY32
    的頭像 發(fā)表于 09-03 14:41 ?350次閱讀
    PY32<b class='flag-5'>F</b>002A單片機<b class='flag-5'>開發(fā)板</b> PY32<b class='flag-5'>F</b>002AF15P6<b class='flag-5'>開發(fā)板</b> 32位MCU,M0+內(nèi)核

    求推薦!電子工程師逛的論壇和網(wǎng)站有那些?

    求推薦!電子工程師逛的論壇和網(wǎng)站有那些?
    發(fā)表于 06-19 09:47

    普特微電子芯片封測基地項目簽約

    近日,張家港高新區(qū)與深圳市普特微電子有限公司(APT)成功舉行芯片封測基地項目簽約儀式。該項目總投資高達6億元,旨在打造一流的芯片生產(chǎn)研發(fā)基地。
    的頭像 發(fā)表于 05-23 11:50 ?857次閱讀

    APT32F102 開發(fā)板使用手冊

    電子發(fā)燒友網(wǎng)站提供《APT32F102 開發(fā)板使用手冊.pdf》資料免費下載
    發(fā)表于 04-16 09:07 ?0次下載

    普特再推超高性價比全國產(chǎn)32位MCU—APT32F1025B

    近日,全國產(chǎn)32位MCU小巨人企業(yè)普特微電子宣布推出一款超高性價比的全國產(chǎn)RISC核32位MCU——APT32F1025B,進一步擴展豐富其在全國產(chǎn)、高性價比領(lǐng)域MCU產(chǎn)品系列布局
    的頭像 發(fā)表于 03-29 08:17 ?806次閱讀
    <b class='flag-5'>愛</b><b class='flag-5'>普特</b>再推超高性價比全國產(chǎn)32位MCU—<b class='flag-5'>APT32F</b>1025B

    fpga開發(fā)板是什么?fpga開發(fā)板有哪些?

    FPGA開發(fā)板是一種基于FPGA(現(xiàn)場可編程門陣列)技術(shù)的開發(fā)平臺,它允許工程師通過編程來定義和配置FPGA芯片上的邏輯電路,以實現(xiàn)各種數(shù)字電路和邏輯功能。FPGA開發(fā)板通常包括FPG
    的頭像 發(fā)表于 03-14 18:20 ?1672次閱讀

    先楫HPM5361EVK開發(fā)板,網(wǎng)友測評效果(二)

    上海先楫半導(dǎo)體舉辦的HPM5361EVK開發(fā)板試用活動圓滿結(jié)束,廣大工程師和愛好者們踴躍參與此次試用并提交報告。經(jīng)過先楫半導(dǎo)體專家組評選,一共產(chǎn)生6名優(yōu)秀獲獎?wù)?。感謝媒體平臺電子工程世界(簡稱
    的頭像 發(fā)表于 03-12 08:16 ?1493次閱讀
    先楫HPM5361EVK<b class='flag-5'>開發(fā)板</b>,網(wǎng)友<b class='flag-5'>測評</b>效果(二)

    基于普特APT32F1023B的高安全性車載逆變器全國產(chǎn)MCU方案

    穩(wěn)步增長。普特車載逆變器方案前級由APT32F1023B控制推挽升壓,后級基于APT32F1023B全橋逆變。輸入電源11-15V、28.5A,可逆變輸出為11
    的頭像 發(fā)表于 02-19 13:04 ?392次閱讀
    基于<b class='flag-5'>愛</b><b class='flag-5'>普特</b><b class='flag-5'>APT32F</b>1023B的高安全性車載逆變器全國產(chǎn)MCU方案

    使用芯派Pro開發(fā)板部署人體姿態(tài)估計模型

    在經(jīng)過之前對于開發(fā)板的使用,以及通過幾個芯派官方給出的示例demo(mobilenet/yolov5)在開發(fā)板上的部署之后,筆者也逐漸了解了芯派這塊
    的頭像 發(fā)表于 01-09 09:50 ?1284次閱讀
    使用<b class='flag-5'>愛</b>芯派Pro<b class='flag-5'>開發(fā)板</b>部署人體姿態(tài)估計模型

    正點原子stm32f1 nano開發(fā)板簡介

    溫馨提示 :正點原子stm32f103-nano開發(fā)板有舊版本( 主控芯片STM32F103RBT6 )和新版本( 主控芯片STM32F103RCT6 ),兩者使用的芯片型號不一樣,注
    的頭像 發(fā)表于 11-30 15:45 ?2022次閱讀
    正點原子stm32<b class='flag-5'>f1</b> nano<b class='flag-5'>開發(fā)板</b>簡介

    芯派 Pro 開發(fā)板試用體驗】開箱報告

    (AI-ISP)。 一、開箱 一個金屬盒子,上面有“MAIX-BOX-M4N”字樣,有SIPEED設(shè)計制造。 盒子很漂亮,打開盒子里面分成兩大塊,左邊是AXera-Pi Pro開發(fā)板真身,黑色
    發(fā)表于 11-12 00:31

    普特微電子發(fā)布可支持雙電機驅(qū)動的32位MCU-APT32F173

    APT32F173系列采用全國產(chǎn)RISC-V內(nèi)核,核內(nèi)載8K ICACHE,具有單精度浮點和DSP運算能力,主頻最高可達105MHz,跑分3.5CoreMark/MHz。APT32F173系列還具
    發(fā)表于 10-31 15:15 ?455次閱讀
    <b class='flag-5'>愛</b><b class='flag-5'>普特</b>微電子發(fā)布可支持雙電機驅(qū)動的32位MCU-<b class='flag-5'>APT32F</b>173

    普特RISC-V 32位MCU APT32F173榮獲IOT年度產(chǎn)品獎

    和社會投票競選后,榮獲“IOT年度產(chǎn)品”這一獎項。APT32F173系列可謂是RISC-VMCU領(lǐng)域的“明星產(chǎn)品”,該系列產(chǎn)品是基于全國產(chǎn)RISC-V內(nèi)核和普特
    的頭像 發(fā)表于 10-31 08:18 ?536次閱讀
    <b class='flag-5'>愛</b><b class='flag-5'>普特</b>RISC-V 32位MCU <b class='flag-5'>APT32F</b>173榮獲IOT年度產(chǎn)品獎