|
特性描述
TM1621D是56點(diǎn)、內(nèi)存映象和多功能的LCD驅(qū)動器,TM1621D的軟件配置特性使它適用于多種LCD應(yīng)用場合,包括LCD模塊和顯示子系統(tǒng)。主控制器和TM1621D的通訊時序簡單,TM1621D還有一個節(jié)電命令用于降低系統(tǒng)功耗。
功能特點(diǎn)
工作電壓2.4~ 5.2V
內(nèi)嵌256KHz RC 振蕩器
可選1/2或1/3偏壓和1/2、1/3或1/4的占空比
片內(nèi)時基頻率源
節(jié)電命令可用于減少功耗
一個14x4的LCD 驅(qū)動器
一個內(nèi)嵌的14x4位顯示RAM 內(nèi)存
三線串行接口
片內(nèi)LCD驅(qū)動頻率源
軟件配置特征
數(shù)據(jù)模式和命令模式指令
兩種數(shù)據(jù)訪問模式
提供VLCD管腳用于調(diào)整LCD操作電壓
封裝形式:SOP24
TM1621D引腳圖:
0.png (35.43 KB, 下載次數(shù): 161)
下載附件
2019-1-12 17:10 上傳
TM1621D管腳功能定義:
0.png (72.5 KB, 下載次數(shù): 155)
下載附件
2019-1-12 17:10 上傳
TM1621D的pdf規(guī)格書:
0.png (133.27 KB, 下載次數(shù): 176)
下載附件
2019-1-12 17:11 上傳
*MCU 型號:STC12C5608AD
*開發(fā)環(huán)境:Keil uVision4
*晶震頻率:11.0592MHZ
*完成日期:2013-08-07
*程序功能:1.LCD驅(qū)動:LCD屏所接SEG顯示0~5
*免責(zé)聲明:1.此程序?yàn)門M1621D驅(qū)動LCD演示程序,僅作參考之用。
2.如有直接使用本例程程序造成經(jīng)濟(jì)損失的,本公司不承擔(dān)任何責(zé)任
********************************************************************************/
#include <reg52.h> //MCU頭文件
#include "intrins.h" //包含nop指令頭文件
#define uchar unsigned char //數(shù)據(jù)類型宏定義
#define uint unsigned int //數(shù)據(jù)類型宏定義
#define nop _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_(); //宏定義
/******************TM1621D模塊命令定義*********************/
#define SYSDIS 0x00 //關(guān)系統(tǒng)振蕩器和LCD偏壓發(fā)生器
#define SYSEN 0x02 //打開系統(tǒng)振蕩器
#define LCDOFF 0x04 //關(guān)LCD偏壓
#define LCDON 0x06 //開LCD偏壓
#define RC 0x30 //內(nèi)部RC振蕩
#define BIAS 0x52 //1/3偏壓 4公共口
/********************定義控制端口**********************/
sbit CS=P2^1;
sbit WRITE=P2^0;
sbit DATA=P1^7;
/********************定義數(shù)據(jù)*************************/
uchar code Smg[16]={0xeb,0x60,0xc7,0xE5,0x6C,0xAD,0xaf,0xE0,0xef,0xed,0xee,0x2f,0x8b,0x67,0x8f,0x8e}; //0~F字型碼
uchar code Tab0[16]={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}; //清屏
/********************延時函數(shù)*************************/
void delay_nms(uint n)
{
uint i;
while(n--)
for(i=0;i<500;i++);
}
/********************從高位寫入數(shù)據(jù)*************************/
void Write_Data_H(uchar Data, uchar Cnt) //Data的高cnt位寫入TM1621D,高位在前
{
uchar i;
for(i=0;i<Cnt;i++)
{
WRITE=0;
if(Data&0x80) //從最高位發(fā)送
DATA=1;
else
DATA=0;
nop;
nop;
WRITE=1;
Data<<=1;
}
WRITE=0;
DATA=0;
}
/********************從低位寫入數(shù)據(jù)*************************/
void Write_Data_L(uchar Data,uchar Cnt) //Data 的低cnt位寫入TM1621D,低位在前
{
unsigned char i;
for(i=0;i<Cnt;i++)
{
WRITE=0;
if(Data&0x01) //從低位發(fā)送
DATA=1;
else
DATA=0;
nop;
nop;
WRITE=1;
Data>>=1;
}
WRITE=0;
DATA=0;
}
/********************寫入控制命令*************************/
void WriteCmd(uchar Cmd)
{
CS=0;
nop;
Write_Data_H(0x80,4); //寫入命令標(biāo)志100
Write_Data_H(Cmd,8); //寫入命令數(shù)據(jù)
CS=1;
nop;
}
/*********指定地址寫入數(shù)據(jù),實(shí)際寫入后4位************/
void WriteOneData(uchar Addr, uchar Data)
{
CS=0;
Write_Data_H(0xa0,3); //寫入數(shù)據(jù)標(biāo)志101
Write_Data_H(Addr<<2,6); //寫入地址數(shù)據(jù)
Write_Data_L(Data,4); //寫入數(shù)據(jù)
CS=1;
nop;
}
/*********連續(xù)寫入方式,每次數(shù)據(jù)為8位,寫入數(shù)據(jù)************/
void WriteAllData(uchar Addr,uchar *p,uchar cnt)
{
uchar i;
CS=0;
Write_Data_H(0xa0,3); //寫入數(shù)據(jù)標(biāo)志101
Write_Data_H(Addr<<2,6); //寫入地址數(shù)據(jù)
for(i=0;i<cnt;i++) //寫入數(shù)據(jù)
{
Write_Data_L(*p,8);
p++;
}
CS=1;
nop;
}
/*******************TM1621D初始化**********************/
void TM1621D_init()
{
CS=1;
WRITE=1;
DATA=1;
nop;
delay_nms(1);
WriteCmd(BIAS); //1/3偏壓 4公共口
WriteCmd(RC); //內(nèi)部RC振蕩
WriteCmd(SYSDIS); //關(guān)系統(tǒng)振蕩器和LCD偏壓發(fā)生器
WriteCmd(SYSEN); //打開系統(tǒng)振蕩器
WriteCmd(LCDON); //開LCD偏壓
}
void main()
{
TM1621D_init(); //開機(jī)初始化
delay_nms(1);
WriteAllData(0,Tab0,16); //LCD清顯存
while(1)
{
WriteAllData(0x0a,Smg,6); //LCD SEG10到SEG21顯示0~5
}
}
完整的pdf格式文檔51黑下載地址:
TM1621D_V1.0代替vk1056b.pdf
(353.49 KB, 下載次數(shù): 175)
2019-1-12 08:44 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|
評分
-
查看全部評分
|