资料介绍
zlg7289 c程序
#include"msp430x14x.h"
#include"IO.h"
#define DELAY_1US _NOP();_NOP();_NOP();_NOP();_NOP();_NOP();_NOP();_NOP()
void Delay(unsigned int t) //延时 t us
{
unsigned int i;
for (i=0;i
}
/*
函数:ZLG7289_SPI_Write()
功能:向SPI 总线写入1 个字节的数据
参数:
dat:要写入的数据
*/
void ZLG7289_SPI_Write(char dat) //5
{
unsigned char t = 8;
ZLG7289_OperateIO &=~ZLG7289_CLK; //clk=0
do
{
if(dat&0x80)
ZLG7289_OperateIO |=ZLG7289_DAT;
else
ZLG7289_OperateIO &=~ZLG7289_DAT;
ZLG7289_OperateIO |=ZLG7289_CLK; //clk=1
dat <<= 1;
Delay(4);
ZLG7289_OperateIO &=~ZLG7289_CLK; //clk=0
Delay(4);
}while ( --t != 0 );
}
/*
函数:ZLG7289_SPI_Read()
功能:从SPI 总线读取1 个字节的数据
返回:
读取到的数据
*/
unsigned char ZLG7289_SPI_Read()
{
unsigned char dat=0x00;
unsigned char t = 8;
ZLG7289_OperateIO &=~ZLG7289_CLK; //clk=0
//ZLG7289_DAT = 1; //读取数据之前DIO 引脚要置1 以切换到输入状态
do
{
ZLG7289_OperateIO |=ZLG7289_CLK; //clk=1
Delay(4);
dat <<= 1;
if ((ZLG7289_OperateIO_IN&ZLG7289_DAT))
dat++;
ZLG7289_OperateIO &=~ZLG7289_CLK; //clk=0
Delay(4);
}while ( --t != 0 );
return dat;
}
/*
函数:ZLG7289_cmd()
功能:执行ZLG7289 纯指令
参数:
cmd:命令字
*/ //6
void ZLG7289_cmd(char cmd)
{
ZLG7289_OperateIO_DIR |=ZLG7289_DAT; //output
ZLG7289_OperateIO &=~ZLG7289_CS; //CS=0
Delay(24);
ZLG7289_SPI_Write(cmd);
ZLG7289_OperateIO |=ZLG7289_CS; //CS=1
ZLG7289_OperateIO_DIR &=~ZLG7289_DAT; //input
}
/*
函数:ZLG7289_cmd_dat()
功能:执行ZLG7289 带数据指令
参数:
cmd:命令字
dat:数据
*/
void ZLG7289_cmd_dat(char cmd, char dat)
{
ZLG7289_OperateIO_DIR |=ZLG7289_DAT; //output
ZLG7289_OperateIO &=~ZLG7289_CS; //CS=0
Delay(24);
ZLG7289_SPI_Write(cmd);
Delay(14);
ZLG7289_SPI_Write(dat);
ZLG7289_OperateIO |=ZLG7289_CS; //CS=1
ZLG7289_OperateIO_DIR &=~ZLG7289_DAT; //input
}
/*
函数:ZLG7289_Download()
功能:下载数据
参数:
mod=0:下载数据且按方式0 译码
mod=1:下载数据且按方式1 译码
mod=2:下载数据但不译码
x:数码管编号(横坐标),取值0~7
dp=0:小数点不亮 //7
dp=1:小数点亮
dat:要显示的数据
说明:
译码方式的具体含义请参考数据手册
*/
void ZLG7289_Download(unsigned char mod, char x,char dp, char dat)
{
char ModDat[3] = {0x80,0xC8,0x90};
char d1;
char d2;
if ( mod > 2 )
mod = 2;
d1 = ModDat[mod];
x = x & 0x07;
d1 = d1 | x;
d2 = dat & 0x7F;
if ( dp )
d2 =d2 | 0x80;
ZLG7289_cmd_dat(d1,d2);
}
/*
功能:执行ZLG7289 键盘命令
返回:
返回读到的按键值:0~63
如果返回0xFF 则表示没有键按下
*/
unsigned char ZLG7289_Key()
{
unsigned char key;
ZLG7289_OperateIO_DIR |=ZLG7289_DAT; //output
ZLG7289_OperateIO &=~ZLG7289_CS; //CS=0
Delay(24);
ZLG7289_SPI_Write(0x15);
ZLG7289_OperateIO_DIR &=~ZLG7289_DAT; //input
Delay(14);
key = ZLG7289_SPI_Read();
ZLG7289_OperateIO |=ZLG7289_CS; //CS=0
return key;
}
void ZLG7289_initial(void)
{
ZLG7289_OperateIO_DIR |= ZLG7289_CS+ZLG7289_CLK+ZLG7289_KEY;
ZLG7289_OperateIO |= ZLG7289_CS+ZLG7289_KEY;
ZLG7289_OperateIO &=~ ZLG7289_CLK;
ZLG7289_OperateIO_DIR &=~ ZLG7289_KEY; //INPUT
ZLG7289_OperateIE |= ZLG7289_KEY; //enable interrupt
ZLG7289_OperateIES |= ZLG7289_KEY; //failing
}
- C语言程序设计第四讲结构化程序设计之选择 0次下载
- Visual C++和MFC创建的应用程序基础知识 0次下载
- ZLG驱动数码管和4*4按键的程序 26次下载
- STM32_7289控制电机 9次下载
- 基于SPI接口的凌阳单片机键盘设计 6次下载
- 串行接口LED数码管及键盘管理器件ZLG7289A的原理与应用 3次下载
- ZLG7289A串行接口LED数码管及键盘管理器件 117次下载
- 键盘显示专用器件HD7279A的接口设计
- 显示和键盘智能控制芯片zlg7289A的原理及应用
- zlg7829/zlg7289A中文资料,数据手册 pdf
- zlg7289A中文资料pdf
- zlg7289A串行接口8位LED数码管及64键键盘智能控制
- ZLG7290 datasheet
- ZLG7289中文资料pdf
- ZLG7290 pdf, ZLG7290程序
- AWTK-WEB 快速入门(1) - C 语言应用程序 257次阅读
- 怎么写出效率高、思路清晰的C语言程序? 604次阅读
- 如何把C++程序改写成C语言 3392次阅读
- C语言程序格式 1294次阅读
- C程序的结构 1221次阅读
- 利用定时器实现的走马灯程序 1685次阅读
- 基于AWTK和AWPLC开发走马灯程序 1079次阅读
- 如何用AWTK和AWPLC快速开发嵌入式应用程序 1420次阅读
- 基于AWTK开发应用程序需要遵循的规范和方法 1391次阅读
- ZLG72128数码管显示驱动及键盘扫描管理芯片 1w次阅读
- keil c51是如何启动c程序的 4178次阅读
- 80C51单片机模拟I2C总线的主机程序分享 3483次阅读
- 基于ARM控制芯片HT9032C 的来电号码显示器的实现方法 5497次阅读
- C51读写AT24C04源代码及AT24C04测试程序 1.7w次阅读
- 小波去噪c语言程序 1.4w次阅读
下载排行
本周
- 1电子电路原理第七版PDF电子教材免费下载
- 0.00 MB | 1490次下载 | 免费
- 2单片机典型实例介绍
- 18.19 MB | 92次下载 | 1 积分
- 3S7-200PLC编程实例详细资料
- 1.17 MB | 27次下载 | 1 积分
- 4笔记本电脑主板的元件识别和讲解说明
- 4.28 MB | 18次下载 | 4 积分
- 5开关电源原理及各功能电路详解
- 0.38 MB | 10次下载 | 免费
- 6基于AT89C2051/4051单片机编程器的实验
- 0.11 MB | 4次下载 | 免费
- 7蓝牙设备在嵌入式领域的广泛应用
- 0.63 MB | 3次下载 | 免费
- 89天练会电子电路识图
- 5.91 MB | 3次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 2PADS 9.0 2009最新版 -下载
- 0.00 MB | 66304次下载 | 免费
- 3protel99下载protel99软件下载(中文版)
- 0.00 MB | 51209次下载 | 免费
- 4LabView 8.0 专业版下载 (3CD完整版)
- 0.00 MB | 51043次下载 | 免费
- 5555集成电路应用800例(新编版)
- 0.00 MB | 33562次下载 | 免费
- 6接口电路图大全
- 未知 | 30320次下载 | 免费
- 7Multisim 10下载Multisim 10 中文版
- 0.00 MB | 28588次下载 | 免费
- 8开关电源设计实例指南
- 未知 | 21539次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935053次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537791次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233045次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191183次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183277次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138039次下载 | 免费
评论
查看更多