找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 620|回复: 13
收起左侧

单片机中断函数不能模块化,还是我全局变量出现了问题

  [复制链接]
ID:278457 发表于 2024-1-29 02:03 | 显示全部楼层 |阅读模式
我调试了很多时间,还是找不到答案。
J{8AONE_EZP(SQ19M@24[1J.png
QSY~5IB5NQ1SK4YGTM[1CCO.png
KF4H]82J)36]`966[CZDY}0.png
T]SQR~3CCGKDXY)~DTFRLK3.png
回复

使用道具 举报

ID:213173 发表于 2024-1-29 06:10 | 显示全部楼层
楼主在论坛混了6年之久,连这么简单的问题都搞不定?找《吴坚鸿教你单片机框架》看看。
回复

使用道具 举报

ID:1097337 发表于 2024-1-29 07:00 来自手机 | 显示全部楼层
编译提示中不是说了么,'aa'、'bb'两个变量你都没做定义。要在开头做变量类型定义。
回复

使用道具 举报

ID:391543 发表于 2024-1-29 08:16 | 显示全部楼层
外部声明变量aa,bb,extra int  aa,bb;为什么定时器0中断中放TH1和TL1
回复

使用道具 举报

ID:391543 发表于 2024-1-29 08:18 | 显示全部楼层
extern下aa,bb,定时器1的装载为啥放在定时器0中断中?
回复

使用道具 举报

ID:342197 发表于 2024-1-29 08:38 | 显示全部楼层
你的 aa 和 bb定义的是局部变量,中断服务函数无法调用,需要定义为全局变量。
回复

使用道具 举报

ID:118322 发表于 2024-1-29 08:48 | 显示全部楼层
TH1和TL1要放在定时器1中断里面
回复

使用道具 举报

ID:192020 发表于 2024-1-29 09:31 | 显示全部楼层
在service.h中加extern unsigned int aa;extern unsigned int bb;然后在有调用aa、bb变量里包括service.h文件,如你在iinterrupt.c用到了这两个变量,那就在这个文件前面加#include “service.h”
回复

使用道具 举报

ID:149642 发表于 2024-1-29 10:11 | 显示全部楼层
你这高级工程师咋混的哦,编译器的提示都不会看的。
回复

使用道具 举报

ID:883242 发表于 2024-1-29 13:44 | 显示全部楼层
错的太多了吧。
回复

使用道具 举报

ID:291549 发表于 2024-1-29 16:22 | 显示全部楼层
翻译下
错误C202:'bb': 未定义的标识符
回复

使用道具 举报

ID:278457 发表于 2024-1-30 10:15 | 显示全部楼层
qq475878026 发表于 2024-1-29 09:31
在service.h中加extern unsigned int aa;extern unsigned int bb;然后在有调用aa、bb变量里包括service.h ...

太感谢.
回复

使用道具 举报

ID:278457 发表于 2024-1-30 10:16 | 显示全部楼层
远征之路 发表于 2024-1-29 08:38
你的 aa 和 bb定义的是局部变量,中断服务函数无法调用,需要定义为全局变量。

感谢
回复

使用道具 举报

ID:1043230 发表于 2024-1-31 08:38 | 显示全部楼层
不同文件下调用变量要extern一下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表