在stm8_interrupt_vector.c文件中,我们可以看到除去Reset向量外其它中断向量的入口均是统一使用void NonHandledInterrupt (void)函数。对于正常的使用我们还是需要重新跟改中断函数入库函数名称。
对于中断函数的入口修改:
1、struct interrupt_vector const _vectab[] 指明的中断向量表,每一个类似{0x82, NonHandledInterrupt},偏移量的申明表示的都是一个中断矢量对于的中断函数名称。
2、 中断函数的申明 @far @interrupt void NonHandledInterrupt (void)
例当需要使用I2C中断的时候,可以这样做:
1、申明I2C中断函数名称:
在struct interrupt_vector const _vectab[]中找到I2C中断函数入口,加入I2C中断函数名称
{0x82, I2C_Server_Interrupt },
2、在stm8_interrupt_vector.c文件中添加服务函数:
@far @interrupt void I2C_Server_Interrupt (void)
{
~~~~~加入中断服务代码~~~~~~
return;
}
3、最好在文件头上方申明外部可调用:extern void I2C_Server_Interrupt (void)
4、或者仅是申明函数,再定义STM8_IT.c、STM8_IT.h文件,将中断服务程序全部放置其中。
工程建立好以后,可以通过菜单栏“Project”->“Settings”来修改项目配置
上一篇:STM8之STVD的使用
下一篇:STM8S时钟校准笔记二——通过AWU校准HSI
推荐阅读
史海拾趣
近年来,随着物联网和大数据技术的快速发展,迪贝电子也积极探索将这些新技术应用于其产品中。公司推出了一系列智能气体检测和分析系统,这些系统可以通过物联网技术实现远程监控和数据传输,为用户提供更加便捷、高效的服务。同时,迪贝电子还利用大数据技术对用户的使用数据进行深度挖掘和分析,为产品的研发和优化提供了有力的支持。这些创新举措使得迪贝电子在气体检测及分析领域保持了领先地位,并为其未来的发展奠定了坚实的基础。
2010年,EnOcean公司成功成为国际标准组织ISO/IEC的成员。这一里程碑事件标志着EnOcean的技术和产品在全球范围内得到了广泛认可。通过参与制定无线传感网络的国际标准,EnOcean进一步巩固了其在行业内的领先地位,为推广其无线无源传输技术奠定了坚实基础。
Eureka一直重视研发实力的提升和技术创新。公司拥有一支专业的研发团队,致力于新技术的研发和应用。近年来,Eureka在人工智能、物联网等领域取得了多项技术突破,推出了一系列具有竞争力的新产品。这些技术的突破和应用,不仅提升了Eureka的产品性能和质量,也推动了公司在行业内的领先地位。
随着产品线的不断丰富和技术实力的提升,博通集成开始积极拓展市场。公司凭借优质的产品和服务,赢得了众多客户的信赖和支持。同时,公司注重品牌建设,通过参加行业展会、举办技术研讨会等方式,提升品牌知名度和影响力。如今,博通集成已成为无线连接芯片设计领域的知名品牌。
博通集成深知技术创新是企业发展的核心动力。因此,公司始终保持高额的研发投入,不断推动技术创新和产品研发。公司拥有一支专业的研发团队,具备强大的研发实力和创新能力。通过持续的研发投入和技术创新,博通集成在无线连接芯片设计领域取得了显著的成果和进展。
51单片机有一个全双工的串行通讯口,所以单片机和电脑之间可以方便地进行串口通讯。进行串行通讯时要满足一定的条件,比如电脑的串口是RS232电平的,而单片机的串口是TTL电平的,MG200Q1ZS40两者之间必须有一个电平转换电路,我们采用了专用 ...… 查看全部问答∨ |
|
呵呵,小弟我作毕业设计遇到难题了,附件是原理图,用protues打开就可以了, 我程序部分很很有点问题。 各位大侠就帮帮忙啊 这个4*4键盘扫描程序在下面,这个搞好了,我的毕业设计论文基本就搞好了,等待 :\'( SAOMIAO: ...… 查看全部问答∨ |
请音频驱动高手进,能帮助解决问题,本人即付现金1000元作为感谢 本人参照网上的wavedev2移植手册以及s3c6410开发板自带的ac97,iis音频驱动,改编了pcm口的音频驱动。 其pcm口的初始化工作有:选择MPLL时钟、设置FSYNC\\SCLK分频,并将PCM配置为dma方式工作。 驱动程序的其他部 ...… 查看全部问答∨ |
在winCE自带的standard emulator下面仿真发现速度比较慢. 包刮按键盘响应和鼠标响应也很慢. 是否正常? 另外. 如果想在eVC4++开发数据库应用程序和在standard emulator下运行数据库. 应该还需要安装哪个软件?… 查看全部问答∨ |
linux-2.6.20的内核,cramfs文件系统,再启动到最后挂载文件系统时偶尔会出现错误: Error -5 while decompressing! c0327d8a(1928)->c3dfc000(4096) Error -3 while decompressing! 注:1,ECC校验已经改成NAND_ECC_NONE 2, ...… 查看全部问答∨ |
小弟今天完全安装了 eVC++ 4.0 ,建立了一个基于对话框的MFC工程,Build 时居然出错: ----------Configuration: SetTime - Win32 (WCE ARMV4) Debug------- Compiling resources... Error executing rc.exe. SetTime.exe - 1 error(s), 0 warn ...… 查看全部问答∨ |