北斗卫星导航系统(以下简称北斗系统,英文缩写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#进行北斗串口编程之一:获取北斗卡号相关推荐

  1. 获取SIM卡号(IMSI)

    又到一周周未时,该写博客了,但想了一下,突然发现这周什么也没干,也不知道写什么,最后突然在桌面上发现了这段代码,获取IMSI用的,也就拿这东东来写写吧,赶快写完得玩会游戏,游戏时间又到了,Dota-- ...

  2. android 7.1 RIL 获取SIM卡号

    平台 RK3288 + Android 7.1 + EC20 流程 获取手机号代码: TelephonyManager telMgr = (TelephonyManager) getSystemSer ...

  3. Android端使用NFC获取物理卡号

    Activity使用NFC 一.声明全局变量 声明全局变量:PendingIntent 和 NfcAdapter PendingIntent 说明:PendingIntent可以看作是对Intent的 ...

  4. C——Linux下的串口编程

    原 C--Linux下的串口编程 2017年06月06日 19:30:50 C_Aya 阅读数:11537 <span class="tags-box artic-tag-box&qu ...

  5. 扫描NFC卡,获取卡号存储到本地并可以以Excel形式导出数据

    这是一个使用支持NFC的手机扫描NFC射频卡获取到卡号,使用greenDao数据库做本地存储,扫完之后可以将数据以Excel表格形式导出查看数据.不是什么新技术,内容比较简单,这里就主要贴源码了,没有 ...

  6. sim卡号获取不完整解决方案

    val tm = context.getSystemService(Context.TELEPHONY_SERVICE) as? TelephonyManager?: return "nul ...

  7. Linux串口编程 —— 4G模块短信获取与删除

    文章目录 一. 回显短信的两种方式 1.1 PDU编码显示 1.2 Unicode显示 二. 相关指令的学习 2.1 AT+CMGF 设置短信回显模式 2.2 AT+CMGL 查看短信 2.2.1 A ...

  8. 串口编程 - windows如何枚举串口|获取活跃串口号

    串口编程 - windows如何枚举串口|获取活跃串口号 如需转载请标明出处:http://blog.csdn.net/itas109 QQ技术交流群:129518033 文章目录 串口编程 - wi ...

  9. 嵌入式linux/鸿蒙开发板(IMX6ULL)开发(十八)串口编程

    文章目录 一. 串口应用程序编程介绍 1.串口的作用 2. 本套视频特别说明 二. 硬件知识_UART硬件介绍 1. 串口的硬件介绍 2. 串口的参数 3. 串口电平 4. 串口内部结构 三. TTY ...

最新文章

  1. C#设计模式之:抽象工厂模式与反射
  2. Linux:几个重要的文件处理命令
  3. Kinect学习(五):提取带用户ID的深度数据
  4. Spring整合Struts2框架的第一种方式(Action由Struts2框架来创建)。在我的上一篇博文中介绍的通过web工厂的方式获取servcie的方法因为太麻烦,所以开发的时候不会使用。...
  5. 加时间水印_如何在手机照片上添加时间和日期?打开这个设置即可添加,超方便...
  6. oracle中的脱机与联机,使存储池中的设备联机和脱机
  7. 运用c++结束学校机房红蜘蛛控制软件
  8. python import _ssl_如何在python 2.7.6中导入_ssl?
  9. iOS UISlider
  10. Solidworks如何绘制标准螺纹线
  11. PHP打印Excel表格并下载
  12. 手把手教你实现echarts3的折线图下钻drilldown功能系列篇二
  13. 今晚8:00 | 杜克大学计算进化智能中心(CEI Lab)—— 联邦学习专题!
  14. ALV能否实现自动小计
  15. linux系统提升硬盘写速度的方法
  16. 人工智能基础(高中版)教材补充和资源分享之番外篇 Cozmo+Python+ROS+AI
  17. 常用去除离群值的算法!
  18. 雨天在火车站台上撑伞会触电吗?
  19. antd vue表单验证_ant design vue框架中自定义表单或单个表单框验证
  20. 22春天津大学《国际经济法学》在线作业二

热门文章

  1. 【ChatGPT情商大考验】ChatGPT教我谈恋爱
  2. 国家一级建造师—工程经济—第一章—第三节
  3. 设计模式---访问者模式
  4. 【蓝桥杯单片机组硬件原理】
  5. 学习体会:简单的代码也要写得美
  6. 通过Python的pdfplumber库将pdf转为图片
  7. goahead文件上传
  8. html中加入m3u,创建自己的播放列表(m3u文件)
  9. php计算QQ音乐guid,php实现网易云音乐 QQ音乐 酷狗音乐直链获取 搜索音乐及歌词...
  10. 卓讯EmteEasySite漏洞+拿webshell方法