CN104469501B - 一种基于串口通信协议的机顶盒自动设置方法 - Google Patents
一种基于串口通信协议的机顶盒自动设置方法 Download PDFInfo
- Publication number
- CN104469501B CN104469501B CN201410584495.7A CN201410584495A CN104469501B CN 104469501 B CN104469501 B CN 104469501B CN 201410584495 A CN201410584495 A CN 201410584495A CN 104469501 B CN104469501 B CN 104469501B
- Authority
- CN
- China
- Prior art keywords
- top box
- host computer
- data
- order
- command
- 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.)
- Active
Links
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 CN104469501A (zh) | 2015-03-25 |
CN104469501B true CN104469501B (zh) | 2018-11-20 |
Family
ID=52914750
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410584495.7A Active CN104469501B (zh) | 2014-10-27 | 2014-10-27 | 一种基于串口通信协议的机顶盒自动设置方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104469501B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106775778B (zh) * | 2017-02-06 | 2021-03-16 | 山东鲁能软件技术有限公司智能电气分公司 | 嵌入式程序开发中程序更新识别方法及系统 |
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 | 福建新大陆通信科技股份有限公司 | 一种电子设备数据写入方法及系统 |
CN112948194B (zh) * | 2021-03-15 | 2023-08-15 | 中国联合网络通信集团有限公司 | 一种通信协议的测试方法和装置 |
CN113672547B (zh) * | 2021-08-26 | 2023-07-25 | 中国核动力研究设计院 | 一种仪控设备数据交互握手方法 |
CN115794691B (zh) * | 2023-01-06 | 2023-06-20 | 极限人工智能有限公司 | 一种串口通信方法、下位机及串口通信系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101252640A (zh) * | 2008-03-11 | 2008-08-27 | 四川长虹电器股份有限公司 | 向机顶盒写入序列号的方法 |
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 | 深圳市九洲电器有限公司 | 一种机顶盒的烧写方法和系统 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090271504A1 (en) * | 2003-06-09 | 2009-10-29 | Andrew Francis Ginter | Techniques for agent configuration |
JP4192884B2 (ja) * | 2004-11-05 | 2008-12-10 | 船井電機株式会社 | Ieee1394シリアルバスに接続されるセットトップボックス、及びieee1394シリアルバスに接続されるコントローラ機器 |
CN101499892A (zh) * | 2008-02-01 | 2009-08-05 | 青岛海信电器股份有限公司 | 通信接口检测方法和电子设备 |
CN101448073A (zh) * | 2008-12-26 | 2009-06-03 | 青岛海信宽带多媒体技术股份有限公司 | 一种数字一体机及其实现方法 |
-
2014
- 2014-10-27 CN CN201410584495.7A patent/CN104469501B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101252640A (zh) * | 2008-03-11 | 2008-08-27 | 四川长虹电器股份有限公司 | 向机顶盒写入序列号的方法 |
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 | 深圳市九洲电器有限公司 | 一种机顶盒的烧写方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104469501A (zh) | 2015-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104469501B (zh) | 一种基于串口通信协议的机顶盒自动设置方法 | |
US8806069B2 (en) | Providing indirect data addressing for a control block at a channel subsystem of an I/O processing system | |
US20190079894A1 (en) | Method, client device and data forwarding device for transmitting data through serial port | |
US9384106B2 (en) | Real time terminal for debugging embedded computing systems | |
CN104348902B (zh) | 一种用于网络输入/输出设备的装置以及方法 | |
CN107302531A (zh) | 一种基于状态机和环形队列的串口命令解析方法 | |
US9195394B2 (en) | Transport mode data transfer between a channel subsystem and input/output devices | |
CN110086571A (zh) | 一种数据发送及接收的方法、装置及数据处理系统 | |
KR20170034424A (ko) | 컴퓨터 시스템에서의 메모리 쓰기 관리 | |
CN109408447A (zh) | 一种基于spi的数据传输方法、装置及电子设备 | |
CN102129384A (zh) | 虚拟化主机usb适配器的方法和装置 | |
WO2017202338A1 (zh) | 机顶盒加载驱动的方法及系统 | |
CN103106095A (zh) | 一种工业照相机远程升级的方法及照相机 | |
US9063751B2 (en) | Single wire bootloader for target device with self-programming capability | |
CN106851625A (zh) | 一种蓝牙产品ota升级方法 | |
CN110134421A (zh) | 电能表管理芯片升级方法、系统及电子设备和存储介质 | |
CN103092648B (zh) | 一种镜像升级方法、系统及用户设备和个人计算机 | |
CN107168832A (zh) | 自动检测的方法、装置 | |
US20130007303A1 (en) | Facilitating transport mode input/output operations between a channel subsystem and input/output devices | |
CN106130771B (zh) | 一种基于带内以太网络在线升级flash的方法 | |
US20140281041A1 (en) | Facilitating transport mode data transfer between a channel subsystem and input/output devices | |
CN103562893A (zh) | 促进通道子系统与输入/输出设备之间的传输模式输入/输出操作 | |
CN114430366B (zh) | 信息采集应用下发方法、相关装置及计算机程序产品 | |
CN114880009A (zh) | 一种车辆仪表升级系统、方法、电子设备及存储介质 | |
CN101561760B (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 |