这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 关于单片机编程中遇到的几个问题请教

共10条 1/1 1 跳转至

关于单片机编程中遇到的几个问题请教

工程师
2015-01-26 15:23:55     打赏

上图中主函数中有多个模块组成,假设这些模块有n个函数组成,假设这些模块是相互独立的,也就是彼此之间在没有相互关联的情况下,他们在主函数中的位置应该对整个程序的执行没有什么影响吧,请各位指点一下,谢谢。


2,当一个变量通过赋值语句把本身的值通过赋值语句给别人的时候,请问这个变量本身还没有数呢?谢谢。

3,假设在主函数中的多个地方都用到了定时1s的中断,也就是当定时1s到了的时候,需要执行操作1,在有的地方需要执行操作2,请问这样设置是不是不行的呢,这个定时1s用的是同一个定时器。

4,在编写串口接收一串字符串的函数时,当接收完数据之后,需要对计数变量清零,请问这个清零操作放在哪里比较合适呢,是放在中断函数里清零,还是放在中断服务函数中清零呢,谢谢。

请各位前辈多多指教,谢谢。


工程师
2015-01-26 19:16:35     打赏
2楼

1、好像是按顺序执行,但是函数之间要是有逻辑关系的话就不一定了。

2、没变

3、没太明白啊,如果用的都是同一个定时器的话肯定是同一个啊

4、不太会




我也不知道我回答的正确不,顺便学习一下其他人的回答


高工
2015-01-26 21:47:31     打赏
3楼

看着有点乱


工程师
2015-01-27 08:11:12     打赏
4楼
好滴,谢谢。

工程师
2015-01-27 08:11:29     打赏
5楼
请多多指教,呵呵。

工程师
2015-01-27 08:14:32     打赏
6楼

起来好早啊。


看来是8点上班的


专家
2015-01-27 08:15:11     打赏
7楼

1 2前面回答的很好了,我就不啰嗦了


3,假设在主函数中的多个地方都用到了定时1s的中断,也就是当定时1s到了的时候,需要执行操作1,在有的地方需要执行操作2,请问这样设置是不是不行的呢,这个定时1s用的是同一个定时器。

这个时候需要在各个操作中设置标志位  然后判断,是状态机的概念,

4,在编写串口接收一串字符串的函数时,当接收完数据之后,需要对计数变量清零,请问这个清零操作放在哪里比较合适呢,是放在中断函数里清零,还是放在中断服务函数中清零呢,谢谢。

用完就清除。仔细想想,中断服务函数还是在中断中,其实在哪里都一样,关键是要在下次使用前清零。


工程师
2015-01-27 09:06:52     打赏
8楼
嗯哪,嘿嘿。

工程师
2015-01-27 09:12:45     打赏
9楼

谢谢师兄,请您细说一下状态机行吗,

如果这样设置标志位的时候,还是相当于在1S这个时刻执行两个操作啊,请师兄多指教。


专家
2015-01-27 14:55:22     打赏
10楼

int  flag=0;

首先定义flag= ? ;

条件一满足  程序一(假如flag=1时执行)

条件二满足  程序二(。。flag=2。。。) 在程序2中修改flag=1

条件三满足  程序三(。。flag=3。。。)

delay(1s)

{

  flag=2;

}

这段程序就先后执行 程序二  程序一


共10条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]