历史上的今天

今天是:2024年10月24日(星期四)

正在发生

2019年10月24日 | PIC18F45K80 CAN通信实例,可通过模拟调试

发布者:数据探险家 来源: 51hei关键字:PIC18F45K80  CAN通  模拟调试 手机看文章 扫描二维码
随时随地手机看文章

PIC18F 45K80  CAN 通信实例,可通过模拟调试,注意选编译器,C18是不能通过。

单片机源程序如下:

#pragma config XINST = OFF                                                  // CONFIG1L

#pragma config FOSC = INTIO2, FCMEN = OFF, IESO = OFF ,PLLCFG = OFF         // CONFIG1H

#pragma config BOREN = OFF, BORV = 0                                                        // CONFIG2L

#pragma config WDTEN = OFF                                                                   // CONFIG2H

/** I N C L U D E S **************************************************/

#include "main.h"


unsigned char CAN_RecFLAG=0;

unsigned char Flag50ms = 0;


// AD采样的数据变量

unsigned int VoltageEdlc[5];

unsigned int VoltageBat;

unsigned int Current1;

unsigned int Current2;

unsigned int Temperature1;

unsigned int Temperature2;


void InterruptHandler(void);


#pragma code high_vector=0x08

void high_interrupt (void)

{

        _asm GOTO InterruptHandler _endasm

}

#pragma code


#pragma code low_vector=0x18

void low_interrupt (void)

{

        _asm GOTO InterruptHandler _endasm

}

#pragma code


#pragma interruptlow InterruptHandler

#pragma interrupt        InterruptHandler

void InterruptHandler(void)

             static unsigned char Tick = 0;

          static unsigned char ChannelNo = 0;


      // 定时器0

          if(INTCONbits.TMR0IF&&INTCONbits.TMR0IE)     // timer0 = 10ms

          {

                 INTCONbits.TMR0IF = 0;

                 TMR0H = 0x63;     

         TMR0L = 0xBF;

                 Tick++;

                 if(Tick ==200)

                 {

                        Flag50ms = 1;     // 5s发送CAN消息到ECU

                        Tick = 0;

                        LATCbits.LATC5 = ~LATCbits.LATC5;

                 }

          }


      // CAN接收数据

      if(PIR5bits.RXB0IF==1)

          {

                 CAN_RecFLAG=1;

                 PIR5bits.RXB0IF=0;                        // 清接收中断标志

                 RXB0CONbits.RXFUL=0;                // 清除标志,接收新报文

          }






}


#pragma code


void main(void)

