打印

USB应用实例: 带USB接口的LCD 液晶显示模组

[复制链接]
3046|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
kelan|  楼主 | 2007-6-9 10:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
kelan|  楼主 | 2007-6-9 10:06 | 只看该作者

以下是 DLL 相关功能函数介绍:


//--------------------- USB19264DLL 一共有 10 个函数,以下分别讲述:



函数原型: int   USB_OPEN(void);

作用: 建立 USB 端口 和 LCD 模组: 192x64 之间的通讯链路。

执行成功,返回 0x00001; 反之,返回0x00000.


注意: 使用其它函数前必须首先调用此函数! 这样才能开通所需功能。




函数原型: int   USB_CLOSE(void);

作用: 拆除 USB 端口 和 LCD 模组: 192x64 之间的通讯链路。

执行成功,返回 0x00001; 反之,返回0x00000.


注意: 拆除通讯链路,除USB_OPEN()外,其它函数功能将无法实现相应的功能!

本函数一般在程序结束时或想断开通讯链路时调用。





函数原型: int   Initial_LCD(void);

作用: 初始化 LCD 模组: 192x64 中的LCD控制器,同时清屏 。

执行成功,返回 0x00001; 反之,返回0x00000.


注意: 当返回0x00000 时,原因可能是 USB 通讯链路未建立 或 LCD 控制器已经损坏。

      USB 通讯链路是否已经建立可以通过调用 USB_OPEN() 才测试。

      实际应用中,应用程序可以定期调用此函数,以增强产品可靠性! 如: 检测LCD 控制器是否已经损坏等等。

      

函数原型: int   Clear_LCD(void);

作用: 清屏 。

执行成功,返回 0x00001; 反之,返回0x00000.





函数原型: int Update_LCD()

作用: 将显示缓冲区内的显示数据对LCD屏幕进行更新。

执行成功,返回 0x00001; 反之,返回0x00000.


注意: 执行函数 ShowText()及 ShowPictureByROM() 和 ShowPictureByName()后,

      LCD屏幕不会立即更新显示。更新显示需要调用 Update_LCD()。

      



函数原型: int   LED_ON(void);

作用: 打开 LCD 模组的 背光源.

执行成功,返回 0x00001; 反之,返回0x00000.




函数原型: int   LED_OFF(void);

作用: 关闭 LCD 模组的 背光源.

执行成功,返回 0x00001; 反之,返回0x00000.






函数原型: int ShowText(unsigned int x, unsigned int y, char *str,unsigned char bConvert)

作用: 在 x 和 y 坐标处显示一个字符串。

执行成功,返回 0x00001; 反之,返回0x00000.


注意: x 的取值范围是: 0 to 191, y 的取值范围是: 0 to 6 

      当字符串在本行不能全部放置时,会自动折行显示。

      当 bConvert = 0x01 时,该字符串是反显显示。 bConvert = 0x00 时,该字符串是正常显示。 


      此外,需要注意的是: 执行该函数后 LCD屏幕不会立即更新显示。更新显示需要调用 Update_LCD()




函数原型: int ShowPictureByROM(const unsigned char *iPicture,unsigned char bConvert);


作用: 显示一副 192x64 大小的图片.

执行成功,返回 0x00001; 反之,返回0x00000.


iPicture 是图片数据区的首地址, 图片数据区的大小至少是: 192x64/8 = 1536 Byte.

当 bConvert = 0x01 时,该图片是反显显示。 bConvert = 0x00 时,该图片是正常显示。 


注意: 执行howPictureByROM()后 LCD屏幕不会立即更新显示。更新显示需要调用 Update_LCD()。



函数原型: int ShowPictureByName(const char *FileName,unsigned char bConvert);


作用: 显示一副 192x64 大小的图片.

执行成功,返回 0x00001; 反之,返回0x00000.


FileName 指定要显示的BMP图片名称,如: " F:MyBMP公司**.bmp"

