DSP的Uart维护口程序开发

本文详细介绍了如何使用CCS5.4和SYSBIOS6开发基于28335的SCI串口维护程序,通过创建任务、缓冲区程序和CUI程序实现串口数据的高效收发与用户交互,同时采用了多级字符菜单的交互方式,确保了系统的稳定性和易用性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

最近也是摸索着用CCS5.4以及SYSBIOS6来做程序。现将做的串口维护程序的考量做一次小结。


使用基于28335的SCI来做串口维护的程序CUI,使用了C++。为了将来程序可以重用。将硬件操作的接口和CUI程序尽量松耦合。抽象出设备接口层,负责寄存器操作之类的硬件封装;抽象出数据缓冲队列,作为硬件收发中断的缓冲;抽象出CUI应用,直接对缓冲区操作,与用户进行交互。


创建了一个Task,对接收缓冲区进行轮询,当有用户输入时,对输入进行回显,以及交给CUI程序来交互。并将返回的数据写入到缓冲区,并触发发送ff中断。创建SCI-A发送FIFO中断处理的HWI,如果发送缓冲区中有数据,则写入到发送FIFO,如果没有了数据,则关停发送FIFO中断。创建SCI-A接收FIFO中断处理的HWI,如果收到了数据,则缓存到接收缓存中。


CUI程序

    cui程序被放到了Task中定时轮询。使用了一个死循环来控制流程,单次执行后应该使用Task_sleep来空出CPU。需要注意的是,Task_sleep是tick的次数,而Tick是有Clock模块来产生的,需要配置好晶振频率已经倍频等参数。

    对用户的输入应该做成带缓存的行输入方式。也就是,用户的键盘输入应该是在回车后才提交给cui程序处理的。在没有回车前,用户可以敲击所有可能的键,并且可以使用退格键来删除,而且串口应该能回显用户的当前键盘操作。

    CUI采用多级字符菜单来交互。包括监视系统运行状态,实时数据显示,以及参数设置和系统控制。


缓冲区程序

设备接口程序

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值