{

        unsigned int EDLC_temp[4];


        INTCON=0x00;        

        InitInterOSC();

        InitPORT();

        InitCan();

        Timer0_Init();

//        INTCON=0xc0;                //使能中断 1100 0000

        INTCONbits.GIE=1;

    INTCONbits.PEIE=1;

  //  INTCONbits.GIEL=1;

  //  TXB0CONbits.TXREQ = 0;

  

    while(1)

        {

                if(CAN_RecFLAG==1)

                {        

                        CAN_RecFLAG = 0;


                        TXB0D0=1;                                         /* 写发送缓冲器数据区数据初值 */

                        TXB0D1=2;                                        

                        TXB0D2=3;                                          

                        TXB0D3=4;        

                        TXB0D4=5;        

                    TXB0D5=6;        

                    TXB0D6=7;        

……………………




关键字:PIC18F45K80  CAN通  模拟调试 引用地址:PIC18F45K80 CAN通信实例,可通过模拟调试

上一篇:基于使用PIC16F87X单片机ADC制作的照度计
下一篇:pic单片机控制cc1101实现loral无线传输的源程序

推荐阅读

        三星可折叠智能手机正在越来越近,其原型据称已研发多年,在上周晚些时候的一条推文中,三星为该手机进行了造势,将其即将举行的开发者大会描述为“现在与未来之间的十字路口”,并展示了两个微妙的图形,线条展开成一个向右的箭头,显然是在暗示其折叠手机。  三星首席执行官DJ Koh在9月接受CNBC采访时暗示该产品可能会在今年推出,三...
(文章来源:未来工业互联网) 提到智慧工厂,人们首先想到的是自动化、智能化、工业机器人、工业等概念,那么,一个智慧工厂的标准配置有哪些? 控制器是智慧工厂的大脑,由程序计数器、指令、指令译码器、时序产生器和操作控制器组成,它是发布命令的“决策机构”,完成协调和指挥整个系统的操作。智慧工厂中常用的控制器有、工控机等。工业机器人是...
10月23日,国务院新闻办举行新闻发布会。工业和信息化部副部长王志军介绍“十三五”工业通信业发展成就。工信微报消息显示,王志军表示,“十三五”确定的主要目标任务即将如期完成,综合实力再上新台阶。据介绍,2016-2019年,战略性新兴产业加快发展,高技术制造业、装备制造业增加值占规上工业增加值的比重分别达到14.4%和32.5%。此外,王志军指出,“...
据路透社最新报道,荷兰反垄断机构发现,苹果要求软件开发商使用自己的应用内支付系统的规定是反竞争的行为,并已责令其做出改变。虽然苹果在几个国家都面临着类似的挑战,但荷兰消费者和市场管理局(ACM)上个月将其决定通知了这家美国科技巨头,使其成为第一个发现苹果在应用商店滥用市场力量的反垄断监管机构。有趣的是,ACM没有对苹果公司征收任何罚款,...

史海拾趣

问答坊 | AI 解惑

高速模拟电路设计技术

软件名称:高速模拟电路设计技术   授权方式:共享软件   软件类型:设计方案     软件大小:3.34M…

查看全部问答∨

PCF8576CT I2C 4X40LCD 驱动器

PCF8576 为带有I2C 总线接口的字符式LCD 驱动/控制器,它有4 个背极输出和40 个显示段输出,因此,最多可驱动160 个LCD 显示段。PCF8576 可以级联以适应驱动较大规模的LCD 显示器,通过I2C 总线接口除了可以与具有I2C 总线接口的MCU 相连外,通过I2 ...…

查看全部问答∨

求好心人帮忙,毕业设计:基于spce061a 和 ov7620的图形采集与系统设计

以单片机为核心,利用COMS摄像头设计一个可对薄片透明体轮廓尺寸进行测量测试系统; 要求:(1)可进行图形显示 (2)测量精度:<0.1mm…

查看全部问答∨

面试题 驱动电路 请教

哥们的一个面试题,已忘差不多了,有人告诉是三极管构成的驱动电路,还是不懂原理 还请大虾米给详细的说道说道,谢谢 题目在附件 …

查看全部问答∨

C++ 获取CELL-ID(基站编号)

谁有详细代码啊...  要能获取成功的     网上找了一些  都获取不到       急....…

查看全部问答∨

在vmware虚拟的win2000中运行ads带来的问题?

我在linux系统上用vmware虚拟win2000,在里面跑ads,用jedi-ii仿真器和网络接口。 现发现有个工程在axd里面调试的时候总是一开始就进入死循环状态,步进调试到启动代码 B UndefHandler, 调试器会提示Warning 00056: The statement into which ...…

查看全部问答∨

SDI接口的开发

有用FPGA开发SDI接口的吗,交流交流…

查看全部问答∨

无线(有线)温度测量器

    我把CN0214方案。连同我画的框图一起打包一会,那个方案可拿来就用,我只是加了无线模块,这样可用无线进行数据传送。原方案保持不变我就是在UART输出的地方,加两个跳线,这样可无线,也可有线。 下面是PC端的程序框图   ...…

查看全部问答∨

【MSP430共享】基于MSP430F149的电动轿车电控系统设计

为解决汽车发展所带来的对石油能源需求的激增及环保的负面影响,国内、外已经掀起了研制各种电动汽车的高潮。目前主要用于电车上的动力电源有铅酸、镍氢、镍镉、燃料、锂离子蓄电池等,其中锂电池如动力磷酸铁锂以其重量轻、容量高、寿命长且无污染 ...…

查看全部问答∨

picC语言

一直编译错误,求哪位大侠解释,不甚感激!!!!!     Build D:\\PIC code\\pwm for device 16F877AUsing driver C:\\Program Files\\HI-TECH Software\\PICC\\9.70\\bin\\picc.exe Executing: \"C:\\Program Files\\HI-TECH Softw ...…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved