OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4615|回复: 12

关于GPS+GSM分别调通后,配合在一起的问题

[复制链接]

16

主题

85

帖子

0

精华

初级会员

Rank: 2

积分
170
金钱
170
注册时间
2013-5-15
在线时间
0 小时
发表于 2015-4-27 16:01:43 | 显示全部楼层 |阅读模式
5金钱
我利用原子哥提供的GPS(串口1)和论坛一个哥们分享的GSM发短信的代码,都分别调试成功了,但是当我将两者结合的时候出现一些问题,比如说USART1_IRQChannel要改为USART1_IRQn,但是又碰到
\HARDWARE\USART2\usart2.h(29): error:  #147-D: declaration is incompatible with "void UART_DMA_Enable(DMA_Channel_TypeDef *, u8)" (declared at line 29 of "..\HARDWARE\USART1\usart1.h")
的错误,求解决方案。。


不知道是不是因为我之前套用的两个程序用的system库不同的问题。。。跪求解决方案哇orz

GPS+GSM.zip

5.12 MB, 下载次数: 185

ATK-NEO-6M GPS模块实验(串口1版本).zip

637.13 KB, 下载次数: 297

发送短信.zip

4.96 MB, 下载次数: 177

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

16

主题

85

帖子

0

精华

初级会员

Rank: 2

积分
170
金钱
170
注册时间
2013-5-15
在线时间
0 小时
 楼主| 发表于 2015-4-27 16:05:10 | 显示全部楼层
说这声明不兼容。。没搞懂要咋整,,求指点求教育。。。
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2015-4-27 19:19:15 | 显示全部楼层
说明你申明的和实际函数不一样,自己对比找问题即可。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

16

主题

85

帖子

0

精华

初级会员

Rank: 2

积分
170
金钱
170
注册时间
2013-5-15
在线时间
0 小时
 楼主| 发表于 2015-4-27 19:31:08 | 显示全部楼层
回复【3楼】正点原子:
---------------------------------
一样哇原子哥,usart2.c里
//开启一次DMA传输
void UART_DMA_Enable(DMA_Channel_TypeDef*DMA_CHx,u16 len)
{
DMA_CHx->CCR&=~(1<<0);       //关闭DMA传输 
DMA_CHx->CNDTR=len;          //DMA1,传输数据量 
DMA_CHx->CCR|=1<<0;          //开启DMA传输
}    

usart2.h里
void UART_DMA_Enable(DMA_Channel_TypeDef*DMA_CHx,u16 len);

而且这个在用串口2 发送短信的程序里已经调通可行了。。。
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2015-4-28 00:46:56 | 显示全部楼层
回复【4楼】红烧螺丝钉:
---------------------------------
一样的就不可能报错。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

16

主题

85

帖子

0

精华

初级会员

Rank: 2

积分
170
金钱
170
注册时间
2013-5-15
在线时间
0 小时
 楼主| 发表于 2015-4-28 01:00:20 | 显示全部楼层
回复【5楼】正点原子:
---------------------------------
真报错啊。。童叟无欺。。。
回复

使用道具 举报

16

主题

85

帖子

0

精华

初级会员

Rank: 2

积分
170
金钱
170
注册时间
2013-5-15
在线时间
0 小时
 楼主| 发表于 2015-4-28 01:27:01 | 显示全部楼层
回复【5楼】正点原子:
---------------------------------
原子哥。。我看了下好像是说我串口1串口2都有一段void UART_DMA_Enable(DMA_Channel_TypeDef *, u8)" 
这俩不兼容。。求解决方案求教育哇。。。夜不能寐
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2015-4-28 23:07:45 | 显示全部楼层
回复【7楼】红烧螺丝钉:
---------------------------------
换个名字
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

16

主题

85

帖子

0

精华

初级会员

Rank: 2

积分
170
金钱
170
注册时间
2013-5-15
在线时间
0 小时
 楼主| 发表于 2015-4-30 16:53:48 | 显示全部楼层
回复【8楼】正点原子:
---------------------------------
后来知道了,因为我同时使用原子哥你的USART1.c和USART2.c的原因,在usart1.c中void UART_DMA_Enable(DMA_Channel_TypeDef*DMA_CHx,u8 len)而在usart2.c中void UART_DMA_Enable(DMA_Channel_TypeDef*DMA_CHx,u16 len),定义u8 len,u16 len矛盾了
回复

使用道具 举报

16

主题

85

帖子

0

精华

初级会员

Rank: 2

积分
170
金钱
170
注册时间
2013-5-15
在线时间
0 小时
 楼主| 发表于 2015-4-30 17:08:01 | 显示全部楼层
回复【8楼】正点原子:
---------------------------------
现在又有个新问题,我使用串口2来发送GSM短信,以下四个函数
void TIM4_Set(u8 sta);
void TIM4_Init(u16 arr,u16 psc);
void UART_DMA_Config(DMA_Channel_TypeDef*DMA_CHx,u32 cpar,u32 cmar);
void UART_DMA_Enable(DMA_Channel_TypeDef*DMA_CHx,u16 len);
在usart1.c中重复定义了,我把usart2.c中重复部分删除了,sim900a.c原先包含头文件usart2.h,现在再补上usart1.h,我觉得这样应该没影响,sim900a功能应该照样能实现,但是现在跟踪发现u8 sim900a_send_cmd(u8 *cmd,u8 *ack,u16 waittime)函数中的if(USART2_RX_STA&0X8000)//收到期待的应答结果
{
if(sim900a_check_cmd(ack))break;//得到有效数据 
USART2_RX_STA=0;


跳不到{},也就是说USART2_RX_STA&0X8000一直为0,不知道为什么,,我检查了串口2中断使能什么的都打开了。。。求教育orz
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2015-4-30 22:58:40 | 显示全部楼层
回复【10楼】红烧螺丝钉:
---------------------------------
仿真调试,看看为什么不成立。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

1

主题

12

帖子

0

精华

新手上路

积分
20
金钱
20
注册时间
2016-1-2
在线时间
5 小时
发表于 2016-1-18 16:53:48 | 显示全部楼层
楼主成功了没     求助啊
回复

使用道具 举报

2

主题

17

帖子

0

精华

初级会员

Rank: 2

积分
52
金钱
52
注册时间
2015-12-28
在线时间
11 小时
发表于 2016-1-26 19:40:51 | 显示全部楼层
我也要做和楼主一样的东西,求教楼主啊
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-23 08:06

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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