用C#进行北斗串口编程之一:获取北斗卡号
北斗卫星导航系统(以下简称北斗系统,英文缩写BDS),是中国着眼于国家安全和经济社会发展需要,自主建设运行的全球卫星导航系统,是为全球用户提供全天候、全天时、高精度的定位、导航和授时服务的国家重要时空基础设施。
北斗三号已经在2020年正式开通,预计2021年开放给民用。我们在这里可以提前了解一下北斗二代的编程技术,三代的编程原理也是类似的。
你需要的设备
1)一台带串口的北斗终端
我使用的是成都国星的车载北斗终端。
2)电脑上有串口或者U转串的线
现在的电脑一般都不配串口,可以买一根USB转串口的转接线,我从网上买了一根绿联的,质量挺好。连接之后,安装相应的驱动程序。
第一步,查看可用的串口
安装好U转串的驱动之后,可以在计算机管理里看到可用的串口,我这里是COM5。
第二步,从串口接收一行文本
在Visual Studio里新建一个控制台项目,在System.IO.Ports里提供了一个SerialPort类,可以方便地进行串口通讯,北斗设备的串口的波特率一般是115200,具体看厂商设备的说明书。
//using System.IO.Ports;
SerialPort port = new SerialPort("COM5", 115200);
port.Open();
string line = port.ReadLine();
Console.WriteLine(line);
port.Close();
运行之后,我的程序从串口里收到一行数据:
$GNRMC,074126.087,V,,,,,0.00,260.32,250121,,,N*5A
表示北斗设备正常,你接收到的信息可能与我的不一样。
第三步,获取北斗卡号
先上代码。
SerialPort port = new SerialPort("COM5", 115200);
port.Open();
port.Write("$CCICA,0,0*4B\r\n");
for (int i = 0; i < 10; i++)
{string line = port.ReadLine();if (line.StartsWith("$BDICI")){Console.WriteLine(line);}
}
如果北斗设备正常,可以得到类似下面的一行信息,925867就是北斗卡号。
$BDICI,0925867,2204536,1934946,6,60,3,N,0*0F
简单说明一下:
$CCICA,0,0*4B\r\n
是发送给串口的一行命令,如果命令符合北斗通讯的语法规则,串口会收到一条 $BDICI 的反馈信息,逗号分隔了许多参数,第一个参数就是北斗卡号。
好了,今天先介绍到这里,最最基本的北斗串口通讯就是这么简单,后续我再分享其它的内容。
用C#进行北斗串口编程之一:获取北斗卡号相关推荐
- 获取SIM卡号(IMSI)
又到一周周未时,该写博客了,但想了一下,突然发现这周什么也没干,也不知道写什么,最后突然在桌面上发现了这段代码,获取IMSI用的,也就拿这东东来写写吧,赶快写完得玩会游戏,游戏时间又到了,Dota-- ...
- android 7.1 RIL 获取SIM卡号
平台 RK3288 + Android 7.1 + EC20 流程 获取手机号代码: TelephonyManager telMgr = (TelephonyManager) getSystemSer ...
- Android端使用NFC获取物理卡号
Activity使用NFC 一.声明全局变量 声明全局变量:PendingIntent 和 NfcAdapter PendingIntent 说明:PendingIntent可以看作是对Intent的 ...
- C——Linux下的串口编程
原 C--Linux下的串口编程 2017年06月06日 19:30:50 C_Aya 阅读数:11537 <span class="tags-box artic-tag-box&qu ...
- 扫描NFC卡,获取卡号存储到本地并可以以Excel形式导出数据
这是一个使用支持NFC的手机扫描NFC射频卡获取到卡号,使用greenDao数据库做本地存储,扫完之后可以将数据以Excel表格形式导出查看数据.不是什么新技术,内容比较简单,这里就主要贴源码了,没有 ...
- sim卡号获取不完整解决方案
val tm = context.getSystemService(Context.TELEPHONY_SERVICE) as? TelephonyManager?: return "nul ...
- Linux串口编程 —— 4G模块短信获取与删除
文章目录 一. 回显短信的两种方式 1.1 PDU编码显示 1.2 Unicode显示 二. 相关指令的学习 2.1 AT+CMGF 设置短信回显模式 2.2 AT+CMGL 查看短信 2.2.1 A ...
- 串口编程 - windows如何枚举串口|获取活跃串口号
串口编程 - windows如何枚举串口|获取活跃串口号 如需转载请标明出处:http://blog.csdn.net/itas109 QQ技术交流群:129518033 文章目录 串口编程 - wi ...
- 嵌入式linux/鸿蒙开发板(IMX6ULL)开发(十八)串口编程
文章目录 一. 串口应用程序编程介绍 1.串口的作用 2. 本套视频特别说明 二. 硬件知识_UART硬件介绍 1. 串口的硬件介绍 2. 串口的参数 3. 串口电平 4. 串口内部结构 三. TTY ...
最新文章
- C#设计模式之:抽象工厂模式与反射
- Linux:几个重要的文件处理命令
- Kinect学习(五):提取带用户ID的深度数据
- Spring整合Struts2框架的第一种方式(Action由Struts2框架来创建)。在我的上一篇博文中介绍的通过web工厂的方式获取servcie的方法因为太麻烦,所以开发的时候不会使用。...
- 加时间水印_如何在手机照片上添加时间和日期?打开这个设置即可添加,超方便...
- oracle中的脱机与联机,使存储池中的设备联机和脱机
- 运用c++结束学校机房红蜘蛛控制软件
- python import _ssl_如何在python 2.7.6中导入_ssl?
- iOS UISlider
- Solidworks如何绘制标准螺纹线
- PHP打印Excel表格并下载
- 手把手教你实现echarts3的折线图下钻drilldown功能系列篇二
- 今晚8:00 | 杜克大学计算进化智能中心(CEI Lab)—— 联邦学习专题!
- ALV能否实现自动小计
- linux系统提升硬盘写速度的方法
- 人工智能基础(高中版)教材补充和资源分享之番外篇 Cozmo+Python+ROS+AI
- 常用去除离群值的算法!
- 雨天在火车站台上撑伞会触电吗?
- antd vue表单验证_ant design vue框架中自定义表单或单个表单框验证
- 22春天津大学《国际经济法学》在线作业二