开发平台(Platform):C language in embedded system
问题(Question):想让两颗LED用不同的频率闪烁
程式码(Code):
void task1(void)
{
J11: LED1 ON
J12: Delay 1s
J13: LED1 OFF
J14: Delay 1s
}
void task2(void)
{
J21: LED2 ON
J22: Delay 2s
J23: LED2 OFF
J24: Delay 2s
}
补充说明(Supplement):目前的想法是想用中断达到此功能,先执行J11,中断触发执行
J21,中断执行完毕再回去执行J12,中断又触发在执行J22....以此类推。看似很简单的功
能,但要写程式时却不知道如何下手。
问题1: 第一个中断触发后,要怎么样让中断副程式进入task2这个function?
问题2: 进入task2这个function后,如何让中断副程式"只"做一行后就结束?
问题3: 第二个中断触发后,如何让第二个中断从第一个中断结束的地方继续做?
问题4: 如3,第二个中断结束后,要如何返回J12,而不是重新从J11开始执行?
问题5: 这些功能是不是可以只靠"中断+if else"就达到?最多再多一个timer
问题6: 我该如何思考问题?虽然我现在有办法把问题列出来(并不完全),但最重要的是,
我要如何"思考"这些问题?
谢谢各位前辈的指点与指教,小弟感激不尽。