📄 sys_io.c.svn-base
字号:
/****************************************************************************
Copyright (c) 深圳市民德电子科技有限公司 http://www.szminde.cn
文件名称:sys_IO.c
版本号: 1.0
日期: 2005-05-25
说明: 此文件中包含一些对ES-TAD7100开发板上的I/O模块操作的函数。
调用列表:--
修改历史:--
****************************************************************************/
#include "44b.h"
#include "sys_IO.h"
/*七段数码管要显示数字用的数组,对应为0,1,2,3,4,5,6,7,8,9,.*/
unsigned char led7[]={0x77,0x14,0xb3,0xb6,0xd4,0xe6,0xe7,0x34,0xf7,0xf6,0x08};
/****************************************************************************
函数名称:IO82C55A_Init()
说明: 器件82C55A的初始化,对端口特性的设置。
调用函数:无
输入参数:无
输出参数:无
****************************************************************************/
void IO82C55A_Init(void)
{
EXIO_82C55A_CTRL=0x89; // Port A&B: 输出;Port C: 输入
}
/****************************************************************************
函数名称:LED7A_Display()
说明: 七段数码管LED6显示数字。
调用函数:无
输入参数:num 为需要显示的数字
输出参数:无
****************************************************************************/
void LED7A_Display(int num)
{
EXIO_82C55A_PORTA=led7[num];
}
/****************************************************************************
函数名称:LED7B_Display()
说明: 七段数码管LED5显示数字。
调用函数:无
输入参数:num 为需要显示的数字
输出参数:无
****************************************************************************/
void LED7B_Display(int num)
{
EXIO_82C55A_PORTB=led7[num];
}
/****************************************************************************
函数名称:LED7A_Off()
说明: 七段数码管LED6熄灭。
调用函数:无
输入参数:无
输出参数:无
****************************************************************************/
void LED7A_Off(void)
{
EXIO_82C55A_PORTA=0;
}
/****************************************************************************
函数名称:LED7B_Off()
说明: 七段数码管LED5熄灭。
调用函数:无
输入参数:无
输出参数:无
****************************************************************************/
void LED7B_Off(void)
{
EXIO_82C55A_PORTB=0;
}
/****************************************************************************
函数名称:ReadSwitch()
说明: 读取DIP按键的状态。
调用函数:无
输入参数:无
输出参数:返回EXIO_8255A_PORTC,代表DIP按键的状态,每一位对应一个按键
****************************************************************************/
U8 ReadSwitch(void)
{
return EXIO_82C55A_PORTC;
}
/****************************************************************************
函数名称:LED_Display()
说明: 控制LED显示。
调用函数:无
输入参数:LED_No 为需要点亮的LED的编号(可取值为1,2,3,4),为0则熄灭
输出参数:无
****************************************************************************/
void LED_Display(int LED_No)
{
switch(LED_No)
{
case 1:
{
rPDATC=(rPDATC & 0xf3ff);
rPDATF=(rPDATF & 0x13f);
rPDATC=(rPDATC | 0x0400); // 点亮 LED1;
break;
}
case 2:
{
rPDATC=(rPDATC & 0xf3ff);
rPDATF=(rPDATF & 0x13f);
rPDATC=(rPDATC | 0x0800); // 点亮 LED2;
break;
}
case 3:
{
rPDATC=(rPDATC & 0xf3ff);
rPDATF=(rPDATF & 0x13f);
rPDATF=(rPDATF | 0x040); // 点亮 LED3;
break;
}
case 4:
{
rPDATC=(rPDATC & 0xf3ff);
rPDATF=(rPDATF & 0x13f);
rPDATF=(rPDATF | 0x080); // 点亮 LDE4;
break;
}
case 0:
{
rPDATC=(rPDATC & 0xf3ff);
rPDATF=(rPDATF & 0x13f); // 熄灭所有LED.
break;
}
default : break;
}
return;
}
/****************************************************************************
函数名称:GetButton()
说明: 读取按键的状态。
调用函数:无
输入参数:无
输出参数:返回按键的状态,其中高4位的每一位对应一个按键,低四位都置0.
****************************************************************************/
U8 GetButton(void)
{
return rPDATG&0xf0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -