freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于tc35模塊的gsm遠(yuǎn)程控制系統(tǒng)的設(shè)計(jì)(編輯修改稿)

2024-09-02 08:33 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 ,該總線上可以掛接很多器件,所以總線上的每個(gè)器件都應(yīng)該有相應(yīng)的地址,這樣才能實(shí)現(xiàn)尋址操作。,連接的方式是I2C總線方式。由于MSP430系列單片機(jī)里有的單片機(jī)沒(méi)有I2C接口,因此本系統(tǒng)在設(shè)計(jì)時(shí)采用MSP430單片機(jī)的一般I/,采用軟件來(lái)模擬I2C總線,從而實(shí)現(xiàn)與24LC02B進(jìn)行接口。在設(shè)計(jì)時(shí),需要將SCL和SDA分別通過(guò)一個(gè)10KΩ的電阻將其拉高,以滿足I2C工作條件。此外,為了減小電源的干擾,以減小輸入端受到的干擾。 采集系統(tǒng)模塊設(shè)計(jì)在該系統(tǒng)中主要考慮模擬前端為傳感器,從傳感器送來(lái)的是標(biāo)準(zhǔn)信號(hào),即4mA到20mA,這樣設(shè)計(jì)具有一定的通用性,只要前端接不同的傳感器就可以采集不同的信號(hào)源。由于A/D轉(zhuǎn)折基準(zhǔn)為電壓,也就是參考源為電壓,所以A/D轉(zhuǎn)換的是電壓,這樣需要將電流信號(hào)轉(zhuǎn)換成電壓信號(hào)。 采集電路設(shè)計(jì)由圖可以看出,采集電路通過(guò)一個(gè)電阻將電流信號(hào)轉(zhuǎn)換成電壓信號(hào),為了提高采集的進(jìn)度,需要采用高精度的電阻,這里采用的是精度為1%的電阻。電路中采用二極管作為ESD保護(hù)電路,考慮到干擾問(wèn)題,采用電容進(jìn)行濾波處理,增加采集電路的抗干擾問(wèn)題。 外部繼電器控制模塊設(shè)計(jì)在某些應(yīng)用場(chǎng)合,需要控制設(shè)備的狀態(tài),比如開(kāi)機(jī)或者關(guān)機(jī),因此本系統(tǒng)也設(shè)計(jì)了相應(yīng)的控制電路。該控制電路相對(duì)比較簡(jiǎn)單,主要利用繼電器來(lái)實(shí)現(xiàn)。,、。在一般狀態(tài)下,繼電器處于開(kāi)路狀態(tài),、繼電器吸合,則電路導(dǎo)通,這樣就可以控制設(shè)備的狀態(tài)了。 控制電路 單片機(jī)模塊的設(shè)計(jì)MSP430F149 結(jié)構(gòu)概述MSP430 系列單片機(jī)是一個(gè)特別強(qiáng)調(diào)超低功耗性能的單片機(jī)品種。它適合應(yīng)用在各種要求極低功耗的場(chǎng)合,具有一定的技術(shù)特點(diǎn)。在這個(gè)系列中有多個(gè)型號(hào),它們由一些基本功能模塊按不同的應(yīng)用目標(biāo)組合而成。其中 FLASH 型芯片又可分為幾個(gè)分支,如 11x、11x13x、14x 等。它們都具有開(kāi)發(fā)設(shè)備簡(jiǎn)便、可現(xiàn)場(chǎng)編程等特點(diǎn)。MSP430 系列采用存儲(chǔ)器存儲(chǔ)器結(jié)構(gòu),即用一個(gè)公共的空間對(duì)全部功能模塊尋址,同時(shí)用精簡(jiǎn)指令組對(duì)全部功能模塊進(jìn)行操作[34,35]。 是 MSP430F14x 系統(tǒng)結(jié)構(gòu)圖。首先來(lái)看一下 CPU(Central Processing Unit)。MSP430 的 CPU 運(yùn)行正交的精簡(jiǎn)指令集,由 16 位 ALU(Arithmetic and Logic Unit)、指令控制邏輯和 16 個(gè)寄存器組成。寄存器中有 4 個(gè)具有特殊用途,即程序計(jì)數(shù)器R0/PC(Register 0/Program counter)、堆棧指針 R1/SP(Stack pointer)、狀態(tài)寄存器和常數(shù)發(fā)生器 R2/SR/CG1(Special Register/Constant Generator 1)、R3/CG2。除了 CG1 和 CG2,所有寄存器都可作為通用寄存器,用所有指令操作。常數(shù)發(fā)生器只用于指令執(zhí)行時(shí)提供常數(shù),但不能存儲(chǔ)數(shù)據(jù)。對(duì)CGCG2 訪問(wèn)時(shí)的尋址模式可以區(qū)分所獲得的常數(shù)數(shù)值。PC(program counter)、SP 和 SR 配合精簡(jiǎn)指令所實(shí)現(xiàn)的控制,可以使應(yīng)用系統(tǒng)的程序設(shè)計(jì)實(shí)現(xiàn)復(fù)雜的尋址模式和軟件算法。對(duì)程序存儲(chǔ)器進(jìn)行訪問(wèn)時(shí),對(duì)于程序代碼總是以字形式取得,而對(duì)于數(shù)據(jù)可以用字或字節(jié)指令進(jìn)行訪問(wèn)。每次訪問(wèn)均需要 16 位數(shù)據(jù)總線(MDB,即:Memory Data Bus)和訪問(wèn)當(dāng)前存儲(chǔ)器模塊所需的地址總線(MAB,即:Memory Address Bus)。存儲(chǔ)模塊由內(nèi)部模塊允許信號(hào)自動(dòng)選中,這樣可以減少總的電流消耗。對(duì)于 MSP430F 系列,程序存儲(chǔ)器是 FLASH 的。在程序設(shè)計(jì)中,可以將數(shù)據(jù)安排在程序存儲(chǔ)器中,它們可以用字或字節(jié)指令方式訪問(wèn),因此可以實(shí)現(xiàn)查表處理等應(yīng)用。64 KB 空間頂部的 16 字(0FFFFh~0FFE0h)保留用作復(fù)位及中斷的向量地址。數(shù)據(jù)存儲(chǔ)器(RAM)與程序存儲(chǔ)器相同,經(jīng)地址總線(MAB)和數(shù)據(jù)總線(MDB)與 CPU 相連。RAM 內(nèi)的數(shù)據(jù)可以以字或字節(jié)寬度訪問(wèn)。RAM與程序存儲(chǔ)器是經(jīng)過(guò)相同的地址總線和數(shù)據(jù)總線與 CPU 相連。 單片機(jī)電路圖單片機(jī)電路作為整個(gè)系統(tǒng)的核心控制部分,主要采集來(lái)自傳感器的數(shù)據(jù),將數(shù)據(jù)傳輸數(shù)據(jù)中心。單片機(jī)通過(guò)A/D通道進(jìn)行數(shù)據(jù)采集,單片機(jī)與GSM模塊之間的通信采用單片機(jī)的串口0(UART0)來(lái)實(shí)現(xiàn),GSM模塊與單片機(jī)接口時(shí)不不需要進(jìn)行電平轉(zhuǎn)換。單片機(jī)與PC通信則需要通過(guò)串口芯片(SP3220)完成接口電平的轉(zhuǎn)換。此外,單片機(jī)還與串行存儲(chǔ)器接口,以記錄某些關(guān)鍵數(shù)據(jù)。,該單片機(jī)的接口電路非常簡(jiǎn)單。在單片機(jī)的時(shí)鐘設(shè)計(jì)上與其他單片機(jī)有一定的區(qū)別:MSP430F149單片機(jī)采用兩個(gè)時(shí)鐘輸入,即一個(gè)32KHZ的時(shí)鐘信號(hào),另外一個(gè)為8MHZ的時(shí)鐘信號(hào),該系統(tǒng)的時(shí)鐘部分都是采用晶體振蕩器來(lái)實(shí)現(xiàn)的??紤]到電源的輸入紋波對(duì)單片機(jī)的影響,以減小輸入管腳處受到的干擾,另外單片機(jī)還有模擬電源的輸入端,因此在這里需要考慮干擾問(wèn)題,由于在該系統(tǒng)中的干擾比較小,因此模擬地和數(shù)字地共地,并在模擬電源輸入管腳增加一個(gè)濾波電容以減小干擾。單片機(jī)的串口0與GSM模塊接口,串口1與PC進(jìn)行通信,由于接口電平不同,因此串口1與RS232芯片進(jìn)行連接。此外,、以控制設(shè)備的狀態(tài)。 3系統(tǒng)軟件設(shè)計(jì)經(jīng)過(guò)前面的系統(tǒng)硬件設(shè)計(jì)可知,系統(tǒng)的軟件主要包括串口程序、存儲(chǔ)程序、短消息程序、采集控制程序和測(cè)試程序等。本系統(tǒng)軟件采用了前后臺(tái)的設(shè)計(jì)方式,前臺(tái)系統(tǒng)是主程序,后臺(tái)是由所有的中斷服務(wù)程序,如串口接收中斷服務(wù)程序,定時(shí)器中斷服務(wù)程序等功能模塊組成。裝置的遠(yuǎn)程報(bào)警和開(kāi)啟功能通過(guò)軟件控制實(shí)現(xiàn),在使用裝置前需準(zhǔn)備好一張已開(kāi)通的GSM網(wǎng)SIM卡,并在手機(jī)終端上向SIM卡第一個(gè)電話本位置存入報(bào)警的目的手機(jī)號(hào)碼(無(wú)+86),此號(hào)碼也是用戶進(jìn)行遠(yuǎn)程開(kāi)啟時(shí)的唯一有效號(hào)碼;向SIM卡的第一個(gè)短信存儲(chǔ)位置存入欲發(fā)送的報(bào)警短信內(nèi)容。將設(shè)置好的SIM卡裝入裝置并上電后,裝置即可按程序設(shè)計(jì)的流程運(yùn)行。IAR 公司為 MSP430 系列單片機(jī)開(kāi)發(fā)的 C430 集成開(kāi)發(fā)環(huán)境和 C 語(yǔ)言調(diào)試器作為程序開(kāi)發(fā)工具,程序主要由三部分代碼組成:?jiǎn)?dòng)與初始化、報(bào)警監(jiān)控、遠(yuǎn)程開(kāi)啟與控制。啟動(dòng)與初始化的設(shè)計(jì) TC35模塊的初始化裝置上電后首先必須對(duì)單片機(jī)、系統(tǒng)變量等進(jìn)行初始化,然后通過(guò)拉低IGT啟動(dòng)TC35,并通過(guò)發(fā)送AT命令進(jìn)行模塊的初始化設(shè)置。單片機(jī)的初始化包括設(shè)置波特率、設(shè)置外部中斷(電平觸發(fā)方式)和串口中斷等,TC35的初始化包括設(shè)置短信到達(dá)時(shí)提醒方式、接收短信的存儲(chǔ)位置、電話薄的尋址位置等,初始化過(guò)程中用到的AT命令詳見(jiàn)表1。在本系統(tǒng)中,串口0與GSM模塊接口,串口程序部分需要實(shí)現(xiàn)串口0。串口程序主要包括初始化和中斷服務(wù)程序兩個(gè)部分。下面具體介紹程序?qū)崿F(xiàn)的代碼。串口初始化程序主要包括初始化和中斷服務(wù)程序兩個(gè)部分。下面為體和程序。void Init_UART0(void){ //將寄存器的內(nèi)容清零 U0CTL = 0X00。 //數(shù)據(jù)位為8bit U0CTL += CHAR。 //將寄存器的內(nèi)容清零 U0TCTL = 0X00。 //波特率發(fā)生器選擇SMCLK U0TCTL += SSEL1。 //波特率為19200 UBR0_0 = 0Xa1。 UBR1_0 = 0X01。 //調(diào)整寄存器 UMCTL_0 = 0X49。 //使能UART0的TXD和RXD ME1 |= UTXE0 + URXE0。 //使能UART0的RX中斷 IE1 |= URXIE0。 //使能UART0的TX中斷 IE1 |= UTXIE0。 // P3SEL |= BIT4。 // P3SEL |= BIT5。 // P3DIR |= BIT4。 return。}通過(guò)上面的程序可以看出,只要設(shè)置相應(yīng)的寄存器就可以設(shè)置串口工作的參數(shù)。在上面的程序中,串口0的通信率為19200波特/秒。串口進(jìn)行數(shù)據(jù)的發(fā)送和接收處理時(shí),采用中斷服務(wù)程序來(lái)實(shí)現(xiàn),下面為具體的中斷服務(wù)程序。////////////////////////////////////////// 處理來(lái)自串口 0 的接收中斷if __VER__ 200 interrupt [UART0RX_VECTOR] void UART0_RX_ISR(void)else pragma vector=UART0RX_VECTOR __interrupt void UART0_RX_ISR(void)endif{ char chrTemp。 //接收來(lái)自的數(shù)據(jù) UART0_RX_BUF[nRX0_Len_temp] = RXBUF0。 nRX0_Len_temp += 1。 chrTemp= UART0_RX_BUF[nRX0_Len_temp 1]。 if((chrTemp == 13) || (chrTemp == 10)) { //接收到一幀信號(hào) nRX0_Len= nRX0_Len_temp。 nRev_UART0 = 1。 nRX0_Len_temp = 0。 } }////////////////////////////////////////// 處理來(lái)自串口 0 的發(fā)送中斷if __VER__ 200 interrupt [UART0TX_VECTOR] void UART0_TX_ISR(void)elsepragma vector=UART0TX_VECTOR__interrupt void UART0_TX_ISR(void)endif{ if(nTX0_Len != 0) { // 表示緩沖區(qū)里的數(shù)據(jù)沒(méi)有發(fā)送完nTX0_Flag = 0。TXBUF0 = UART0_TX_BUF[nSend_TX0]。nSend_TX0 += 1。Delay_us(5)。if(nSend_TX0 = nTX0_Len){ //數(shù)據(jù)發(fā)送完畢 nSend_TX0 = 0。 nTX0_Len = 0。 nTX0_Flag = 1。 } }}在上面的中斷服務(wù)程序中,為了與其他程序進(jìn)行數(shù)據(jù)交互,使用全局變量或者全局緩沖區(qū)來(lái)實(shí)現(xiàn),例如“UART1_TX_BUF[]”和“Ntx1_Flag”等。 存儲(chǔ)程序設(shè)計(jì)在本系統(tǒng)中,利用串行存儲(chǔ)器存儲(chǔ)某些重要數(shù)據(jù)。單片機(jī)通過(guò)I2C與串行存儲(chǔ)器進(jìn)行接口。由于本系統(tǒng)使用的單片機(jī)是MSP430F149,該單片機(jī)沒(méi)有I2C外圍接口,因此需要采用一般的I/O端口來(lái)模擬I2C總線的功能,從而實(shí)現(xiàn)串行存儲(chǔ)器的讀/寫(xiě)操作。,下面分別進(jìn)行詳細(xì)介紹。24LC02B的寫(xiě)操作有兩種形式:?jiǎn)巫止?jié)寫(xiě)和按頁(yè)寫(xiě)。下面對(duì)單字節(jié)
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1