3267|8

2002

帖子

24

TA的资源

五彩晶圆(高级)

楼主
 

来个无聊的实作:股票信息显示器 [复制链接]

平时玩电脑的时候,由于是笔记本,屏幕尺寸比较小,查看股票信息什么的要频繁切换页面很是麻烦,能不能用launchpad做一个单独实时显示股票信息的工具呢,就像再加一台小显示器一样,手边刚好有个5110屏,接口少好操作,立即开工。

一、脚位定义:

由于2231的脚位比较少,就拿2452开工,电路很简单,我就不画图了,接口连接如下:

//5110端口定义

//P2

#define CLK   BIT5

#define DIN   BIT4

#define DC    BIT3

#define CE    BIT2

//P1

#define LED   BIT6

#define NOKIA5110_CLK_H        P2OUT |= CLK

#define NOKIA5110_DIN_H        P2OUT |= DIN

#define NOKIA5110_DC_H        P2OUT |= DC

#define NOKIA5110_CE_H        P2OUT |= CE

#define NOKIA5110_LED_ON P1OUT |= LED

 

#define NOKIA5110_CLK_L        P2OUT &= ~CLK

#define NOKIA5110_DIN_L        P2OUT &= ~DIN

#define NOKIA5110_DC_L        P2OUT &= ~DC

#define NOKIA5110_CE_L        P2OUT &= ~CE

#define NOKIA5110_LED_OFF P1OUT &= ~LED

//串口引脚定义

#define UART_TXD   0x02                     // TXD on P1.1 (Timer0_A.OUT0)

#define UART_RXD   0x04                     // RXD on P1.2 (Timer0_A.CCI1A)

二、工作原理及所用模块:

其实工作原理很简单,上位机取得设定好的股票信息,通过串口发送到MSP430中,然后在屏幕上显示出来,不断更新最新数据。

实现起来呢还是有几点稍有难度的地方。

1、串口的收发。

为保证收发速度,通讯波特率要保证在9600以上,所以时钟频率至少要1Mhz,我这里用了内部DCO12Mhz,其实目前用不了这么高,但是以后传输大量数据的时候留点余地。

串口通讯另外一个问题就是通讯协议,我采用的是头尾控制字格式,参考一个BCB串口控件的,觉得不错就拿来用了,版权归原作者所有,嘿嘿。协议方式具体描述如下:

/****************************************************************

| 简单数据包协议的实现原理:                                                 

|   1.定义数据包头,尾,控制符, 例如本程序定义的为 DB,DE,DC                   

|           (DB,DE,DC 分别取 Data-Begin, Data-End, Data-Control 的字头)     

|   2.所有的数据发送都以如下格式:                                           

|            0xDB + 数据 + 0xDE                                             

|   3.如果数据含有控制符, 转换为 0xDC + 字符, 接收端认为 0xDC 后面的是数据  

| 例如: 3个字节的数据 0x12, 0xdb, 0x99 的数据包格式为:                      

|                     0xdb, 0x12, 0xdc, 0xdb, 0x99, 0xde                    

|     其中 0xdb 被转义为 0xdc, 0xdb 两个字节    

****************************************************************/

    2、串口的实现。

参考了官方例程,用了定时器Timer0-A(CCT1A,OUT0)P1.1,P1.2两个脚位的复用功能,一个定时输出,一个捕获起始位转定时接收。对比datasheet一看就明白了这里就不罗嗦了。

  3、信息显示。

驱动5110很简单,模拟串行总线,基本上定义那几个脚位修改为你自己的就可以用了。但问题在于MSP430的RAM小,从上位机发过来的数据不能一次传输完毕,所以就开辟了一个100Byte的缓存区,接受从上位机发来的数据,满一屏84x8bit显示一次。

还有个就是中文的显示,MSP430的没有那么大的存储空间去储存字库,所以中文的股票名称都是上位机转换后传输过来的。

  4、低功耗。

用MSP430肯定要把低功耗的特点考虑进去,所以在接收和显示之外的时间,程序都是运行在LPM3低功耗模式,上位机有数据发过来时会通过捕获终端收码。

4、上位机程序

用cb2010编写,基本能用,可以定制股票,数据也能实时更新,中间坎坎坷坷,简直是折磨人啊...由于水平有限,不会用线程所以添加股票信息时需要等按钮弹起再依次添加,所以上位机源码就不上传了,苦手啊...

三、运行图片及视频


四、一点想法

其实最初的计划是更好点的,1.8‘’彩屏,可以显示天气图片,显示温度和时间,调节亮度,股票信息会以不同的颜色区分涨和跌,还可以利用cc2500实现无线手持,组网。可是工程太浩大了,赶上最近也忙,就先到这里吧,拿出来只是为了抛砖引玉....

源码 


[ 本帖最后由 shower.xu 于 2012-5-5 11:43 编辑 ]

stockshow.rar

1 MB, 下载次数: 29

IAR工程代码

StockShow.rar

700.3 KB, 下载次数: 36

上位机程序

最新回复

还不错嘛  详情 回复 发表于 2012-7-20 10:51
 
点赞 关注

回复
举报

2002

帖子

24

TA的资源

五彩晶圆(高级)

沙发
 
网速不流畅的话选360P播放,视频里的咔嗒声是哥的老风扇,昨晚那个热啊
 
 

回复

360

帖子

0

TA的资源

纯净的硅(初级)

板凳
 
哇 很棒的應用
 
 
 

回复

2056

帖子

0

TA的资源

五彩晶圆(初级)

4
 
漂亮!!
 
 
 

回复

2002

帖子

24

TA的资源

五彩晶圆(高级)

5
 
 
 
 

回复

36

帖子

0

TA的资源

一粒金砂(中级)

6
 
好强啊。。。
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

7
 
这个东西好
 
 
 

回复

125

帖子

0

TA的资源

纯净的硅(中级)

8
 
很好的思路啊,可以搞成无线收发的
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(中级)

9
 
还不错嘛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表