欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種通訊設(shè)備軟件更新的方法及裝置的制作方法

文檔序號(hào):6356996閱讀:215來源:國(guó)知局
專利名稱:一種通訊設(shè)備軟件更新的方法及裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明屬于通信領(lǐng)域,尤其涉及一種通訊設(shè)備軟件更新的方法及裝置。
背景技術(shù)
在通信領(lǐng)域中,普遍使用存儲(chǔ)在可編程控制器內(nèi)的協(xié)議軟件來實(shí)現(xiàn)各種設(shè)備的控制和各種設(shè)備之間的互聯(lián)通訊。在實(shí)際的使用過程中,可能會(huì)不時(shí)地對(duì)可編程控制器內(nèi)的軟件進(jìn)行修改和更新。在現(xiàn)有技術(shù)中,普遍使用燒寫器來對(duì)設(shè)備中的可編程控制器直接進(jìn)行程序的重新燒寫。這時(shí),就經(jīng)常需要將設(shè)備打開或是額外增加燒寫接口來對(duì)設(shè)備中的可編程控制器進(jìn)行程序的燒寫。如果設(shè)備位于一些比較特殊的位置(如塔頂?shù)?,更新程序 時(shí),更是要將設(shè)備從塔頂拆卸下來,十分不便。

發(fā)明內(nèi)容
本發(fā)明實(shí)施例的目的在于提供一種通訊設(shè)備軟件更新的方法及裝置,旨在解決現(xiàn)有設(shè)備在更新軟件時(shí),不便于燒寫新程序的問題。本發(fā)明實(shí)施例是這樣實(shí)現(xiàn)的,一種通訊設(shè)備軟件更新的方法,所述方法包括以下步驟以串口中斷的方式接收代碼更新命令;將通過串口接收到的新程序存儲(chǔ)至待更新設(shè)備可編程控制器的存儲(chǔ)區(qū);重啟待更新設(shè)備,運(yùn)行新程序。本發(fā)明實(shí)施例的另一目的在于提供一種通訊設(shè)備軟件更新的裝置,所述裝置包括更新命令接收單元,用于以串口中斷的方式接收代碼更新命令;新程序存儲(chǔ)單元,用于將通過串口接收到的新程序存儲(chǔ)至待更新設(shè)備可編程控制器的存儲(chǔ)區(qū);新程序運(yùn)行單元,用于重啟待更新設(shè)備,運(yùn)行新程序。在本發(fā)明實(shí)施例中,通過串口將需要更新的程序代碼發(fā)送給待更新設(shè)備的方式,使得待更新設(shè)備的軟件更新不在需要將設(shè)備打開,對(duì)可編程控制器進(jìn)行程序的燒寫,極大的方便了設(shè)備的軟件更新。


