📄 main.c
字号:
/************************************************************************************/
/* G7000 V3 主程序 */
/* MCU 型号: Philips P89C668 */
/* 时钟频率: 11.0592 MHz 6 CLOCK */
/* 开发环境: Keil C51 V7.06a */
/* 开发日期: 2003.08.22 */
/* 程序编写: BaoFang 鲍方 */
/* 系统版本: V3.00 */
/************************************************************************************/
#include <REG668.H>
#include <P89C668.H>
#include <G7000.H>
#include <Timer.H>
#include <Display.H>
#include <TurnControl.H>
#include <Menu.H>
#include <Flux_PCA.H>
#include <General.H>
#include <.\CAN\CAN.H>
/*宏uchar定义*/
#define uchar unsigned char
/*宏uint定义*/
#define uint unsigned int
void Init()
{
char status;
uint i;
//EXTRAM=0,访问内部ERAM
//!!注意不要和系统其它端口冲突!!
AUXR = 0x0;
fnInit_Time0();
fnInit_DisplayKeyBaord();
fnInit_FluxPulseCounter();
//复位流量计--正流量
fnReset_FluxPulseCounter(1);
fnInit_Menu();
fnInit_Turn();
//所有输出关闭
CON01 = 0;
CON02 = 0;
CON03 = ucCON03_Buf;
//计数器0运行
timer0_start;
status = G7000_CANInit();
fnBeep(1);
while(status!=0)
;
fnBeep(0);
//等待
for (i=0;i<40000;i++)
;
//测试CAN的发送
if(bCANState)
{
//CAN网络的自我物理连接测试!
//测试地址254!!
//使用Allow95命令测试!!
//重要,防止因为上一数据未发送完,发送失败!
//while(CAN_SendToSlave_Allow95(254)!=0)
//{
//}
//第一次发送
if(CAN_SelfTest_0())
{
//错误报警!
fnAlarm(1);
fnBeep(1);
}
//等待
for (i=0;i<40000;i++)
;
//第二次发送
/*
if(CAN_SelfTest_0())
{
//错误报警!
fnAlarm(1);
fnBeep(1);
}*/
if(ucSystemCANErrorState)
{
//错误报警!
fnAlarm(1);
fnBeep(1);
//不需要死循环!防止用户无法变更设置
//清除错误标志
//ucSystemCANErrorState = 0;
return;
}
}
}
void main()
{
Init();
RUN();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -