DSP的異步串口擴(kuò)展問(wèn)題解決方案 BF561 SPORT口

?、蹟?shù)據(jù)的發(fā)送。SPORT1_STAT中的TXF位指示發(fā)送FIFO中是否有空位,其值為1表示FIFO已滿(mǎn),為0表示FIFO中仍有空位。
(3)ioctl() 函數(shù)

ioctl()是設(shè)備驅(qū)動(dòng)程序中對(duì)設(shè)備I/O通道進(jìn)行管理的函數(shù)。所謂對(duì)I/O通道進(jìn)行管理,就是對(duì)設(shè)備的一些特性進(jìn)行控制,例如串口傳輸波特率的選擇。驅(qū)動(dòng)程序中ioctl()通過(guò)傳入的參數(shù)cmd設(shè)置SPORTl口的發(fā)送時(shí)鐘頻率。cmd在用戶(hù)程序端由一些宏進(jìn)行定義,該整數(shù)通過(guò)系統(tǒng)調(diào)用傳遞到內(nèi)核中的驅(qū)動(dòng)程序,再由驅(qū)動(dòng)程序利用解碼宏從這個(gè)整數(shù)中得到用戶(hù)要設(shè)置的波特率,然后通過(guò)switch{case)結(jié)構(gòu)進(jìn)行相應(yīng)的操作。

主要實(shí)現(xiàn)流程如下:

只要保證應(yīng)用程序中由locil()的參數(shù)cmd的宏定義值與核心驅(qū)動(dòng)中相應(yīng)的解碼宏定義相符,便可在應(yīng)用程序中通過(guò)ioctl()函數(shù)實(shí)現(xiàn)任意有效波特率的設(shè)置。
結(jié)語(yǔ)
在SPORT口驅(qū)動(dòng)程序中,通過(guò)對(duì)數(shù)據(jù)幀結(jié)構(gòu)進(jìn)行轉(zhuǎn)換,輸出與UART異步數(shù)據(jù)相同的幀格式,用軟件實(shí)現(xiàn)UART,有效地解決了DSP的異步串口擴(kuò)展問(wèn)題。
相關(guān)推薦
技術(shù)專(zhuān)區(qū)
- FPGA
- DSP
- MCU
- 示波器
- 步進(jìn)電機(jī)
- Zigbee
- LabVIEW
- Arduino
- RFID
- NFC
- STM32
- Protel
- GPS
- MSP430
- Multisim
- 濾波器
- CAN總線(xiàn)
- 開(kāi)關(guān)電源
- 單片機(jī)
- PCB
- USB
- ARM
- CPLD
- 連接器
- MEMS
- CMOS
- MIPS
- EMC
- EDA
- ROM
- 陀螺儀
- VHDL
- 比較器
- Verilog
- 穩(wěn)壓電源
- RAM
- AVR
- 傳感器
- 可控硅
- IGBT
- 嵌入式開(kāi)發(fā)
- 逆變器
- Quartus
- RS-232
- Cyclone
- 電位器
- 電機(jī)控制
- 藍(lán)牙
- PLC
- PWM
- 汽車(chē)電子
- 轉(zhuǎn)換器
- 電源管理
- 信號(hào)放大器
評(píng)論