📄 main.c
字号:
//-----------------------------------------------------------------
// 名称: CAN模块通信测试程序(PIC18F458+TJA1050T,发送部分)
//-----------------------------------------------------------------
// 说明: 本例运行时,PIC18F458的内置CAN模块向CAN总线发送数据,所发送的
// 的数据同时显示的本机数码管上.
//
//-----------------------------------------------------------------
#define _XTAL_FREQ 4000000UL
#include <pic18.h>
#include "CAN.h"
#define INT8U unsigned char
#define INT16U unsigned int
//共阳数码管段码表
const INT8U SEG_CODE[] =
{ 0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,
0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E
};
//-----------------------------------------------------------------
// 配置函数
//-----------------------------------------------------------------
void Config()
{
ADON = 0; //关闭A/D
ADCON0 = 0x00; //关闭模/数端口
ADCON1 = 0x07; //模拟端口全部设为数字端口
CVREN = 0; //比较器参考电压模块不使用
CVROE = 0; //比较器CVREF不连接RA0/AN0/CVREF
CCP1CON = 0x00; //关闭比较器
PSPMODE = 0; //关闭并行从动端口
SSPEN = 0; //禁止同步串行口
CMCON = 0x07; //关闭比较器
ECCP1CON = 0x00; //关闭ECCP1
SSPCON1 = 0x05; //SS引脚控制关闭,用作一般I/O口.
LVDEN = 0; //关断LVD低电压检测电路
T1OSCEN = 0; //禁止TMR1振荡器
}
//-----------------------------------------------------------------
// 主函数
//-----------------------------------------------------------------
void main()
{
WDTCON = 0x00; //禁止看门狗工作
GIE = 0; //关中断
Config(); //系统配置
TRISA0 = 0; PORTD = TRISD = 0x00; //数码管段码输出端口
CAN_Initialise(); //PIC单片机内置CAN模块初始化
while(1)
{
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -