WK2124 軟件包
1 介紹
WK2124 軟件包是為WK2124 SPI轉(zhuǎn)四串口擴(kuò)展芯片而開發(fā)的RT-Thread驅(qū)動包。通過RT-Thread SPI 設(shè)備和RT-Thread UART 設(shè)備驅(qū)動框架,為RT-Thread系統(tǒng)新增最多四路串口字符設(shè)備。與片上串口使用方式一致,實(shí)現(xiàn)了對串口設(shè)備進(jìn)行open、close、read、write、control操作的功能,并支持輪詢和中斷接收兩種模式。
WK2124 軟件包為串口設(shè)備資源不足的產(chǎn)品提供串口擴(kuò)展的方法,目前已在stm32f429驗(yàn)證通過。
1.1 目錄結(jié)構(gòu)
wk2124-latest/
├── ChangeLog.md # 修改記錄
├── LICENSE # 軟件包許可證
├── README.md # 軟件包使用說明
├── sample # 串口使用程序樣例
│ ├── uart_int_sample.c # 中斷模式
│ └── uart_sample.c # 輪詢模式
├── SConscript # RT-Thread 默認(rèn)的構(gòu)建腳本
├── wk2124s.c # wk2124 驅(qū)動
├── wk2124s.h # wk2124 驅(qū)動頭文件
├── wk2124_usart.c # wk2124 spi及uart驅(qū)動文件
└── wk2124_usart.h # wk2124 spi及uart驅(qū)動頭文件
1.2 許可證
AT24CXX 軟件包遵循 Apache-2.0 許可,詳見 LICENSE 文件。
1.3 依賴
- RT-Thread 4.0.1+
- SPI 驅(qū)動:WK2124 設(shè)備使用 SPI 進(jìn)行數(shù)據(jù)通訊,需要系統(tǒng) SPI 驅(qū)動框架支持;
- PIN 驅(qū)動:用于處理設(shè)備中斷引腳;
2 獲取軟件包
使用 wk2124 軟件包需要在 RT-Thread 的包管理器中選擇它,具體路徑如下:
RT-Thread online packages
peripheral libraries and drivers --->
[*] wk2124: spi wk2124 driver library. --->
--- wk2124: spi wk2124 driver library.
[*] Enable UART SWK1
[*] Enable UART SWK2
[*] Enable UART SWK3
[*] Enable UART SWK4
WK2124 device configure --->
(spi2dev) SPI device name
(17) IRQ pin number
Select crystal frequency (11.0592MHz) --->
( ) 1.8432MHz
( ) 3.6864MHz
( ) 7.3728MHz
(X ) 11.0592MHz
( ) 14.7456MHz
( ) 8MHz
( ) 16MHz
( ) 24MHz
( ) 32MHz
Version (latest) --->
每個功能的配置說明如下:
- Enable UART SWK1:使能串行字符設(shè)備uart swk1
- Enable UART SWK2:使能串行字符設(shè)備uart swk2
- Enable UART SWK3:使能串行字符設(shè)備uart swk3
- Enable UART SWK4:使能串行字符設(shè)備uart swk4
- WK2124 device configure:配置使用設(shè)備的參數(shù)
- SPI device name:配置使用 SPI 的設(shè)備名稱(注意需設(shè)置為非 SPI 總線設(shè)備)
- IRQ pin number:配置設(shè)備連接的中斷引腳號(根據(jù)實(shí)際使用引腳號修改)
- Select crystal frequency:wk2124硬件電路的晶振頻率(影響串口波特率)
- Version:配置軟件包版本,默認(rèn)最新版本。
然后讓 RT-Thread 的包管理器自動更新,或者使用 pkgs --update 命令更新包到 BSP 中。
3 使用 wk2124 軟件包
按照前文介紹,獲取 wk2124 軟件包并配置參數(shù)項(xiàng)。軟件包編譯進(jìn)RT-Thread系統(tǒng)以后,通過宏定義INIT_ENV_EXPORT(wk2124_device_init),軟件包會在開機(jī)時自動初始化,并產(chǎn)生串行字符設(shè)備。
# 初始化信息
\ | /
- RT - Thread Operating System
/ | \ 4.0.1 build Aug 25 2020
2006 - 2019 Copyright by rt-thread team
.....
[I/drv] RT-Thread WK2124 package initialize success.
......
msh />
# 串行字符設(shè)備
msh />list_device
device type ref count
-------- -------------------- ----------
......
uartswk4 Character Device 0
uartswk3 Character Device 0
uartswk2 Character Device 0
uartswk1 Character Device 0
......
uartswk1--4串行字符設(shè)備支持輪詢和中斷接收兩種模式(不支持DMA模式),使用方法可參考RT-Thread UART設(shè)備使用文檔和sample文件夾。
4 注意事項(xiàng)
- 獲取軟件包時,需要注意正確配置使用的 SPI 設(shè)備名稱、中斷引腳號和芯片晶振頻率;