UART多串口扩展器SP2338DP及其应用

[09-12 17:52:32]   来源:http://www.88dzw.com  单片机学习   阅读:8679

文章摘要:4 应用说明SP2338DP在使用时应遵循以下原则:①SP2338DP适用于串行数据为8位的应用领域(如数据位7为位,可选用SP2337DP器件);②串口0~2为较高波特率的串口(子串口)。③串口3为高波特率串口(母串口),它的数据传输速率是子串口的4倍。如输入时钟频率foscin为10MHz,则串口3的波特率为19 200bps,串口0~2的波特率为19 200bps/4=4800 bps;如果需要在串口0~2上获得波特率K,则需按以下公式改变时钟频率即可。K=4800×foscin/10(bps)其中foscin≤20MHz④ADRI1、ADR10为下行地址线,ADRI1、ADR

UART多串口扩展器SP2338DP及其应用,标签:单片机开发,单片机原理,单片机教程,http://www.88dzw.com

4 应用说明

SP2338DP在使用时应遵循以下原则:

①SP2338DP适用于串行数据为8位的应用领域(如数据位7为位,可选用SP2337DP器件);

②串口0~2为较高波特率的串口(子串口)。

③串口3为高波特率串口(母串口),它的数据传输速率是子串口的4倍。如输入时钟频率foscin为10MHz,则串口3的波特率为19 200bps,串口0~2的波特率为19 200bps/4=4800 bps;如果需要在串口0~2上获得波特率K,则需按以下公式改变时钟频率即可。

K=4800×foscin/10(bps)

其中foscin≤20MHz

④ADRI1、ADR10为下行地址线,ADRI1、ADRI0=00、01、10时,分别对应子串口0、1、2、ADR1、ADR0=11时,为串口3的地址;同时,它也是SP2338DP的命令/数据口地址。

⑤ADRO1、ADRO0为上行数据的串口地址线,ADRO1、ADRO0=00、01、10时,分别对应子串口0、1、2。当上位机UART接收到由串口3发送来的数据时,立即读取地址线ADRO1和ADRO0的状态。根据ADRO1和ADRO0的状态即可判断出数据是由哪个串口发送来的。

⑥芯片唤醒条件为:向串口0~串口3的任意一个数据接收端口写入1个字节数据。由于SP2338DP的唤醒时间为25ms左右,故用于芯片唤醒的数据将不能被正确接收,因此应采用下面的芯片唤醒流程;先发送1个字节数据,用于唤醒芯片,延时25ms后再发送有效的数据。

⑦为了快速可靠地传输批量数据,可以采用下面的方法,实现数据快速可靠的接收、发送。

如上位机只需要向一个串口发送数据,则可向该串口发送完1个字节数据后再向地址11(串口3的地址)连续发送4个字节“0X00”。其后向需要发送数据的串口发送1个字节数据,再向串口3发送4个字节“0X00”,按此方式循环发送即可。

如果此位同需向两个串口分别发送两个数据块,则可分别向两个相应的子串口发送1个字节的数据后再向串口3发送4个字节的“0X00”,然后分别将两个数据块的下一个字节发送到两个子串口上。

如果上位机有3个数据块需要分别向3个子串口发送,则可先向3个子串口分别发送1个字节的有效数据后再向串口3发送2个字节的“0X00”,然后循环向3个子串口发送有效的数据。

注意:写入串口3用于延时的数据只能是“0X00”,写入其它数据将产生可预料的结果。

⑧SP233DP数据发送工作过程如下:如果上位机需要将数据“0X28”由串口2发送出去,则需先将ADRI1置为“1”,ADRI0置为“0”,再将数据“0X28”通过上位机的UART口发送到串口3即可。

⑨SP2338DP可执行的命令仅有两种,即复位和睡眠命令。当上位机通过串口3(地址为“11”)写入数据“0X35”或“0XB5”时,则芯片执行软件复位,复位时间约为21.75ms;当写入的数据为“0X55”或“0XD5”时,芯片将进入睡眠状态。

图2 利用SP2338DP扩展的3串口电路

5 典型应用电路

利用SP2338DP可将仅具有一个UART串口的单片机扩展为具有3个UART串口的单片机。下面以常用的AT89C52单片机为例,给出相应的串口扩展电路,如图2所示。

图2中AT89C52的全双工串口与SP2338DP的串口3相连。串口3同时也做为命令/数据口。ADRI1和ADRI0与AT89C52的P3.3、P3.2口线相连,用于发送数据时相应串口0~2的选择。ADRO1和ADRO0与AT89C52的P3.4、P3.5口线相连,用于判断接收的数据来自串口0~2的哪一个。SP2338DP的时钟频率选为20MHz,此时串口3的波特率为19 200bps,串口0~2的波特率为9600bps。网络补充版(http://www.88dzw.com)中,给出与上述电路配套的通信程序,程序采用C51编制。

结语

SP2338多串口扩展器可广泛应用于工业控制、数据采集、仪器仪表、智能家电、计算机RS232口扩展、有线及无线数据传输等领域。由该器件构成的多串口电路具有硬件成本低、性价比高、工作速度高、波特率设置简单等特点,因而选择该器件是多串口应用系统的良好解决方案。




上一页  [1] [2] 


Tag:单片机学习单片机开发,单片机原理,单片机教程单片机学习
分类导航
最新更新
热门排行