Microchip
直播中

白边赫

7年用户 209经验值
私信 关注
[问答]

如何从从UBLOX NEO接收基本信息

嗨,新到论坛,寻找一些一般信息,我以前在MikroC和BASIC上做了大量的工作,但是我正在转换中。我使用PIC16F1709,PICKIT 3,Windows10,MPLAB X(最新的),还有XC8编译器。我试图从UBLOX NEO 7M G接收基本信息。PS接收机,我知道它工作正常,我把它插到我的arduino板上,在串行监视器上看到一堆很好的句子,所以没有问题。说实话,除了基本结构之外,目前我没有相关代码,因此为什么我在这里张贴。我想做事件。实际情况是,接收GPS数据,在MPLB终端上查看其原型阶段,在芯片上存储几个句子(可能是最后3个GPRMC句子),然后将它们输出到一个透明的系列1Xbee单元。因此,如果任何人有关于软U(S)ART生成(比特碰撞)的信息,简单地说它们是如何工作的,将数据发送到XBee是多么容易,这将是有用的,但是这不是我的优先事项,特别是因为我的面板上的头间距与Xbee不匹配,所以我还不能使用它真的,我想知道的是,为了接收GPS数据,需要配置哪些寄存器,以及如何在终端上查看GPS数据,除了明显的TRIS&ANSEL寄存器等,我还设置了TX1STA和RC1STA,对于异步我可以做一些指导当我实际写信给TX1REG等时,会发生什么?一般来说怎样使用硬件USART等等。任何在我使用ISR之前使用过GPS的人都会非常感激一些输入,特别是关于中断如何链接到USART的使用。最后:为什么串行传输这样一个该死的雷区C?我记得几年前我用PICAXE微控制器和PIBASIC编码&它花了我30秒,一行代码,几乎任何引脚,很多!这是怎么回事?/对这篇文章表示歉意,所有的建议和问题都是受欢迎的。我会更详细地说,但那篇文章已经放得够多了。谢谢,肖恩。

回帖(5)

陈晨

2020-5-12 10:27:47
非常感谢你的回复,我想你可能对斯德哥尔摩综合症有什么看法吧!我想大部分的寄存器我都需要解决,而不是配置。我明白你的意思了,单片机和GPS都采用同样的传输方式,这个原理与近地天体探测装置的原理类似,你以前用过mplabX终端吗?有没有线索,如果我能运行GPS数据到我的电脑,尽管皮卡数据线?非常感谢,我可能会考虑多路复用的想法,你是不是在思考硬件复用?我曾简短地谈过它,但是很紧凑,并且试图避免购买硬件(虽然可能很便宜),同时有望实现一个软UART。感谢您提供的所有帮助,感谢您花时间解决所有问题!:)
举报

刘景

2020-5-12 10:47:35
我还没有使用MPLAB终端。不过你可能喜欢RealTerm。(或者精神失常发作后MS-DOS Kermit,嗯。)您选择的PIC有一个外围引脚选择模块,这意味着您可以将UART移动到您想要的任何引脚,从而可以软件复用。硬件虽然是个人项目,但是很便宜。我认为Pickit 3还没有UART到USB桥接模式,所以您需要使用另一个适配器。您可能希望查看数据表中的每个模块,并简单地考虑可以实现的所有可能性。
举报

陈晨

2020-5-12 10:55:06
啊哈,这真是太棒了(外围引脚选择),我一直在寻找的软UART材料的所有证据看起来都相当粗糙,与ISR&相当严重地擦伤;我已经在ISR中得到了一些相当敏感的材料,因此它会使事情轻微复杂化,所以经常复用会很棒!谢谢你!我会在数据表中找到一个巨魔,然后找到它,有什么我应该特别了解的吗?我同意硬多路复用的成本…老实说,我只是无聊得等着POST = D,哈!实际上,它是一个嵌入式项目(EE学生)&;如果我提出的任何解决方案是基于软件的,那么和我的上司一起下去可能会好得多!我想我可以在得到像我经常发现人们使用的调试头这样的东西之前,用arduino的终端接口设计一些粗糙的东西。非常感谢您的帮助!比起我参加过的其他电子论坛,我更喜欢这个论坛。真的开始质疑PIC的流行程度,甚至Arduino也有一个软串行库,使软串行变得更加容易。虽然我相信PIC也会有一些类似的东西。-肖恩
举报

刘景

2020-5-12 11:00:06
ARDUNO作为一种编码环境,被设计为实现起来非常简单。然而,正如我所见,这是极低效的。PIC具有很好的工业和汽车性能,它们的实际硬件指令集比较容易拾取。在业余爱好者圈子里,你不经常听说“超紧凑”ASM编码,这在我看来是不幸的。至于PPS模块,真正主要的事情是注意PPS“单向”配置设置:你将想要关闭它到更安全的软件多路复用。有一点需要注意,对于“位碰撞”,实际上您可以根据您的应用程序、接收数据的内容等来编写任何您喜欢的协议。至于ISR,这实际上不是问题:如果您有任何时间关键结构,那么您可以在手动之前禁用中断并重新启用之后。如果在ASM中编写代码,这大大地简化了,因为您确切地知道每次执行的位置。中断在PIC上的工作方式很简单,如果启用了特定的中断,在由事件设置的标志之后,代码将跳转到0x4。然后你的软件做它喜欢的,可以清除指示器标志,并返回到它所在的地方。中断是标志驱动的,所以如果你不清除它,同样的中断将再次发生。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分