摩尔芯闻 > 行业新闻 > 半导体 > TinyOS在MSP430F2618上移植(三)之LCD

TinyOS在MSP430F2618上移植(三)之LCD

eefocus ·2020-06-07 00:00·电子工程世界
阅读:1730

本节记录串口TFT LCD在TinyOS上的移植。1.8寸LCD显示屏采用ST7735控制器,使用SPI接口实现控制、显示数据的传输。


总体架构:分为3层结构,最底层位于相应的platforms中chips目录下,实现在特定平台上控制引脚连接,SPI接口连接,以及SPI配置。中间层实现了LCD基本操作,LCD初始化,提供给上层模块连接的接口,以及资源管理。最上层提供应用层模块连接的接口。


在本架构中,中间层和最高层提供相同的接口LCD16,该接口提供的实现方法有english_string,clear,single_color等,以及写完成事件writeDone。不同的是在最高层提供的接口LCD16中,并没有真正实现接口的功能,而仅仅是获得应用层传递的显示参数并设置相应的状态变量,在保存参数后,申请资源,当资源granted后,通过判断当前状态变量,调用中间层接口LCD16相应的实现。在中间层LCD16接口的实现完成后,通过提交任务的方式触发写完成事件writeDone(最好使用任务提交的方式,根据TinyOS官方的说法,这样可以防止消耗过多的堆栈),最高层响应此事件,释放先前申请的资源,并触发写完成事件writeDone,这样应用层便获得了此事件。


接口ST7735Power实现LCD启动流程。提供的行为有start,stop,lcdinit,以及事件startDone,lcdinitDone。启动流程:应用层调用最高层SplitControl.start后,由最高层call 中间层SplitControl.start,中间层完成相应操作后signal SplitControl.startDone,最高层收到此事件后call Power.start,做LCD初始化前准备(复位LCD),并signal Power.startDone,最高层在此事件中申请资源,当资源允许时,call Power.lcdinit,中间层在LCD初始化完成后signal Power.lcdinitDone,之后最高层释放资源,并signal SplitControl.startDone。至此LCD启动完成。


应用层使用LCD时必须use两个接口LCD16和SplitControl,在SplitControl.startDone后即可使用LCD16其他实现。

关键字: TinyOS MSP430F2618 移植 LCD 编辑:什么鱼 引用地址: http://news.eeworld.com.cn/mcu/ic499323.html 本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
分享到:
微信 新浪微博 QQ空间 LinkedIn

上一篇:TinyOS在MSP430F2618上移植(二)之USCI

下一篇:STM32CubeMx启动串口调试功能Printf调试

打开摩尔直播,更多新闻内容
半导体大咖直播分享高清观看
立即下载