📄 02.c
字号:
#include <iom16v.h>
//*** 函数定义 ***
void delay(unsigned char); //短暂延时
void write728x(unsigned char, unsigned char); // 写入到BC728x
unsigned char read728x(unsigned char); // 从BC728x读出
void send_byte(unsigned char); //发送一个字节
unsigned char receive_byte(void); //接收一个字节
void chushihua_BC7281();
//*** 变量及I/O定义 ***
unsigned char key_number;
unsigned int tmr;
/*dat=PA^0; // dat 连接于 PA.0 0X01
key=PA^1; // key 连接于 PA.1 0X02
clk=PA^2;*/ // clk 连接于 PA.2 0X04
//*** 主程序 ***
main()
{
DDRA|=0X04;
PORTA|=0X40;
chushihua_BC7281(); //初始化
while(1)
{
if((PINA&0X02)==0)
{
key_number=read728x(0x13);
write728x(0x15,(0x00+(key_number&0xf0)/16));
write728x(0x15,(0x10+(key_number&0x0f)));
}
}
}
//******************************************************************
//* 初始化 BC7281 *
//******************************************************************
void chushihua_BC7281()
{
for (tmr=0;tmr<0xffff;tmr++); // 等待BC728x完成复位
write328x(0x12,0x80); // 初始化BC728x 为164模式,不反相
}
// *****************************************************************
// *写入BC728X,第一个参数
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -