求助:UCOSII,函数传递参数值变化

2019-07-20 16:27发布

本帖最后由 tian213 于 2017-3-4 08:35 编辑

1 我在STM32F407板子上移植UCOSII,一直都没出什么问题,最近我想增加串口6打印功能,结果串口一直无数据输出,后来裸奔打印测试时正常的。
2 单步调试串口6,并监视寄存器值得变化,发现在初始化时,串口6所有寄存器的值都是0.
3 后来跟踪到USART_INIT内,才发现问题,函数入口的参数USART6的值是0x40011400,但是在USART_INIT内使用时,参数值USARTx变为0x40011000(串口1的地址,串口1的寄存器也确实被设置了),初始化不成功应该就是这里的原因了。
4 其它函数 USART_Cmd,UASRT_ClearFlag,USART_TTConfig都是这样的问题
5 我的另外一个串口3,能初始化成功,函数内部的值是正常。


哪位大神清楚该怎么解决啊??这段串口6初始化程序在裸奔时是正常的。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
tian213
1楼-- · 2019-07-20 20:31
正点原子 发表于 2017-3-4 11:58
uart_init,这个函数,你并没有入口参数啊

现在问题解决了,我在这段代码敲了几行回车,然后在全部重新编译就正常了。

因为这次是用光盘上的ucosII例程1直接修改的,把usrt6的相关代码直接拷贝到usart文件内覆盖,不知道是不是这个原因?
tian213
2楼-- · 2019-07-20 23:40
 精彩回答 2  元偷偷看……
正点原子
3楼-- · 2019-07-21 00:12
uart_init,这个函数,你并没有入口参数啊
tian213
4楼-- · 2019-07-21 06:03
 精彩回答 2  元偷偷看……

一周热门 更多>