标题: AT89C51单片机可以有另个主程序吗? [打印本页]

作者: 行为矛盾    时间: 2018-5-29 10:40
标题: AT89C51单片机可以有另个主程序吗?
在网上找了两个比较复杂的程序,更改难度很大 ,但是设计的要求要一起使用,但是使用的时间段上是可以分开的。可以设置某个时间段运行主程序A,哪个时间段运行主程序B吗?

作者: wulin    时间: 2018-5-29 12:00
主程序main()只能是唯一的,除了中断程序其他程序都是在main()内运行,如果两个互不关联的程序功能完全可以在主程序中分时调度运行。不过这种方法对初学者同样具有难度。
作者: Zoom    时间: 2018-5-29 13:23
如果是条件触发的话可以采用的中断方式
作者: AD9910    时间: 2018-5-29 20:01
main函数只能有一个
作者: 15942379927    时间: 2018-5-29 22:51
可以,你要是用定时器中断可以达到你的目的,前提你需要算好A程序什么时间运算,B程序什么时间运算,希望可以给你点思路
作者: yzwzfyz    时间: 2018-5-29 22:56
用定时器做一个时间中断,中断服务程序中将标记位变量B求反后退出。
主程序中:
当B=1时执行你的1号程序。
当B=0时执行你的2号程序。
作者: zl2168    时间: 2018-5-30 06:32
c51中,主程序main()只能是唯一的。但可分条件运行2个不同的主体函数,此时,该2个主体函数都不是主函数(名称而已)。
作者: 49843214    时间: 2018-5-30 07:17
运用抢占中断优先级啊。
作者: 大开口6666    时间: 2018-5-30 12:08
怕是不行吧?
作者: 非常坤哥    时间: 2018-5-30 16:20
焊两个单片机一起用得了
作者: 陈前前进    时间: 2018-5-30 18:15
主程序肯定是只能有一个
作者: 陈前前进    时间: 2018-5-30 18:16
主程序是肯定只能有一个的
作者: qshappy    时间: 2018-5-30 19:05
只有一个程序
作者: ooooooo1    时间: 2018-5-30 19:16
不可以
作者: yue999    时间: 2018-5-30 20:56
只能有一个主函数呦
作者: timelessxp    时间: 2018-5-30 21:12
一个工程必定是从main开始执行的,不过你可以通过设计定时器,通过设定定时次数来确定不同的执行时间
举例就是
中断服务函数
{
  if(time==100)
   {
     中断事件;
   }
   time=0;
}else
time++;
如此。

作者: Anm半夏    时间: 2018-5-30 21:14
可以的,在主程序中设置一下时间,用switch应该可以吧
作者: 东大门    时间: 2018-5-30 22:02
主程序main()只能是唯一的,除了中断程序其他程序都是在main()内运行,如果两个互不关联的程序功能完全可以在主程序中分时调度运行。不过这种方法对初学者同样具有难度。
作者: 4853    时间: 2018-5-30 22:17
可以用定时器,中断时在两个循环中切换。
作者: lanyu8388    时间: 2018-5-30 23:17
如果A,B程序中都同时都启用了同个中断或定时器,那就需要调整修改,那比较麻烦,如果其中一个程序只是用了几个函数实现了功能,完全可以复制到另一个程序中,进行调用即可
作者: edward123    时间: 2018-5-31 11:29
定时器中断
作者: zhuyy    时间: 2018-5-31 13:50
主程序main()只能有一个,但依据你的情况,可以将你所说的主程序设置为两个子函数或进程,在主函数中实现分时调用
作者: 78028048    时间: 2018-5-31 13:52
只有一个主循环
作者: 18879751050    时间: 2018-5-31 14:30
主程序必须是唯一的
作者: 你是猪啊    时间: 2018-5-31 15:05
中断程序其他程序都是在main()内运行
作者: 蓝少    时间: 2018-5-31 15:59
主程序main()只能有一个呀,你可以将两个程序包含到主程序运行就可以的了
作者: 蓝少    时间: 2018-5-31 16:00
主程序main()只能是一个的呀,你可以将两个程序合在主程序里运行的
作者: 萧萧1    时间: 2018-5-31 18:19
主程序main()只能是唯一
作者: zhaoyinlo    时间: 2018-9-4 17:34
主程序  只能有一个  你可以  在一个主程序里 添加 函数 (就是把另一个程序 写成一个函数 插入到  主程序里 )
加油
作者: 七娃    时间: 2018-9-4 18:40

main函数只能有一个
作者: 贝筱q    时间: 2018-9-4 20:04
主程序应该只有一个吧
作者: zmc419    时间: 2018-9-4 20:37
用定时器中断和标志变量进行切换
作者: nikola    时间: 2018-9-4 21:58
main函数基本上在哪都只能有一个。用中断,或者可以加个条件判断,在两个程序之间切换。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1