📄 main.c
字号:
/*=============================================================================
--------------------------------- Copy Left -----------------------------------
Illidan Fly's Project
Power by BigFly Network
http://bigfly.happybobby.com
Released under GPL2 License
----------------------------- File Description --------------------------------
Filename: main.c
Date: 2007.01.02
Version: 0.0.1
Description:
----------------------------- Version History ---------------------------------
0.0.1: First release
=============================================================================*/
#include "2410addr.h"
#include "target.h"
#include "2410lib.h"
#include "iic.h"
void isr_keyboard(void)
{
unsigned char cmdbuf[3];
unsigned char key;
// 关闭1号外中断
rINTMSK = rINTMSK | BIT_EINT1;
// 等待 IIC 总线空闲
while(rIICCON & IIC_PENDING_BIT)
{
Delay(10);
}
cmdbuf[0]=IIC_ADDR_ZLG7290_KEY;
// 写入ZLG7290寄存器子地址
iicsend(IIC_ADDR_ZLG7290_W,cmdbuf,1);
// 读取键码
iicreceive(IIC_ADDR_ZLG7290_R,&key,1);
// 数字左移
cmdbuf[0]=IIC_ADDR_ZLG7290_CMD0;
cmdbuf[1]=0x11;
iicsend(IIC_ADDR_ZLG7290_W,cmdbuf,2);
// 写入最低位
cmdbuf[0]=IIC_ADDR_ZLG7290_CMD0;
cmdbuf[1]=0x60;
cmdbuf[2]=key;
iicsend(IIC_ADDR_ZLG7290_W,cmdbuf,3);
// 清除中断位
rINTPND = BIT_EINT1;
rSRCPND = BIT_EINT1;
// 打开1号外中断
rINTMSK = rINTMSK & ~BIT_EINT1;
}
void main(void)
{
// Init target board (call this function before anything can go!)
Target_Init();
Uart_Printf("CITK2410 Digitron and Keyboard demo using IIC Bus with ZLG7290.\n");
// 设置键盘中断服务程序地址
pISR_EINT1=(unsigned)isr_keyboard;
// 打开1号外中断
rINTMSK = rINTMSK & ~BIT_EINT1;
while(1)
{
;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -