侧边栏壁纸
博主头像
大数互联博主等级

HI,你好

  • 累计撰写 58 篇文章
  • 累计创建 55 个标签
  • 累计收到 2 条评论

目 录CONTENT

文章目录

Arduino开发记录

大数互联
2024-07-02 / 0 评论 / 0 点赞 / 10 阅读 / 763 字

1:从官网下载IDE
2:可用USB转串口芯片比较多比如CH340,CP2102进行程序烧录。
3:接脚从上到下分别是GND RXD TXD 5.0V 3.3V
接线表:
pro mini USB转TTL模块
GND GND
TXD RXD
RXD TXD
VCC 5V(3.3V)根据工作电压选取

你这个模块没有复位引脚(DTR),下载程序时要按一下 pro mini的复位按钮。

PRO MINI USB-232
VCC 5V
GND GND
TXD RXD
RXI TXD
usb那里选对口,板卡那里要选pro mini。
烧录后一秒左右,按重启键就好了。注意把握按的时间多试试。
非常注意下载程序时要按一下 pro mini的复位按钮。

相关资料
http://www.arduino.cc/en/Guide/ArduinoProMini

http://arduino.cc/en/Main/ArduinoBoardProMini
image

对于arduino pro mini(下称mini)接其它设备显示乱码、发送不了数据、接收不了数据问题分析

对于上述情况主要是mini与目标设备的串口波特率不一致导致,mini目前的型号atmega328p 5v 16MHz最高只支持 57600,设备上也要设置相同的波特率,所以此处需注意,对于在程序设定的流特率后显示还是乱码,那就有可能是环境问题 ,建议重新安装aruino相关环境,本次是在vscode中去掉了arduino插件,另外安装PlatformIO插件后就能按程序设定的波特率显示与接收正常的数据了。
另一方面也有可能是电压不够导致。

GPS数据提取

提取GNRMC

GNRMC为从设备获得的推荐的定位数据,以下例数据为例
GNRMC,165722.000,A,2638.940803,N,11251.309996,E,0.069,0.00,060724,E,A0B
#GNRMC_line格式为:[“b’GNRMC", '132558.000', 'A', '3412.93903', 'N', '11708.08969', 'E', '0.00', '0.00', '081221', '', '', "A*75\\r\\n'"] #GNRMC_line格式为:["b'GNRMC”, ‘当天UTC时间’, ‘A表示数据有效’, ‘纬度’, ‘N-北’, ‘经度’, ‘E-东’, ‘对地速度,单位为节’, ‘对地真航向,单位为度’, ‘日期(dd 为日,mm为月,yy为年)’, ‘’, ‘’, "A
75\r\n’"]
print(GNRMC_line) #查看数据类型
# 时间转化省略(需要把UTC转化为北京时间)
# Lat ddmm.mmmm 纬度,前2字符表示度,后面的字符表示分,需要转化为小数形式
latitude = float(GNRMC_line[3][:2]) + float(GNRMC_line[3][2:])/60
# Lon dddmm.mmmm 经度,前3字符表示度,后面的字符表示分,需要转化为小数形式
longitude = float(GNRMC_line[5][:3]) + float(GNRMC_line[5][3:])/60
print("纬度: " + GNRMC_line[4] + " " + str(latitude))
print("经度: " + GNRMC_line[6] + " " + str(longitude))
上述数据提取的经纬度数据为:
纬度:26.6490133833333333
经度:112.8551666

0

评论区