📄 hal.c
字号:
//===================================================================//
// Project Name : MOTOROLA-PDIUSBD12 USB-MCS CARD
// Module Name : Master Firmware Program
// Product Type : License
// OS/Dev Tool : CodeWarrior Development Studio for HC(S)08 Microcontrollers
// Original Author : Ming Zeng
// Organization : Tsinghua University , DEP
// Original Date : Feb, 20, 2003
// Addr : Tsinghua University, Beijing City
// TEL :
// EMail : ming@zming.net
// Website : http://www.zming.net
// Copyright : Copyright ZMing.net, 2003
// Comments :
//
//
//===================================================================//
#include "COMMON.H"
#include "HAL.H"
#include "USBD12.H"
void outportb(unsigned short nPort, unsigned char nVal)
{
DDRA = 0xff;//方向寄存器
if (nPort)
PTC |= 0x01; //置A0为1
else
PTC &= 0xfe; //置A0为0
PTA = nVal;
PTC &= 0xfd; //模拟WR信号 //IC_D12_WR = 0;
PTC |= 0x02; //模拟WR信号 //IC_D12_WR = 1;
}
unsigned char inportb(unsigned short nPort)
{
unsigned char nVal;
DDRA = 0x00;//方向寄存器
if (nPort)
PTC |= 0x01; //置A0为1
else
PTC &= 0xfe; //置A0为0
PTC &= 0xfb; //模拟RD信号 //IC_D12_RD = 0;
nVal = PTA;
PTC |= 0x04; //模拟RD信号 //IC_D12_RD = 1;
return nVal;
}
void Delay(register unsigned char nFactor)
{
unsigned char i;
for(i=0; i<nFactor; i++)
{
asm {
LDA #200
__l_01: DBNZA __l_01// 3cyc x 406.9ns x 197 +9000ns = 0,249ms //fBus = 2.4576MHz
LDA #200
__l_02: DBNZA __l_02
}
}
}
void DelayMs(register unsigned char nFactor)
{
unsigned char i;
for(i=0; i<nFactor; i++)
Delay(2);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -