// T6963c.c
//
// #define _T6963C_C
#include "includes.h"
#include "avr/pgmspace.h" // 使用flash程序区
/************************************************************************************/
/* 函数名称:fnGetRow */
/* 输入参数:void */
/* 输出参数:uchar gCurRow 当前行 */
/* 函数功能:得到当前行 */
/* 作 者 :安车科技大灯仪开发小组 许孝刚 */
/* 开发日期: 2005.08 */
/* 版 本 : v1.0 */
/************************************************************************************/
uchar fnGetRow(void)
{
return gCurRow;
}
/************************************************************************************/
/* 函数名称:fnGetCol */
/* 输入参数:void */
/* 输出参数:uchar gCurCol 当前列 */
/* 函数功能:得到当前列 */
/* 作 者 :安车科技大灯仪开发小组 许孝刚 */
/* 开发日期: 2005.08 */
/* 版 本 : v1.0 */
/************************************************************************************/
uchar fnGetCol(void)
{
return gCurCol;
}
/************************************************************************************/
/* 函数名称:fnST */
/* 输入参数:void */
/* 输出参数:uchar */
/* */
/* */
/* 函数功能:状态位判断(读写指令和读写数据) */
/* 作 者 :安车科技大灯仪开发小组 许孝刚 */
/* 开发日期: 2005.08 */
/* 版 本 : v1.0 */
/************************************************************************************/
uchar fnST(void)
{
uchar ucState;
DDRA = 0x00; // 数据方向为输入
PORTA = 0xFF; // 使能内部上拉电阻
DDRB = 0x0F; // 数据方向为输出
PORTB = 0xFF; // 高4位使能内部上拉电阻,低4位输出高电平
// lcd_delay(10);
PORTB |= (1 << CD); // CD (PB2) 赋值1,命令
PORTB &= ~(1 << RD); // RD (PB1) 赋值0,读操作有效
// lcd_delay(10);
ucState = PINA;
PORTB |= (1 << RD); // RD (PB1) 赋值1,读操作无效
return ucState;
}
/************************************************************************************/
/* 函数名称:fnST01 */
/* 输入参数:void */
/* 输出参数:uchar i */
/* 输出 0,说明错误 */
/* 输出 1到10共10个整数中任一个为正确 */
/* 函数功能:状态位STA1,STA0判断(读写指令和读写数据) */
/* 作 者 :安车科技大灯仪开发小组 许孝刚 */
/* 开发日期: 2005.08 */
/* 版 本 : v1.0 */
/************************************************************************************/
uchar fnST01(void)
{
uchar i;
for(i=10;i>0;i--)
{
if((fnST() & 0x03) == 0x03)
break;
}
return i;
}
/************************************************************************************/
/* 函数名称:fnST2 */
/* 输入参数:void */
/* 输出参数:uchar i */
/* 输出 0,说明错误 */
/* 输出 1到10共10个整数中任一个为正确 */
/* 函数功能:状态位ST2判断(数据自动读状态) */
/* 作 者 :安车科技大灯仪开发小组 许孝刚 */
/* 开发日期: 2005.08 */
/* 版 本 : v1.0 */
/************************************************************************************/
uchar fnST2(void)
{
uchar i;
for(i=10;i>0;i--)
{
if((fnST() & 0x04) == 0x04)
break;
}
return i;
}
/************************************************************************************/
/* 函数名称:fnST3 */
/* 输入参数:void */
/* 输出参数:uchar i */
/* 输出 0,说明错误 */
/* 输出 1到10共10个整数中任一个为正确 */
/* 函数功能:状态位ST3判断(数据自动写状态) */
/* 作 者 :安车科技大灯仪开发小组 许孝刚 */
/* 开发日期: 2005.08 */
/* 版 本 : v1.0 */
/************************************************************************************/
uchar fnST3(void)
{
uchar i;
for(i=10;i>0;i--)
{
if((fnST() & 0x08) == 0x08)
break;
}
return i;
}
/************************************************************************************/
/* 函数名称:fnST6 */
/* 输入参数:void */
/* 输出参数:uchar i */
/* 输出 0,说明错误 */
/* 输出 1到10共10个整数中任一个为正确 */
/* 函数功能:状态位ST6判断(屏读/屏拷贝状态)) */
/* 作 者 :安车科技大灯仪开发小组 许孝刚 */
/* 开发日期: 2005.08 */
/* 版 本 : v1.0 */
/************************************************************************************/
uchar fnST6(void)
{
uchar i;
for(i=10;i>0;i--)
{
if((fnST() & 0x40) == 0x40)
break;
}
return i;
}
/************************************************************************************/
/* 函数名称:fnCW2P */
/* 输入参数:uchar uCmd,uchar uPar1,uchar uPar2 */
/* uCmd 命令 */
/* uPar1 地址低8位 */
/* uPar2 地址高8位 */
/* 输出参数:uchar */
/* 输出 0, 说明成功 */
/* 输出 1,2 说明错误 */
/* 函数功能:写双参数的指令 */
/* 作 者 :安车科技大灯仪开发小组 许孝刚 */
/* 开发日期: 2005.08 */
/* 版 本 : v1.0 */
/************************************************************************************/
uchar fnCW2P(uchar uCmd,uchar uPar1,uchar uPar2)
{
DDRA = 0xFF; // 数据方向为输出
// PORTA = 0xFF; // 使能内部上拉电阻
DDRB = 0x0F; // 数据方向为输出
if(fnST01() == 0)
return 1;
PORTB &= ~(1 << CD) ; // CD (PB2) 赋值0,低电平表示数据
// lcd_delay(1);
PORTA = uPar1; // 赋值
// lcd_delay(1);
PORTB &= ~(1 << WR); // WR (PB0) 赋值0,低电平写操作有效
// lcd_delay(1);
PORTB |= (1 << WR); // WR (PB0) 赋值1,高电平写操作无效
// lcd_delay(1);
if(fnST01() == 0)
return 2;
PORTB &= ~(1 << CD) ; // CD (PB2) 赋值0,低电平表示数据
// lcd_delay(1);
PORTA = uPar2; // 赋值
// lcd_delay(1);
PORTB &= ~(1 << WR); // WR (PB0) 赋值0,低电平写操作有效
// lcd_delay(1);
PORTB |= (1 << WR); // WR (PB0) 赋值1,高电平写操作无效
// lcd_delay(1);
if(fnST01() == 0)
return 3;
PORTB |= (1 << CD) ; // CD (PB2) 赋值1,高电平表示命令
// lcd_delay(1);
PORTA = uCmd; // 赋值
// lcd_delay(1);
PORTB &= ~(1 << WR); // WR (PB0) 赋值0,低电平写操作有效
// lcd_delay(1);
PORTB |= (1 << WR); // WR (PB0) 赋值1,高电平写操作无效
return 0;
}
/************************************************************************************/
/* 函数名称:fnCW1P */
/* 输入参数:uchar uCmd 命令 */
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
t6963驱动LCD12864显示汉字菜单仿真例子.rar (60个子文件)
my
zifuku.h 228B
my.aps 5KB
my.c 2KB
avr12864Lcd.PWI 682B
hzku.c 4KB
zifuku.c 18KB
T6963c.h 3KB
default
T6963c.o 13KB
dep
hzku.o.d 2KB
T6963c.o.d 2KB
my.o.d 2KB
zifuku.o.d 2KB
menu.o.d 2KB
menu.o 13KB
my.hex 21KB
zifuku.o 3KB
hzku.o 3KB
my.eep 13B
my.elf 24KB
my.o 4KB
Makefile 2KB
Last Loaded avr12864Lcd.DBK 85KB
myavr12864Lcd.DSN 85KB
menu.h 3KB
hzku.h 339B
myavr12864Lcd.PWI 682B
Last Loaded myavr12864Lcd.DBK 85KB
includes.h 315B
T6963c.c 21KB
menu.c 10KB
t6963驱动LCD12864显示汉字菜单仿真例子
my
zifuku.h 228B
my.aps 5KB
my.c 2KB
avr12864Lcd.PWI 682B
hzku.c 4KB
zifuku.c 18KB
T6963c.h 3KB
default
T6963c.o 13KB
dep
hzku.o.d 2KB
T6963c.o.d 2KB
my.o.d 2KB
zifuku.o.d 2KB
menu.o.d 2KB
menu.o 13KB
my.hex 21KB
zifuku.o 3KB
hzku.o 3KB
my.eep 13B
my.elf 24KB
my.o 4KB
Makefile 2KB
Last Loaded avr12864Lcd.DBK 85KB
myavr12864Lcd.DSN 85KB
menu.h 3KB
hzku.h 339B
myavr12864Lcd.PWI 1KB
Last Loaded myavr12864Lcd.DBK 85KB
includes.h 315B
T6963c.c 21KB
menu.c 10KB
共 60 条
- 1
资源评论
- hnloyal2014-09-11很不错的程序
zhongsili
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 5ffd9193f6aec31bbf16030a46680dc7.avi
- DA14531-蓝牙传感器连接传输数据固件
- logisim实验MIPS运算器(ALU)设计(内含4位先行进位74182、四位快速加法器、32位快速加法器)-Educoder_logisim里面连线,实现4位先行进位74182和4位快速加法器-C
- 高等数学第一章第二节数列的极限
- Python 版冒泡排序算法源代码
- tensorflow-gpu-2.7.2-cp38-cp38-manylinux2010-x86-64.whl
- tensorflow-2.7.3-cp39-cp39-manylinux2010-x86-64.whl
- tensorflow-2.7.2-cp39-cp39-manylinux2010-x86-64.whl
- Python版本快速排序源代码
- 精品源码基于JSP实现的酒店管理系统
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功