注意该图片应该是单色的,文件格式是: BMP, 图片分辨率是: 192x64. 若不符合这些条件,则显示无效( 返回0x00000 ).

当 bConvert = 0x01 时,该图片是反显显示。 bConvert = 0x00 时,该图片是正常显示。 


注意: 执行howPictureByName()后 LCD屏幕不会立即更新显示。更新显示需要调用 Update_LCD()。

使用特权

评论回复
板凳
kelan|  楼主 | 2007-6-11 10:54 | 只看该作者

声明: 这是真正的USB,不是USB转串口那种!



---------- 更详细的资讯,请下载以下21IC中连接的文件rar(包含以下文件):

USB LCD 192x64控制板--彩页简介.pdf

USB19264.DLL使用说明.chm
相关链接:https://bbs.21ic.com/upfiles/img/20076/2007611105348399.rar

使用特权

评论回复
地板
lenglx| | 2007-6-12 17:03 | 只看该作者

能举个例子说明:有什么实际用途?

能实际应用在哪些方面?

使用特权

评论回复
5
kelan|  楼主 | 2007-6-15 16:37 | 只看该作者

用途可以简述如下:


主要应用于: 

1. 与PC机或工控机联机的场合使用.这样的设备周围一般除了配备较大尺

寸的TFT LCD 显示器外(有的可能不带TFT LCD显示),还需要(或希望)配带一个

小尺寸的 LCD(做副屏,一般可称为"液晶显示终端").这样的设备如POS机等.

2. 适合VC++或VB的软件爱好者"玩玩" 小尺寸的这种LCD. 比如,他们可以将电脑里的一些各种"小"信息,如CPU温度或内存利用率等显示在机箱外面.这样的应用场合可以在一些较新潮的电脑机箱上看到.

3. 如果你是硬件熟悉,而且会使用VC++或VB的话,那更好了.这时候你可以在你的硬件系统未建立起来前,用PC软件模拟你的实际系统.(这里也可可称为"系统建模(模型)". 而 这个USB 接口的LCD可以扮演你未来的实际LCD部分.


4. 事实上,这个USB 接口的LCD控制板.在软件编程序中,是相当相当容易使用的
. 可以说比直接使用 ST7920 或 T6963/ SED1335之类容易的多了. 因为它的复杂性已经被我封装实现好了.它是一个高级程序接口.



------------- 下面举个例子说明它软件编程的简单性:

------------------ 编程范例(VC ++):

//---  演示目标: 在x = 0 , y = 0 坐标处显示一个中英文字符串. "多特满显示技术 And MicroLCD", 反显示。

//               在x = 3 , y = 3 坐标处显示一个中英文字符串. "Welcome to Chinese! 您好", 正常显示。



#include "USB19264.h" 

#pragma comment(lib,"USB19264.lib") 



//------------------------------------ 主要代码段

int  result = 0;

result = USB_OPEN();  //---------- 建立通信链路

result = Clear_LCD();  //---------- 清屏幕


result = ShowText(0,0,"多特满显示技术 And MicroLCD",1);

result = ShowText(3,3,"Welcome to Chinese! 您好",0);



result = Update_LCD();  //---------- 更新 LCD 显示

result = USB_CLOSE(); //---------- 用完后, 拆除该通信链路






使用特权

评论回复
6
kelan|  楼主 | 2007-6-15 16:40 | 只看该作者

在来一个 Example



------------------ 编程范例(VC ++):

//---  演示目标: 在LCD屏幕上显示一幅当前程序目录下的 BMP格式的文件: My**.bmp , 图片以"反显示"显示





#include "USB19264.h" 

#pragma comment(lib,"USB19264.lib") 



//------------------------------------ 主要代码段

int  result = 0;

result = USB_OPEN();  //---------- 建立通信链路



result = ShowPictureByName("F:MyBMP公司**.bmp",1);



result = Update_LCD();  //---------- 更新 LCD 显示

result = USB_CLOSE(); //---------- 用完后, 拆除该通信链路

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

63

主题

759

帖子

7

粉丝