圖I是本發(fā)明第一實(shí)施例提供的通訊設(shè)備軟件更新的方法流程圖;圖2是本發(fā)明第二實(shí)施例提供的通訊設(shè)備軟件更新的方法流程圖;圖3是本發(fā)明實(shí)施例提供的通訊設(shè)備軟件更新的裝置示意圖;圖4是本發(fā)明實(shí)施例提供的新程序存儲(chǔ)單元的示意圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。本發(fā)明實(shí)施例提供 一種通訊設(shè)備軟件更新的方法,通過串口將需要更新的程序發(fā)送給待更新設(shè)備,該待更新設(shè)備對(duì)接收到的程序進(jìn)行校驗(yàn),校驗(yàn)成功后,將所接收到的需要更新的程序覆蓋原來的程序,并運(yùn)行接收到的需要更新的程序。本發(fā)明提供了一種通訊設(shè)備軟件更新的方法及裝置所述方法包括以串口中斷的方式接收代碼更新命令;將通過串口接收到的新程序存儲(chǔ)至待更新設(shè)備可編程控制器的存儲(chǔ)區(qū);重啟待更新設(shè)備,運(yùn)行新程序。所述裝置包括更新命令接收單元,用于以串口中斷的方式接收代碼更新命令;新程序存儲(chǔ)單元,用于將通過串口接收到的新程序存儲(chǔ)至待更新設(shè)備可編程控制器的存儲(chǔ)區(qū);新程序運(yùn)行單元,用于重啟待更新設(shè)備,運(yùn)行新程序。為了說明本發(fā)明所述的技術(shù)方案,下面通過具體實(shí)施例來進(jìn)行說明。實(shí)施例一對(duì)于待更新設(shè)備而言,更新該設(shè)備的軟件即是將新的程序代碼通過通信接口發(fā)送并存儲(chǔ)至該設(shè)備的可編程控制器中,并運(yùn)行。如圖I所示為本發(fā)明第一實(shí)施例提供的通訊設(shè)備軟件更新方法的流程圖,為了便于說明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。在步驟SlOl中,接收到串口命令,串口中斷被觸發(fā),判斷該接收到的串口命令是否是代碼更新命令,若是則執(zhí)行步驟S103,否則執(zhí)行步驟S102。在本發(fā)明實(shí)施例中,終端通過串口發(fā)送命令至待更新設(shè)備的可編程控制器,所述終端包括但不限于電腦等,所述待更新設(shè)備包括但不限于通訊設(shè)備(如塔放等),所述可編程控制器包括但不限于單片機(jī)??删幊炭刂破鹘邮盏酱诎l(fā)送來的命令后,引起串口中斷,然后,可編程控制器會(huì)停下原有的工作來檢查該接收到的串口命令是什么命令,在本發(fā)明實(shí)施例中,由于是對(duì)軟件進(jìn)行更新,因此需判斷該串口命令是否是代碼更新命令。在步驟S102中,處理其他命令。在本發(fā)明實(shí)施例中,若接收到的串口命令不是代碼更新命令,則在確認(rèn)該命令的類型后,處理相應(yīng)的命令。在步驟S103中,將通過串口接收到的新程序存儲(chǔ)至待更新設(shè)備可編程控制器的存儲(chǔ)區(qū)中。在本發(fā)明實(shí)施例中,若接收到的串口命令是代碼更新命令,則開始接收通過串口傳輸過來的新程序,并將該新程序存儲(chǔ)至待更新設(shè)備可編程控制器的存儲(chǔ)區(qū)中。在步驟S104中,重啟待更新設(shè)備,運(yùn)行新程序。在本發(fā)明實(shí)施例中,引導(dǎo)程序在重啟待更新設(shè)備后,運(yùn)行新程序,完成待更新設(shè)備的軟件更新。在本發(fā)明實(shí)施例中,通過串口將需要更新的程序代碼發(fā)送給待更新設(shè)備的方式,使得待更新設(shè)備的軟件更新不在需要將設(shè)備打開,對(duì)可編程控制器進(jìn)行程序的燒寫,極大的方便了設(shè)備的軟件更新。實(shí)施例二 由于在新程序傳輸?shù)倪^程中,可能會(huì)因?yàn)楦鞣N原因造成傳輸失敗,此時(shí),若將未能完全接收的新程序覆蓋原程序后啟動(dòng),可能造成系統(tǒng)癱瘓,因此,本發(fā)明第二實(shí)施例提出了一種用于解決此問題的軟件更新方法。如圖2所示為本發(fā)明第二實(shí)施例提供的通訊設(shè)備軟件更新方法的流程圖,為了便于說明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。
在步驟S201中,將待更新設(shè)備中的可編程控制器內(nèi)部存儲(chǔ)區(qū)分為多個(gè)存儲(chǔ)區(qū)域。在本發(fā)明實(shí)施例中,首先,預(yù)先將可編程控制器中存儲(chǔ)的程序按功能分為兩部分,分別為引導(dǎo)程序和應(yīng)用程序。其中,引導(dǎo)程序用于判斷軟件更新是否成功,決定是否啟用接收到的新應(yīng)用程序等,能夠?qū)崿F(xiàn)諸如中斷向量在更新程序后重新定位、指針跳轉(zhuǎn)等功能。應(yīng)用程序即是實(shí)際執(zhí)行的程序主體。由于可編程控制器中的程序根據(jù)功能進(jìn)行了劃分,相應(yīng)的需要對(duì)可編程控制器的內(nèi)部存儲(chǔ)區(qū)預(yù)先進(jìn)行分區(qū),分別用于存儲(chǔ)不同的程序。其中,將可編程控制器內(nèi)部存儲(chǔ)區(qū)劃分為多個(gè)存儲(chǔ)區(qū)域,所述存儲(chǔ)區(qū)域包括一個(gè)新程序暫存區(qū),用于暫存新程序,一個(gè)主程序區(qū),用于存儲(chǔ)主程序,以及用于存儲(chǔ)各中斷向量地址、引導(dǎo)程序、及用戶數(shù)據(jù)的一種或多種組合的一個(gè)或多個(gè)存儲(chǔ)區(qū)域。作為本發(fā)明的一個(gè)優(yōu)選實(shí)施例,可將可編程控制器的內(nèi)部存儲(chǔ)區(qū)預(yù)先分為4個(gè)存儲(chǔ)區(qū)域,第一個(gè)區(qū)域用于存儲(chǔ)各中斷向量地址及引導(dǎo)程序;第二個(gè)區(qū)域?yàn)橹鞒绦騾^(qū),用于存儲(chǔ)主程序;第三個(gè)區(qū)域用于暫存接收到的新程序,即新程序暫存區(qū);第四個(gè)區(qū)域用于存儲(chǔ)一些需要保存的用戶數(shù)據(jù)。作為本發(fā)明另一優(yōu)選實(shí)施例,可將可將可編程控制器的內(nèi)部存儲(chǔ)區(qū)從地址地位到高位依次分為用于存儲(chǔ)各中斷向量地址及引導(dǎo)程序的存儲(chǔ)區(qū)域、主程序區(qū)、新程序暫存區(qū)及用于存儲(chǔ)一些需要保存的用戶數(shù)據(jù)的存儲(chǔ)區(qū)。下面以C8051F系列的存儲(chǔ)空間為64K的單片機(jī)為例來說明。例如由于可編程控制器內(nèi)部存儲(chǔ)空間為64K,因此,地址為0x0000到Oxffff。第一個(gè)區(qū)域從0x0000到0x1000,為各中斷向量地址區(qū)域和引導(dǎo)程序存儲(chǔ)區(qū);第二個(gè)區(qū)域從0x1000至IJ 0x7fff,為程序運(yùn)行區(qū),用于存儲(chǔ)實(shí)際運(yùn)行的主程序;第三個(gè)區(qū)域從0x8000到Oxefff,為新程序暫存區(qū),用于暫存接收到的新程序;第四個(gè)區(qū)域從OxfOOO到OxfTfT,用于存儲(chǔ)一些需要保存的用戶數(shù)據(jù)。在步驟S202中,觸發(fā)串口中斷,判斷接收到串口命令的是否是代碼更新命令,若是則執(zhí)行步驟S204,否則執(zhí)行步驟S203。在步驟S203中,處理其他命令。在步驟S204中,擦除預(yù)設(shè)的新程序暫存區(qū),將接收到的新程序存儲(chǔ)至該新程序暫存區(qū)。在本發(fā)明實(shí)施例中,若接收到的命令是代碼更新命令,則擦除新程序暫存區(qū)。以便于接收到發(fā)送過來的需要更新的新程序后,可直接存儲(chǔ)至新程序暫存區(qū)。所述接收到的新程序包括但不限于電腦等終端通過串口等通信接口發(fā)送過來的新程序。在步驟S205中,校驗(yàn)新程序是否正確,若是則執(zhí)行步驟S206,否則執(zhí)行步驟S207。
在本發(fā)明實(shí)施例中,為了預(yù)防傳輸過程中由于網(wǎng)絡(luò)、線路等各種問題可能導(dǎo)致的新程序傳輸失敗、傳輸不完全等問題,因此,需要對(duì)新程序進(jìn)行校驗(yàn),校驗(yàn)新程序是否正確。所述校驗(yàn)方法可為現(xiàn)有的校驗(yàn)程序的任何一種方法,在此不做限制。在步驟S206中,置位標(biāo)志位。在本發(fā)明實(shí)施例中,若校驗(yàn)后,新程序完整正確,則置位標(biāo)志位。在步驟S207中,判斷標(biāo)志位是否置位,是則執(zhí)行步驟S209,否則執(zhí)行步驟S208。在本發(fā)明實(shí)施例中,通過判斷標(biāo)志位是否置位,來確定是否有新程序需要更新,標(biāo)志位被置位,則說明有新程序需要更新;標(biāo)志位未被置位,則說明沒有新程序需要更新。由弓I導(dǎo)程序來判斷是否置位標(biāo)志位。 在步驟S208中,繼續(xù)執(zhí)行原程序。在本發(fā)明實(shí)施例中,標(biāo)志位未置位,說明沒有新程序需要更新,則繼續(xù)執(zhí)行原程序。在步驟S209中,將新程序暫存區(qū)的新程序復(fù)制到主程序區(qū),覆蓋主程序區(qū)中原有的程序;在本發(fā)明實(shí)施例中,由引導(dǎo)程序啟動(dòng)更新過程,將新程序暫存區(qū)的程序復(fù)制到主程序區(qū),覆蓋主程序區(qū)中原有的程序。在步驟S210中,清除標(biāo)志位。在本發(fā)明實(shí)施例中,將新程序暫存區(qū)的程序覆蓋原有的程序后,需清除標(biāo)志位,以便于下一次需要更新程序時(shí),重新置位標(biāo)志位。否則,若不清除標(biāo)志位,下一次接收的新程序出錯(cuò)了,不需要更新,但由于未清除標(biāo)志位,更新了錯(cuò)誤的新程序,因而造成系統(tǒng)癱瘓。在步驟S211中,運(yùn)行新程序。在本發(fā)明實(shí)施例中,新程序覆蓋原有的程序后,由引導(dǎo)程序重啟系統(tǒng),然后運(yùn)行新程序。在本發(fā)明實(shí)施例中,由于在將新程序覆蓋原有程序之前,會(huì)先校驗(yàn)新程序,并只有在校驗(yàn)正確后,才會(huì)置位標(biāo)志位。使得新程序的正確性得以保證,錯(cuò)誤的新程序不會(huì)得到更新,有效防止了由于更新失敗而導(dǎo)致的程序失效、系統(tǒng)癱瘓。且采用可編程控制器片內(nèi)分區(qū)而不使用外部存儲(chǔ)器芯片,既可以節(jié)省成本,也可以防止主芯片和外部芯片在讀寫時(shí)由于受到外部干擾而產(chǎn)生錯(cuò)誤的情況。實(shí)施例三圖3為本發(fā)明實(shí)施例提供的通訊設(shè)備軟件更新裝置的結(jié)構(gòu)示意,為了便于說明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部份。該裝置可以是內(nèi)置于通信設(shè)備可編程控制器中的軟件單元、硬件單元或者軟硬件相結(jié)合的單元,或者作為獨(dú)立的掛件集成到這些設(shè)備或這些通信設(shè)備可編程控制器的應(yīng)用系統(tǒng)中。其中更新命令接收單元31,用于以串口中斷的方式接收代碼更新命令。在本發(fā)明實(shí)施例中,終端發(fā)送命令至待更新設(shè)備的可編程控制器,所述終端包括但不限于電腦等,所述待更新設(shè)備包括但不限于通訊設(shè)備(如塔放等),所述可編程控制器包括但不限于單片機(jī)。新程序存儲(chǔ)單元32,用于將通過串口接收到的新程序存儲(chǔ)至待更新設(shè)備可編程控制器的存儲(chǔ)區(qū)中。
新程序運(yùn)行單元33,用于重啟待更新設(shè)備,運(yùn)行新程序。在本發(fā)明另一實(shí)施例中,所述新程序存儲(chǔ)單元32還包括以下模塊,如圖4所示存儲(chǔ)區(qū)分區(qū)模塊321,用于將待更新設(shè)備中的可編程控制器內(nèi)部存儲(chǔ)區(qū)分為多個(gè)存儲(chǔ)區(qū)域,所述存儲(chǔ)區(qū)域包括一個(gè)新程序暫存區(qū),用于暫存新程序,一個(gè)主程序區(qū),用于存儲(chǔ)主程序,以及用于存儲(chǔ)各中斷向量地址、引導(dǎo)程序、及用戶數(shù)據(jù)的一種或多種組合的一個(gè)或多個(gè)存儲(chǔ)區(qū)域。新程序暫存模塊322,用于擦除預(yù)設(shè)的新程序暫存區(qū),將接收到的程序存儲(chǔ)至該新程序暫存區(qū)。在本發(fā)明實(shí)施例中,若接收到的命令是代碼更新命令,則擦除新程序暫存區(qū)。以便
于接收到發(fā)送過來的需要更新的新程序后,可直接存儲(chǔ)至新程序暫存區(qū)。所述接收到的新程序包括但不限于電腦等終端通過串口等通信接口發(fā)送過來的新程序。新程序校驗(yàn)?zāi)K323,用于校驗(yàn)新程序。標(biāo)志位置位/清除模塊324,用于置位/清除標(biāo)志位。標(biāo)志位判斷模塊325,用于判斷標(biāo)志位是否置位,若標(biāo)志位置位,則程序覆蓋模塊327將新程序暫存區(qū)的程序復(fù)制到主程序區(qū),覆蓋主程序區(qū)中原有的程序;若標(biāo)志位未置位,則繼續(xù)執(zhí)行原程序。原程序執(zhí)行模塊326,用于執(zhí)行原程序。程序覆蓋模塊327,用于將新程序暫存區(qū)的程序復(fù)制到主程序區(qū),覆蓋主程序區(qū)中原有的程序。在本發(fā)明實(shí)施例中,通過串口將需要更新的程序代碼發(fā)送給待更新設(shè)備的方式,使得待更新設(shè)備的軟件更新不在需要將設(shè)備打開,對(duì)可編程控制器進(jìn)行程序的燒寫,極大的方便了設(shè)備的軟件更新。采用可編程控制器片內(nèi)分區(qū)而不使用外部存儲(chǔ)器芯片,既可以節(jié)省成本,也可以防止主芯片和外部芯片在讀寫時(shí)由于受到外部干擾而產(chǎn)生錯(cuò)誤的情況。且由于在將新程序覆蓋原有程序之前,會(huì)先校驗(yàn)新程序,并只有在校驗(yàn)正確后,才會(huì)置位標(biāo)志位。使得新程序的正確性得以保證,錯(cuò)誤的新程序不會(huì)得到更新,有效防止了由于更新失敗而導(dǎo)致的程序失效、系統(tǒng)癱瘓。以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種通訊設(shè)備軟件更新的方法,其特征在于,所述方法包括下述步驟 以串口中斷的方式接收代碼更新命令; 將通過串口接收到的新程序存儲(chǔ)至待更新設(shè)備可編程控制器的存儲(chǔ)區(qū); 重啟待更新設(shè)備,運(yùn)行新程序。
2.如權(quán)利要求I所述的方法,其特征在于,在所述以串口中斷的方式接收代碼更新命令的步驟之前,還包括 將待更新設(shè)備中的可編程控制器內(nèi)部存儲(chǔ)區(qū)分為多個(gè)存儲(chǔ)區(qū)域,所述存儲(chǔ)區(qū)域包括新程序暫存區(qū)、主程序區(qū)。
3.如權(quán)利要求2所述的方法,其特征在于,所述將通過串口接收到的新程序存儲(chǔ)至待更新設(shè)備可編程控制器的存儲(chǔ)區(qū)中的步驟具體為 擦除所述新程序暫存區(qū),將接收到的新程序存儲(chǔ)至所述新程序暫存區(qū); 校驗(yàn)所述新程序; 當(dāng)校驗(yàn)所述新程序正確后,置位標(biāo)志位; 判斷所述標(biāo)志位是否置位; 若是,則將所述新程序復(fù)制到所述主程序區(qū),覆蓋所述主程序區(qū)的原有的程序; 否則繼續(xù)執(zhí)行原程序。
4.如權(quán)利要求3所述的方法,其特征在于,在所述將所述新程序復(fù)制到所述主程序區(qū),覆蓋所述主程序區(qū)的原有的程序的步驟之后還包括 清除所述標(biāo)志位。
5.如權(quán)利要求I至4所述的方法,其特征在于,所述可編程控制器內(nèi)部存儲(chǔ)區(qū)所劃分的存儲(chǔ)區(qū)域還包括用于存儲(chǔ)各中斷向量地址、引導(dǎo)程序、及用戶數(shù)據(jù)的一種或多種組合的一個(gè)或多個(gè)存儲(chǔ)區(qū)域。
6.一種通訊設(shè)備軟件更新的裝置,其特征在于,所述裝置包括 更新命令接收單元,用于以串口中斷的方式接收代碼更新命令; 新程序存儲(chǔ)單元,用于將通過串口接收到的新程序存儲(chǔ)至待更新設(shè)備可編程控制器的存儲(chǔ)區(qū); 新程序運(yùn)行單元,用于重啟待更新設(shè)備,運(yùn)行新程序。
7.如權(quán)利要求6所述的裝置,其特征在于,所述新程序存儲(chǔ)單元包括 存儲(chǔ)區(qū)分區(qū)模塊,用于將待更新設(shè)備中的可編程控制器內(nèi)部存儲(chǔ)區(qū)分為多個(gè)存儲(chǔ)區(qū)域,所述存儲(chǔ)區(qū)域包括新程序暫存區(qū)、主程序區(qū); 新程序暫存模塊,用于將接收到的新程序存儲(chǔ)至所述新程序暫存區(qū); 新程序校驗(yàn)?zāi)K,用于校驗(yàn)所述新程序; 標(biāo)志位置位/清除模塊,用于置位/清除標(biāo)志位; 標(biāo)志位判斷模塊,用于判斷所述標(biāo)志位是否置位; 原程序執(zhí)行模塊,用于執(zhí)行原程序; 程序覆蓋模塊,用于將所述新程序復(fù)制到所述主程序區(qū),覆蓋所述主程序區(qū)的原有的程序。
8.如權(quán)利要求7所述的裝置,其特征在于,所述可編程控制器內(nèi)部存儲(chǔ)區(qū)所劃分的存儲(chǔ)區(qū)域還包括用于存儲(chǔ)各中斷向量地址、引導(dǎo)程序、及用戶數(shù)據(jù)的一種或多種組合的一個(gè)或多個(gè)存儲(chǔ)區(qū)域。全文摘要
本發(fā)明適用于通信領(lǐng)域,提供了一種通訊設(shè)備軟件更新的方法及裝置,所述方法包括以串口中斷的方式接收代碼更新命令;將通過串口接收到的新程序存儲(chǔ)至待更新設(shè)備可編程控制器的存儲(chǔ)區(qū);重啟待更新設(shè)備,運(yùn)行新程序。本發(fā)明通過串口將需要更新的程序代碼發(fā)送給待更新設(shè)備的方式,使得待更新設(shè)備的軟件更新不在需要將設(shè)備打開,對(duì)可編程控制器進(jìn)行程序的燒寫,極大的方便了設(shè)備的軟件更新。
文檔編號(hào)G06F9/48GK102722408SQ20111007646
公開日2012年10月10日 申請(qǐng)日期2011年3月29日 優(yōu)先權(quán)日2011年3月29日
發(fā)明者延濤, 朱曉宇 申請(qǐng)人:摩比天線技術(shù)(深圳)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
玉山县| 台中市| 兴海县| 墨竹工卡县| 双江| 柘荣县| 法库县| 乐业县| 长子县| 遂昌县| 林周县| 石楼县| 襄城县| 睢宁县| 兴隆县| 察雅县| 九台市| 永春县| 海晏县| 开封市| 涞水县| 恩施市| 资中县| 葫芦岛市| 绍兴市| 湘潭县| 湖州市| 龙海市| 石首市| 宜阳县| 石楼县| 谷城县| 和平区| 长宁县| 神池县| 长顺县| 汉沽区| 大足县| 宁陵县| 集贤县| 五台县|