CN104469501A - 一种基于串口通信协议的机顶盒自动设置方法 - Google Patents
一种基于串口通信协议的机顶盒自动设置方法 Download PDFInfo
- Publication number
- CN104469501A CN104469501A CN201410584495.7A CN201410584495A CN104469501A CN 104469501 A CN104469501 A CN 104469501A CN 201410584495 A CN201410584495 A CN 201410584495A CN 104469501 A CN104469501 A CN 104469501A
- Authority
- CN
- China
- Prior art keywords
- top box
- set top
- data
- order
- host computer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000004891 communication Methods 0.000 title claims abstract description 23
- 238000000034 method Methods 0.000 title claims abstract description 23
- 239000012634 fragment Substances 0.000 claims description 20
- 230000005540 biological transmission Effects 0.000 claims description 12
- 230000004044 response Effects 0.000 claims description 6
- 230000008569 process Effects 0.000 abstract description 5
- 238000004519 manufacturing process Methods 0.000 abstract description 3
- 230000011218 segmentation Effects 0.000 description 25
- 238000012546 transfer Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/26613—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for generating or managing keys in general
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/262—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
- H04N21/26291—Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for providing content or additional data updates, e.g. updating software modules, stored at the client
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
- H04N21/4432—Powering on the client, e.g. bootstrap loading using setup parameters being stored locally or received from the server
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供一种基于串口通信协议的机顶盒自动设置方法,包括:上位机向机顶盒发送请求握手命令,控制机顶盒与上位机建立连接;上位机向机顶盒发送初始化命令,控制机顶盒初始化;上位机向机顶盒发送序列编号写入命令,机顶盒将指定的序列编号写入;上位机向机顶盒发送固件信息获取命令,机顶盒返回固件信息;上位机向机顶盒发送CA加密数据命令,并将CA加密数据写入机顶盒的指定位置;上位机向机顶盒发送出厂设置命令,机顶盒进行出厂设置;上位机向机顶盒发送重启命令,机顶盒重启。本发明的优点如下:将复杂繁琐的机顶盒操作交由上位机来完成,主要以通信协议的方式实现对机顶盒的操作,简化了操作流程,实现了机顶盒的批量自动化生产。
Description
技术领域
本发明涉及一种基于串口通信协议的机顶盒自动设置方法。
背景技术
在传统的机顶盒生产过程中,对机顶盒进行数据读写、控制(例如重启机顶盒)等设置,都需要进行手动操作,通过人为干预或者其他更为复杂繁琐的方式实现,这种实现方式主要存在以下缺陷:操作复杂繁琐,且容易出现错误操作,造成机顶盒无法正常使用;还有就是手动操作速度较慢,这极大的影响了产线上机顶盒的生产效率。
发明内容
本发明要解决的技术问题,在于提供一种基于串口通信协议的机顶盒自动设置方法,通过将复杂繁琐的机顶盒设置操作交由上位机来完成,以通信协议的方式实现对机顶盒的操作,简化了操作流程,实现了机顶盒的批量自动化设置。
本发明一种基于串口通信协议的机顶盒自动设置方法,所述方法使用基于RS232的串口通信协议,所述串口通信协议的数据结构依次包括如下字段:发起端标识Tag,用于标识发送的实体;会话类型Opt,用于标识要实现的操作;分段号N,用于标识分段传输的数据的顺序,方便接收端组合还原数据;数据类型Flg,用于对连接的计数;字节长度Len,用于标识该字段之后所有字节的长度;传输的数据Data,用于存储要传输的数据;校验码CRC,用于对接收的数据进行检查;
所述方法包括如下步骤:
步骤1、上位机通过串口向机顶盒发送请求握手命令,机顶盒接收到请求握手命令后,就通过串口向上位机发送应答握手命令,实现上位机与机顶盒之间连接的创建;
步骤2、上位机通过串口向机顶盒发送初始化命令,机顶盒接收到初始化命令后就进行初始化,并通过串口向上位机发送初始化应答命令,告知上位机初始化情况;
步骤3、上位机通过串口向机顶盒发送序列编号写入命令,机顶盒接收到写入命令后就将序列编号写入存储位置,并通过串口向上位机发送序列编号写入应答命令,返回写入的序列编号与本地序列编号对比,若对比结果一致,则说明写入正确,若不一致,则重新写入;
步骤4、上位机通过串口向机顶盒发送固件信息获取命令,机顶盒接收到获取命令后,就通过串口向上位机发送固件信息应答命令,向上位机返回固件信息;
步骤5、上位机通过串口向机顶盒发送CA加密数据命令,机顶盒接收到命令后就将CA加密数据写入指定的位置,并通过串口向上位机发送CA加密数据应答命令,告知上位机CA加密数据的写入情况;
步骤6、上位机通过串口向机顶盒发送出厂设置命令,机顶盒接收到出厂设置命令后,就进行出厂设置,并通过串口向上位机发送出厂设置应答命令,告知上位机的出厂设置情况;
步骤7、上位机通过串口向机顶盒发送重启命令,机顶盒接收到命令后,就进行重启;
其中,所述请求握手命令、应答握手命令、初始化命令、初始化应答命令、序列编号写入命令、序列编号写入应答命令、固件信息获取命令、固件信息应答命令、CA加密数据命令、CA加密数据应答命令、出厂设置命令、出厂设置应答命令以及重启命令的数据结构与所述串口通信协议一致,均依次包括所述发起端标识Tag、会话类型Opt、分段号N、数据类型Flg、字节长度Len、传输的数据Data以及校验码CRC。
进一步地,所述固件信息包括:芯片号、软件版本号、硬件版本号、校验码、设备ID号、Mac地址、设备厂商号。
本发明具有如下优点:将复杂繁琐的机顶盒设置操作交由上位机来完成,主要以通信协议的方式实现对机顶盒的操作,简化了操作流程,实现了机顶盒的批量自动化设置。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1为本发明方法执行流程图。
图2为本发明中串口通信协议的数据结构图。
具体实施方式
请参照图1至图2所示,本发明一种基于串口通信协议的机顶盒自动设置方法,所述方法使用基于RS232的串口通信协议,所述串口通信协议的数据结构依次包括如下字段:发起端标识Tag,用于标识发送的实体;会话类型Opt,用于标识要实现的操作;分段号N,用于标识分段传输的数据的顺序,方便接收端组合还原数据(即当传输的数据量比较大时,就需要对数据进行分段处理,以方便数据传输,接收端再对分段数据进行还原,以方便对数据进行处理);数据类型Flg,用于对连接的计数;字节长度Len,用于标识该字段之后所有字节的长度;传输的数据Data,用于存储要传输的数据;校验码CRC,用于对接收的数据进行检查。
所述方法包括具体如下步骤:
步骤1、上位机通过串口向机顶盒发送请求握手命令,机顶盒接收到请求握手命令后,就通过串口向上位机发送应答握手命令,实现上位机与机顶盒之间连接的创建;
步骤2、上位机通过串口向机顶盒发送初始化命令,机顶盒接收到初始化命令后就进行初始化,并通过串口向上位机发送初始化应答命令,告知上位机初始化情况;
步骤3、上位机通过串口向机顶盒发送序列编号写入命令,该序列编号是机顶盒的唯一标识码,机顶盒接收到写入命令后就将序列编号写入存储位置,并通过串口向上位机发送序列编号写入应答命令,返回写入的序列编号与本地序列编号对比,若对比结果一致,则说明写入正确,若不一致,则重新写入;
步骤4、上位机通过串口向机顶盒发送固件信息获取命令,机顶盒接收到获取命令后,就通过串口向上位机发送固件信息应答命令,向上位机返回固件信息,所述固件信息包括:芯片号、软件版本号、硬件版本号、校验码、设备ID号、Mac地址、设备厂商号;
步骤5、上位机通过串口向机顶盒发送CA加密数据命令,机顶盒接收到命令后就将CA加密数据写入指定的位置,并通过串口向上位机发送CA加密数据应答命令,告知上位机CA加密数据的写入情况;
步骤6、上位机通过串口向机顶盒发送出厂设置命令,机顶盒接收到出厂设置命令后,就进行出厂设置,并通过串口向上位机发送出厂设置应答命令,告知上位机的出厂设置情况;
步骤7、上位机通过串口向机顶盒发送重启命令,机顶盒接收到命令后,就进行重启;
其中,所述请求握手命令、应答握手命令、初始化命令、初始化应答命令、序列编号写入命令、序列编号写入应答命令、固件信息获取命令、固件信息应答命令、CA加密数据命令、CA加密数据应答命令、出厂设置命令、出厂设置应答命令以及重启命令的数据结构与所述串口通信协议一致,均依次包括所述发起端标识Tag、会话类型Opt、分段号N、数据类型Flg、字节长度Len、传输的数据Data以及校验码CRC。
所述上位机是指可以直接发出操控命令的计算机(一般指PC机),所述上位机能够屏幕上显示各种信号的变化。
具体实施例:
步骤1、上位机通过串口向机顶盒发送请求握手命令,该握手命令各字段的数值如表1所示:
表1握手命令各字段的数值
Tag | Opt | N | Flg | Len | Data | CRC |
0xAA | 0x43 | 0x00 | 0x00 | 0x0003 | 0x524553 | Crc32 |
其中,Tag表示命令的发送方向,0xAA(0x表示这是一个十六进制数,以下所有0x均表示所属数值为一个十六进制数)在这里表示该命令是由上位机发送到机顶盒的;Opt表示会话的类型,0x43是字母‘C’的ASCII码,在这里表示此次会话为创建连接;N表示命令分段号,当命令较长时,发送方需要将命令分段发送,接收方则需要使用分段号N将命令拼接组合,由于请求握手命令数据量较小,不需要分段,所以该字段数值为零,用0x00表示;Flg表示连接计数器,由于是第一次发起请求握手命令,所以该字段数值为零,用0x00表示;Len表示字节长度,在该命令中,Data和CRC的字节长度为0x0003;Data表示要传输的数据,这里Data的内容为字符串“RES”,用于表示请求握手命令;CRC表示CRC32校验码,用于对机顶盒接收到的数据进行检查,以保证数据的正确性。
机顶盒接收到请求握手命令后,就通过串口向上位机发送应答握手命令,实现上位机与机顶盒之间连接的创建;所述应答握手命令各字段的数值如表2所示:
表2应答握手命令各字段的数值
Tag | Opt | N | Flg | Len | Data | CRC |
0xBB | 0x43 | 0x00 | 0x01 | 0x0003 | 0x524551 | Crc32 |
其中,Tag表示命令的发送方向,0xBB在这里表示该命令是由机顶盒发送到上位机的;Opt表示会话的类型,0x43是字母‘C’的ASCII码,在这里表示此次会话为创建连接;N表示命令分段号,这里由于应答握手命令数据量较小,不需要分段,所以该字段数值为零,用0x00表示;Flg表示连接计数器,由于这是第二次发起命令,所以该字段数值为1,用0x01表示;Len表示字节长度,在该命令中,Data和CRC的字节长度为0x0003;Data表示要传输的数据,这里Data的内容为字符串“REQ”,用于表示应答握手命令;CRC表示CRC32校验码,用于对上位机接收到的数据进行检查,以保证数据的正确性。
步骤2、上位机通过串口向机顶盒发送初始化命令,该初始化命令各字段的数值如表3所示:
表3初始化命令各字段的数值
Tag | Opt | N | Flg | Len | Data | CRC |
0xAA | 0x49 | 0x00 | 0x02 | length | data | Crc32 |
其中,Tag表示命令的发送方向,0xAA在这里表示该命令是由上位机发送到机顶盒的;Opt表示会话的类型,0x49是字母‘I’的ASCII码,在这里表示此次会话为初始化;N表示命令分段号,这里由于初始化命令数据量较小,不需要分段,所以该字段数值为零,用0x00表示,当然,如果初始化命令比较长时,也可以进行分段;Flg表示连接计数器,由于这是第三次发起命令,所以该字段数值为2,用0x02表示;Len表示字节长度,这里用length表示Data和CRC的字节长度;Data表示要传输的数据,这里Data的内容可自定义(例如初始化Flash或者EEPROM等,我们用data表示);CRC表示CRC32校验码,用于对机顶盒接收到的数据进行检查,以保证数据的正确性。
机顶盒接收到初始化命令后就进行初始化,并通过串口向上位机发送初始化应答命令,告知上位机初始化情况;所述初始化应答命令各字段的数值如表4所示:
表4初始化应答命令各字段的数值
Tag | Opt | N | Flg | Len | Data | CRC |
0xBB | 0x49 | 0x00 | 0x03 | length | data | Crc32 |
其中,Tag表示命令的发送方向,0xBB在这里表示该命令是由机顶盒发送到上位机的;Opt表示会话的类型,0x49是字母‘I’的ASCII码,在这里表示此次会话为初始化;N表示命令分段号,这里由于初始化应答命令数据量较小,不需要分段,所以该字段数值为零,用0x00表示,当然,如果初始化应答命令比较长时,也可以进行分段;Flg表示连接计数器,由于这是第四次发起命令,所以该字段数值为3,用0x03表示;Len表示字节长度,这里用length表示Data和CRC的字节长度;Data表示要传输的数据,这里Data的内容为机顶盒初始化后的状态(我们用data表示);CRC表示CRC32校验码,用于对上位机接收到的数据进行检查,以保证数据的正确性。
步骤3、上位机通过串口向机顶盒发送序列编号写入命令,该序列编号是机顶盒的唯一标识码,所述序列编号写入命令各字段的数值如表5所示:
表5序列编号写入命令各字段的数值
Tag | Opt | N | Flg | Len | Data | CRC |
0xAA | 0x53 | 0x00 | 0x04 | length | data | Crc32 |
其中,Tag表示命令的发送方向,0xAA在这里表示该命令是由上位机发送到机顶盒的;Opt表示会话的类型,0x53是字母‘S’的ASCII码,在这里表示此次会话为设置序列编号;N表示命令分段号,这里由于序列编号写入命令数据量较小,不需要分段,所以该字段数值为零,用0x00表示,当然,如果序列编号写入命令比较长时,也可以进行分段,当然,如果初始化应答命令比较长时,也可以进行分段;Flg表示连接计数器,由于这是第五次发起命令,所以该字段数值为4,用0x04表示;Len表示字节长度,这里用length表示Data和CRC的字节长度;Data表示要传输的数据,这里Data的内容为要写入的机顶盒的序列编号(我们用data表示);CRC表示CRC32校验码,用于对机顶盒接收到的数据进行检查,以保证数据的正确性。
机顶盒接收到写入命令后就将序列编号写入存储位置,并通过串口向上位机发送序列编号写入应答命令,返回写入的序列编号与本地序列编号对比,若对比结果一致,则说明写入正确,若不一致,则重新写入;所述序列编号写入应答命令各字段的数值如表6所示:
表6序列编号写入应答命令各字段的数值
Tag | Opt | N | Flg | Len | Data | CRC |
0xBB | 0x53 | 0x00 | 0x05 | length | data | Crc32 |
其中,Tag表示命令的发送方向,0xBB在这里表示该命令是由机顶盒发送到上位机的;Opt表示会话的类型,0x53是字母‘S’的ASCII码,在这里表示此次会话为设置序列编号;N表示命令分段号,这里由于序列编号写入应答命令数据量较小,不需要分段,所以该字段数值为零,用0x00表示,当然,如果序列编号写入应答命令比较长时,也可以进行分段;Flg表示连接计数器,由于这是第六次发起命令,所以该字段数值为5,用0x05表示;Len表示字节长度,这里用length表示Data和CRC的字节长度;Data表示要传输的数据,这里Data的内容为写入存储位置的序列编号(我们用data表示);CRC表示CRC32校验码,用于对上位机接收到的数据进行检查,以保证数据的正确性。
步骤4、上位机通过串口向机顶盒发送固件信息获取命令,该固件信息获取命令各字段的数值如表7所示:
表7固件信息获取命令各字段的数值
Tag | Opt | N | Flg | Len | Data | CRC |
0xAA | 0x47 | 0x00 | 0x06 | 0 | - | Crc32 |
其中,Tag表示命令的发送方向,0xAA在这里表示该命令是由上位机发送到机顶盒的;Opt表示会话的类型,0x47是字母‘G’的ASCII码,在这里表示此次会话为获取固件信息;N表示命令分段号,这里由于固件信息获取命令数据量较小,不需要分段,所以该字段数值为零,用0x00表示,当然,如果固件信息获取命令比较长时,也可以进行分段;Flg表示连接计数器,由于这是第七次发起命令,所以该字段数值为6,用0x06表示;Len表示字节长度,这里用length表示Data和CRC的字节长度;Data表示要传输的数据,由于该固件信息获取命令无携带任何数据,所以Data的内容为空;CRC表示CRC32校验码,用于对机顶盒接收到的数据进行检查,以保证数据的正确性。
机顶盒接收到获取命令后,就通过串口向上位机发送固件信息应答命令,返回固件信息,所述固件信息包括:芯片号、Flash ID、软件版本号、硬件版本号、校验码、设备号、Mac地址、设备厂商号;所述固件信息应答命令各字段的数值如表8所示:
表8固件信息应答命令各字段的数值
Tag | Opt | N | Flg | Len | Data | CRC |
0xBB | 0x47 | 0x00 | 0x07 | length | data | Crc32 |
其中,Tag表示命令的发送方向,0xBB在这里表示该命令是由机顶盒发送到上位机的;Opt表示会话的类型,0x47是字母‘G’的ASCII码,在这里表示此次会话为获取固件信息;N表示命令分段号,这里由于固件信息应答命令数据量较小,不需要分段,所以该字段数值为零,用0x00表示,当然,如果固件信息应答命令比较长时,也可以进行分段;Flg表示连接计数器,由于这是第八次发起命令,所以该字段数值为7,用0x07表示;Len表示字节长度,这里用length表示Data和CRC的字节长度;Data表示要传输的数据,这里Data的内容为机顶盒的固件信息(我们用data表示);CRC表示CRC32校验码,用于对上位机接收到的数据进行检查,以保证数据的正确性。
步骤5、上位机通过串口向机顶盒发送CA数据加密命令,该CA数据加密命令各字段的数值如表9所示:
表9CA数据加密命令各字段的数值
Tag | Opt | N | Flg | Len | Data | CRC |
0xAA | 0x44 | 0x00 | 0x08 | length | data | Crc32 |
其中,Tag表示命令的发送方向,0xAA在这里表示该命令是由上位机发送到机顶盒的;Opt表示会话的类型,0x44是字母‘D’的ASCII码,在这里表示此次会话为设置加密数据;N表示命令分段号,这里由于CA数据加密命令数据量较小,不需要分段,所以该字段数值为零,用0x00表示,当然,如果CA数据加密命令比较长时,也可以进行分段;Flg表示连接计数器,由于这是第九次发起命令,所以该字段数值为8,用0x08表示;Len表示字节长度,这里用length表示Data和CRC的字节长度;Data表示要传输的数据,这里Data的内容为CA加密数据(我们用data表示);CRC表示CRC32校验码,用于对机顶盒接收到的数据进行检查,以保证数据的正确性。
机顶盒接收到命令后就将CA加密数据写入指定的位置,并通过串口向上位机发送CA加密数据应答命令,告知上位机CA加密数据的写入情况;所述CA加密数据应答命令各字段的数值如表10所示:
表10CA加密数据应答命令各字段的数值
Tag | Opt | N | Flg | Len | Data | CRC |
0xBB | 0x44 | 0x00 | 0x09 | length | data | Crc32 |
其中,Tag表示命令的发送方向,0xBB在这里表示该命令是由机顶盒发送到上位机的;Opt表示会话的类型,0x44是字母‘G’的ASCII码,在这里表示此次会话为设置加密数据;N表示命令分段号,这里由于CA加密数据应答命令数据量较小,不需要分段,所以该字段数值为零,用0x00表示,当然,如果CA加密数据应答命令比较长时,也可以进行分段;Flg表示连接计数器,由于这是第十次发起命令,所以该字段数值为9,用0x09表示;Len表示字节长度,这里用length表示Data和CRC的字节长度;Data表示要传输的数据,这里Data的内容为CA加密数据写入成功的首地址及字节总数(我们用data表示);CRC表示CRC32校验码,用于对上位机接收到的数据进行检查,以保证数据的正确性。
步骤6、上位机通过串口向机顶盒发送出厂设置命令,该出厂设置命令各字段的数值如表11所示:
表11出厂设置命令各字段的数值
Tag | Opt | N | Flg | Len | Data | CRC |
0xAA | 0x46 | 0x00 | 0x0A | length | data | Crc32 |
其中,Tag表示命令的发送方向,0xAA在这里表示该命令是由上位机发送到机顶盒的;Opt表示会话的类型,0x46是字母‘F’的ASCII码,在这里表示此次会话为出厂设置;N表示命令分段号,这里由于出厂设置命令数据量较小,不需要分段,所以该字段数值为零,用0x00表示当然,如果出厂设置命令比较长时,也可以进行分段;Flg表示连接计数器,由于这是第十一次发起命令,所以该字段数值为10,用0x0A表示;Len表示字节长度,这里用length表示Data和CRC的字节长度;Data表示要传输的数据,这里Data的内容为要进行出厂设置的具体数据(我们用data表示);CRC表示CRC32校验码,用于对机顶盒接收到的数据进行检查,以保证数据的正确性。
机顶盒接收到出厂设置命令后,就进行出厂设置,并通过串口向上位机发送出厂设置应答命令,告知上位机的出厂设置情况;所述出厂设置应答命令各字段的数值如表12所示:
表12出厂设置应答命令各字段的数值
Tag | Opt | N | Flg | Len | Data | CRC |
0xBB | 0x46 | 0x00 | 0x0B | length | data | Crc32 |
其中,Tag表示命令的发送方向,0xBB在这里表示该命令是由机顶盒发送到上位机的;Opt表示会话的类型,0x46是字母‘F’的ASCII码,在这里表示此次会话为出厂设置;N表示命令分段号,这里由于出厂设置应答命令数据量较小,不需要分段,所以该字段数值为零,用0x00表示当然,如果出厂设置应答命令比较长时,也可以进行分段;Flg表示连接计数器,由于这是第十二次发起命令,所以该字段数值为11,用0x0B表示;Len表示字节长度,这里用length表示Data和CRC的字节长度;Data表示要传输的数据,这里Data的内容为机顶盒出厂设置后的状态(我们用data表示);CRC表示CRC32校验码,用于对上位机接收到的数据进行检查,以保证数据的正确性。
步骤7、上位机通过串口向机顶盒发送重启命令,机顶盒接收到重启命令后,就进行重启;所示重启命令各字段的数值如表13所示:
表13重启命令各字段的数值
Tag | Opt | N | Flg | Len | Data | CRC |
0xAA | 0x52 | 0x00 | 0x0C | 0 | - | Crc32 |
其中,Tag表示命令的发送方向,0xAA在这里表示该命令是由上位机发送到机顶盒的;Opt表示会话的类型,0x52是字母‘R’的ASCII码,在这里表示此次会话为机顶盒重启;N表示命令分段号,这里由于重启命令数据量较小,不需要分段,所以该字段数值为零,用0x00表示;Flg表示连接计数器,由于这是第十三次发起命令,所以该字段数值为12,用0x0C表示;Len表示Data和CRC的字节长度,由于该重启命令无携带任何数据信息,所以Len值为0;Data表示要传输的数据,这里Data的内容为空;CRC表示CRC32校验码,用于对上位机接收到的数据进行检查,以保证数据的正确性。
本发明具有如下优点:将复杂繁琐的机顶盒设置操作交由上位机来完成,主要以通信协议的方式实现对机顶盒的操作,简化了操作流程,实现了机顶盒的批量自动化设置。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
Claims (2)
1.一种基于串口通信协议的机顶盒自动设置方法,其特征在于:所述方法使用基于RS232的串口通信协议,所述串口通信协议的数据结构依次包括如下字段:发起端标识Tag,用于标识发送的实体;会话类型Opt,用于标识要实现的操作;分段号N,用于标识分段传输的数据的顺序,方便接收端组合还原数据;数据类型Flg,用于对连接的计数;字节长度Len,用于标识该字段之后所有字节的长度;传输的数据Data,用于存储要传输的数据;校验码CRC,用于对接收的数据进行检查;
所述方法包括如下步骤:
步骤1、上位机通过串口向机顶盒发送请求握手命令,机顶盒接收到请求握手命令后,就通过串口向上位机发送应答握手命令,实现上位机与机顶盒之间连接的创建;
步骤2、上位机通过串口向机顶盒发送初始化命令,机顶盒接收到初始化命令后就进行初始化,并通过串口向上位机发送初始化应答命令,告知上位机初始化情况;
步骤3、上位机通过串口向机顶盒发送序列编号写入命令,机顶盒接收到写入命令后就将序列编号写入存储位置,并通过串口向上位机发送序列编号写入应答命令,返回写入的序列编号与本地序列编号对比,若对比结果一致,则说明写入正确,若不一致,则重新写入;
步骤4、上位机通过串口向机顶盒发送固件信息获取命令,机顶盒接收到获取命令后,就通过串口向上位机发送固件信息应答命令,向上位机返回固件信息;
步骤5、上位机通过串口向机顶盒发送CA加密数据命令,机顶盒接收到命令后就将CA加密数据写入指定的位置,并通过串口向上位机发送CA加密数据应答命令,告知上位机CA加密数据的写入情况;
步骤6、上位机通过串口向机顶盒发送出厂设置命令,机顶盒接收到出厂设置命令后,就进行出厂设置,并通过串口向上位机发送出厂设置应答命令,告知上位机的出厂设置情况;
步骤7、上位机通过串口向机顶盒发送重启命令,机顶盒接收到命令后,就进行重启;
其中,所述请求握手命令、应答握手命令、初始化命令、初始化应答命令、序列编号写入命令、序列编号写入应答命令、固件信息获取命令、固件信息应答命令、CA加密数据命令、CA加密数据应答命令、出厂设置命令、出厂设置应答命令以及重启命令的数据结构与所述串口通信协议一致,均依次包括所述发起端标识Tag、会话类型Opt、分段号N、数据类型Flg、字节长度Len、传输的数据Data以及校验码CRC。
2.根据权利要求1所述的一种基于串口通信协议的机顶盒自动设置方法,其特征在于:所述固件信息包括:芯片号、软件版本号、硬件版本号、校验码、设备ID号、Mac地址、设备厂商号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410584495.7A CN104469501B (zh) | 2014-10-27 | 2014-10-27 | 一种基于串口通信协议的机顶盒自动设置方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410584495.7A CN104469501B (zh) | 2014-10-27 | 2014-10-27 | 一种基于串口通信协议的机顶盒自动设置方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104469501A true CN104469501A (zh) | 2015-03-25 |
CN104469501B CN104469501B (zh) | 2018-11-20 |
Family
ID=52914750
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410584495.7A Expired - Fee Related CN104469501B (zh) | 2014-10-27 | 2014-10-27 | 一种基于串口通信协议的机顶盒自动设置方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104469501B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106775778A (zh) * | 2017-02-06 | 2017-05-31 | 山东鲁能智能技术有限公司 | 嵌入式程序开发中程序更新识别方法及系统 |
CN107465951A (zh) * | 2017-08-15 | 2017-12-12 | 深圳市芯智科技有限公司 | 一种用于机顶盒的otp加密方法 |
CN112235245A (zh) * | 2020-09-11 | 2021-01-15 | 福建新大陆通信科技股份有限公司 | 一种电子设备数据写入方法及系统 |
CN112948194A (zh) * | 2021-03-15 | 2021-06-11 | 中国联合网络通信集团有限公司 | 一种通信协议的测试方法和装置 |
CN108574862B (zh) * | 2017-03-13 | 2021-06-15 | 国家新闻出版广电总局广播电视卫星直播管理中心 | 机顶盒的控制系统及控制方法 |
CN113672547A (zh) * | 2021-08-26 | 2021-11-19 | 中国核动力研究设计院 | 一种仪控设备数据交互握手方法 |
CN115794691A (zh) * | 2023-01-06 | 2023-03-14 | 极限人工智能有限公司 | 一种串口通信方法、下位机及串口通信系统 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060098955A1 (en) * | 2004-11-05 | 2006-05-11 | Funai Electric Co., Ltd. | Controller to be connected to a disc type video recorder via IEEE 1394 serial bus |
CN101252640A (zh) * | 2008-03-11 | 2008-08-27 | 四川长虹电器股份有限公司 | 向机顶盒写入序列号的方法 |
CN101448073A (zh) * | 2008-12-26 | 2009-06-03 | 青岛海信宽带多媒体技术股份有限公司 | 一种数字一体机及其实现方法 |
CN101499892A (zh) * | 2008-02-01 | 2009-08-05 | 青岛海信电器股份有限公司 | 通信接口检测方法和电子设备 |
US20090271504A1 (en) * | 2003-06-09 | 2009-10-29 | Andrew Francis Ginter | Techniques for agent configuration |
CN201548957U (zh) * | 2009-10-22 | 2010-08-11 | 福建新大陆通信科技有限公司 | 数字电视机顶盒序列号自动输入系统 |
CN102231852A (zh) * | 2011-05-06 | 2011-11-02 | 深圳市九洲电器有限公司 | 一种机顶盒序列号烧写方法及装置 |
CN102291613A (zh) * | 2011-08-31 | 2011-12-21 | 广州杰赛科技股份有限公司 | 一种机顶盒授权方法及装置 |
CN102857817A (zh) * | 2012-09-26 | 2013-01-02 | 深圳市九洲电器有限公司 | 一种可动态加载的机顶盒生产系统及方法 |
CN103929670A (zh) * | 2014-04-30 | 2014-07-16 | 深圳市九洲电器有限公司 | 一种机顶盒的烧写方法和系统 |
-
2014
- 2014-10-27 CN CN201410584495.7A patent/CN104469501B/zh not_active Expired - Fee Related
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090271504A1 (en) * | 2003-06-09 | 2009-10-29 | Andrew Francis Ginter | Techniques for agent configuration |
US20060098955A1 (en) * | 2004-11-05 | 2006-05-11 | Funai Electric Co., Ltd. | Controller to be connected to a disc type video recorder via IEEE 1394 serial bus |
CN101499892A (zh) * | 2008-02-01 | 2009-08-05 | 青岛海信电器股份有限公司 | 通信接口检测方法和电子设备 |
CN101252640A (zh) * | 2008-03-11 | 2008-08-27 | 四川长虹电器股份有限公司 | 向机顶盒写入序列号的方法 |
CN101448073A (zh) * | 2008-12-26 | 2009-06-03 | 青岛海信宽带多媒体技术股份有限公司 | 一种数字一体机及其实现方法 |
CN201548957U (zh) * | 2009-10-22 | 2010-08-11 | 福建新大陆通信科技有限公司 | 数字电视机顶盒序列号自动输入系统 |
CN102231852A (zh) * | 2011-05-06 | 2011-11-02 | 深圳市九洲电器有限公司 | 一种机顶盒序列号烧写方法及装置 |
CN102291613A (zh) * | 2011-08-31 | 2011-12-21 | 广州杰赛科技股份有限公司 | 一种机顶盒授权方法及装置 |
CN102857817A (zh) * | 2012-09-26 | 2013-01-02 | 深圳市九洲电器有限公司 | 一种可动态加载的机顶盒生产系统及方法 |
CN103929670A (zh) * | 2014-04-30 | 2014-07-16 | 深圳市九洲电器有限公司 | 一种机顶盒的烧写方法和系统 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106775778A (zh) * | 2017-02-06 | 2017-05-31 | 山东鲁能智能技术有限公司 | 嵌入式程序开发中程序更新识别方法及系统 |
CN108574862B (zh) * | 2017-03-13 | 2021-06-15 | 国家新闻出版广电总局广播电视卫星直播管理中心 | 机顶盒的控制系统及控制方法 |
CN107465951A (zh) * | 2017-08-15 | 2017-12-12 | 深圳市芯智科技有限公司 | 一种用于机顶盒的otp加密方法 |
CN112235245A (zh) * | 2020-09-11 | 2021-01-15 | 福建新大陆通信科技股份有限公司 | 一种电子设备数据写入方法及系统 |
CN112948194A (zh) * | 2021-03-15 | 2021-06-11 | 中国联合网络通信集团有限公司 | 一种通信协议的测试方法和装置 |
CN112948194B (zh) * | 2021-03-15 | 2023-08-15 | 中国联合网络通信集团有限公司 | 一种通信协议的测试方法和装置 |
CN113672547A (zh) * | 2021-08-26 | 2021-11-19 | 中国核动力研究设计院 | 一种仪控设备数据交互握手方法 |
CN115794691A (zh) * | 2023-01-06 | 2023-03-14 | 极限人工智能有限公司 | 一种串口通信方法、下位机及串口通信系统 |
CN115794691B (zh) * | 2023-01-06 | 2023-06-20 | 极限人工智能有限公司 | 一种串口通信方法、下位机及串口通信系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104469501B (zh) | 2018-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104469501A (zh) | 一种基于串口通信协议的机顶盒自动设置方法 | |
CN105573810A (zh) | 一种无线传感器网络节点远程升级方法及装置 | |
CN103000008B (zh) | 遥控接收设备响应遥控信号的方法和装置 | |
CN104620564A (zh) | 经由利用数据隧道的接口的多协议数据元素的传输 | |
KR20080012846A (ko) | 리더 콘트롤 시스템 | |
CN105335155B (zh) | 一种仅需配置云端脚本即可实现不同IoT应用的方法 | |
EP3542276A1 (en) | Flow control in remote direct memory access data communications with mirroring of ring buffers | |
WO2015000439A1 (zh) | 一种跨平台网络交互的实现方法及其识读器和网络服务器 | |
CN103106095A (zh) | 一种工业照相机远程升级的方法及照相机 | |
WO2019179093A1 (zh) | 一种nb-iot网络中获取设备标识的方法和设备 | |
WO2016146008A1 (zh) | 数据解析方法、装置及系统 | |
CN107301067B (zh) | 基于iap技术的北斗用户机远程升级系统及其升级方法 | |
CN102711095A (zh) | 一种对无线传感器网络中的节点进行无线升级的方法 | |
CN108958781B (zh) | 一种远程嵌入式固件在线升级方法 | |
CN109688208B (zh) | 一种基于fc-ae-asm消息的数据加载方法 | |
CN102541639B (zh) | 一种cpu卡数据处理方法、系统及cpu卡 | |
US20160380890A1 (en) | Intermediate Unicast Network and Method for Multicast Data Networks | |
CN106102101A (zh) | 一种无线接入点与无线接入控制器连接的处理方法及系统 | |
CN105407133A (zh) | 一种移动应用自动化发布方法和系统 | |
CN101620662B (zh) | 一种基于闪速存储器的智能卡下载数据的方法 | |
CN106331051A (zh) | 文件传输方法和系统以及接收文件装置、发送文件装置 | |
CN110704080A (zh) | 一种通过Wi-Fi模块给蓝牙模块升级的方法 | |
CN113852610B (zh) | 报文处理方法、装置、计算机设备和存储介质 | |
CN102196411A (zh) | 一种移动通信终端及升级通信软件的方法 | |
CN105553744A (zh) | 一种基于单片机的网络设备的生产方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20181120 |