ISL12022 与 stm32f101c


#include "24cxx.h"
#include "main.h"
//#include "delay.h"
//extern unsigned int      Switch_addr ;               

extern unsigned char     iic_init_flag; 


  unsigned char bcd2bin(unsigned char b)
{
 return (b >> 4) * 10 + (b & 15);
}

  unsigned char bin2bcd(unsigned char b)
{
 return (b / 10) * 16 + (b % 10);
}


//*******************************************
//在ISL12022 初始化
//以及车检中断初始化
//*******************************************
void ISL12022_Init(void)

   // unsigned char TEST_D =0x34;
   // TEST_D =  bcd2bin(TEST_D);
   // TEST_D =  bin2bcd(TEST_D);
   //     Delay_Init(36); //延时初始化
         IIC_Init();

         iic_init_flag =ISL12022_Check();//0表示初始化成功,1表示初始化失败
      // ISL12022_WriteOneByte(0,0xaa);
      // i= ISL12022_ReadOneByte(0)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux ISL(Interrupt Subsystem Library,中断子系统库)是Linux 内核中的一个重要部分,它负责处理硬件中断和软中断。Linux内核是一个模块化的设计,它被分割成许多子系统,ISL便是其中之一。 Linux ISL 源码包括了与处理硬中断和软中断相关的代码。它提供了一套API和数据结构,用于管理和处理中断。通过ISL,可以注册中断处理函数(interrupt handlers),处理硬件设备的中断信号。 ISL 的源码文件主要位于内核源码树的kernel/irq目录下。其中,irqdesc.c文件定义了一个描述中断的数据结构irq_desc_t,每个硬件中断都有一个irq_desc_t 结构体。irq.c文件包含了处理硬中断的代码,而softirq.c文件包含了处理软中断(软中断是通过硬件中断来触发的)的代码。 ISL 的设计和实现非常复杂,因为中断处理是内核中的一个关键任务。它需要考虑到中断的优先级、中断共享、中断处理延迟等问题。ISL 源码中还包括了一些底层的硬件抽象接口,用于与具体的硬件平台进行交互。 理解ISL源码需要深入了解Linux内核的工作原理和中断处理的机制。它包含了大量的数据结构和算法,涉及到底层的硬件交互。掌握ISL源码对于解决一些复杂的中断相关问题非常有帮助。 总之,Linux ISL 源码是Linux内核中负责处理硬中断和软中断的一个重要部分。通过分析ISL的源码,我们可以深入理解Linux内核中断子系统的工作原理,从而更好地理解和调试内核中断相关的问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值