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

正文內(nèi)容

基于pcap01的數(shù)據(jù)采集系統(tǒng)及圖像重建畢業(yè)論文(編輯修改稿)

2025-07-24 18:11 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 行寫(xiě)的操作的話,主機(jī)就只需要輸出字節(jié),可以忽略收到的字節(jié);相反的,如果主機(jī)僅僅只是想讀到外部設(shè)備上傳輸?shù)淖止?jié),就必須發(fā)送一個(gè)空的字節(jié)來(lái)發(fā)起外設(shè)進(jìn)行傳輸。如果主機(jī)希望一次傳輸多個(gè)字節(jié)和信息,就需要SPI外設(shè)中的芯片選擇端在整個(gè)數(shù)據(jù)傳輸過(guò)程中保持低電平。 在第四章中我們會(huì)介紹STM32與液晶通訊時(shí)SPI的一些配置。 第4章 數(shù)據(jù)采集系統(tǒng)的軟件設(shè)計(jì)系統(tǒng)總體流程圖如圖41所示:圖41 系統(tǒng)總體流程圖首先,配置SPI、I2C、GPIO、RCC等外設(shè),然后配置電容傳感器,向其中下載標(biāo)準(zhǔn)固件,然后寫(xiě)入配置和參數(shù)寄存器。設(shè)置測(cè)量模式,選擇測(cè)量通道,并開(kāi)始測(cè)量,將測(cè)量結(jié)果顯示到液晶上。再轉(zhuǎn)換測(cè)量通道,再次測(cè)量并將結(jié)果顯示出來(lái)。該模塊的軟件流程圖如圖42所示:開(kāi)始通訊測(cè)試下載標(biāo)準(zhǔn)固件設(shè)置配置和參數(shù)寄存器部分復(fù)位開(kāi)始測(cè)量等待測(cè)量完成讀出結(jié)果并顯示 N Y N Y圖42 測(cè)量電容流程圖測(cè)量步驟:首先先通訊測(cè)試。這里用向內(nèi)部SRAM中寫(xiě)入數(shù)據(jù)并讀回。通過(guò)操作碼 “Write to SRAM” 和 “Read SRAM”可以對(duì)于 SRAM進(jìn)行任何讀或者寫(xiě)的操作。24位操作碼如表41所示:表41 Pcap01的24操作碼命令    Byte2   Byte1    Byte0    寫(xiě)入SRAM 1001address11…0 data7…0 讀取SRAM 0001address11…0 data7…0 通訊測(cè)試通過(guò)之后,需要下載固件。固件就是為已經(jīng)寫(xiě)好的DSP程序,在標(biāo)準(zhǔn)固件中,只進(jìn)行電容的測(cè)量,不進(jìn)行特殊的數(shù)據(jù)處理,并將結(jié)果寫(xiě)入結(jié)果寄存器中。下載固件后,就是向配置和參數(shù)寄存器中寫(xiě)入相應(yīng)的數(shù)值。在標(biāo)準(zhǔn)固件中提供了20個(gè)配置和參數(shù)寄存器以及12個(gè)讀寄存器。其中配置寄存器直接設(shè)置了CDC、RDC、接口、時(shí)鐘以及DSP,為寄存器0到寄存器10和寄存器20,參數(shù)寄存器設(shè)置了固件的數(shù)值,因此為特定固件,從Param0到Param8。在本系統(tǒng)中主要配置寄存器0,寄存器2到寄存器6,寄存器8到寄存器10和寄存器20。參數(shù)寄存器為特定固件所設(shè)置故不用配置。在對(duì)其他所有配置和參數(shù)寄存器設(shè)置完成后,最后向寄存器20的bit0位寫(xiě)1,表示開(kāi)啟運(yùn)行模式??傮w的配置和參數(shù)寄存器設(shè)置為:寄存器0:0x4200ff寄存器1:0x201022寄存器2:0x0f460b寄存器3:0x0d0064寄存器4:0x080000寄存器5:0x000000寄存器6:0x000040寄存器7:0x1f0000寄存器8:0x800030寄存器9:0xff000f寄存器10:0x180087寄存器20:0x000001 寫(xiě)入配置和參數(shù)寄存器時(shí)使用32位命令 表42 Pcap01的32位操作碼命令     Byte3 Byte2 Byte1 Byte0    寫(xiě)配置 11Cf_Address5…0 Registry Parameter23…0讀結(jié)果 01Rs_Address5…0 Measurement Results23…0 or Measurement Results47…24然后寫(xiě)入8位命令的部分復(fù)位之后寫(xiě)入開(kāi)始測(cè)量命令。表43 Pcap01的8位操作碼操作碼    作用    h88 上電復(fù)位。這個(gè)命令將會(huì)復(fù)位所有的狀態(tài)。h8A “Initial” 或者 “partial” 復(fù)位,這個(gè)復(fù)位下SRAM內(nèi)容和寄存器配置將不會(huì)改變。主要復(fù)位了重要的部分,比如 frontend 轉(zhuǎn)換器和DSP數(shù)據(jù)處理部分。 h8C 開(kāi)始一次電容測(cè)量。h84 終止writetoOTP 的進(jìn)程。h8E 開(kāi)始一次溫度測(cè)量。部分復(fù)位命令0x8A,開(kāi)始測(cè)量命令為0x8C。在測(cè)量完成后發(fā)送32位命令讀取結(jié)果寄存器,讀寄存器的內(nèi)容是完全由固件所制定的,寄存器1的值為C1/C0電容測(cè)量比率,無(wú)符號(hào)固定點(diǎn)數(shù)帶有3位整數(shù)21位小數(shù),0 到 ppm。寄存器8為狀態(tài)寄存器。bit23表示通信在測(cè)量當(dāng)中發(fā)生,測(cè)量質(zhì)量可能會(huì)因此下降,增加sequence time可以有幫助;bit22表示溫度測(cè)量結(jié)束,根據(jù)所設(shè)置的模式,這一位還可以表示目前設(shè)備正在等待一個(gè)開(kāi)始命令或者處罰下一次開(kāi)始測(cè)量的條件;bit20顯示在配置寄存器20中設(shè)置的RUNBIT的狀態(tài);bit16這是所有錯(cuò)誤條件給出一個(gè)綜合;bit13顯示測(cè)量溢出或者CDC的其它錯(cuò)誤;bit12bit5顯示在 CDC 端口有一個(gè)端口錯(cuò)誤(可能電容太大);bit3顯示測(cè)量溢出或者 RDC的其它錯(cuò)誤。在測(cè)量開(kāi)始后延時(shí)等待然后檢測(cè)狀態(tài)寄存器是否是0x100000,若處理錯(cuò)誤繼續(xù)等待,是則讀取寄存器1的值,并將結(jié)果顯示出來(lái)。 I2C配置在STM32中有豐富的庫(kù)函數(shù)來(lái)配置它所包含的外設(shè),使使用更簡(jiǎn)便。首先配置IO口,I2C通訊共需兩條線,即使用兩個(gè)IO口,需要將其配置成漏極開(kāi)路新的形式。在STM32中有著該外設(shè)對(duì)應(yīng)的IO口故將其配置成復(fù)用模式輸出速率大于400k即可,故其配置函數(shù)為 = GPIO_Pin_6 | GPIO_Pin_7。 = GPIO_Speed_50MHz。 = GPIO_Mode_AF_OD。 GPIO_Init(GPIOB, amp。GPIO_InitStructure)。I2C的配置函數(shù)為:I2C_InitTypeDef I2C_InitStructure。 = I2C_Mode_I2C。 = I2C_DutyCycle_2。 = 0x30。 = I2C_Ack_Enable。= I2C_AcknowledgedAddress_7bit。 = 100000 。I2C_Cmd(I2C1, ENABLE)。I2C_Init(I2C1, amp。I2C_InitStructure)。I2C_AcknowledgeConfig(I2C1, ENABLE)。首先I2C的模式選擇可選I2C模式,SMBus模式,在本系統(tǒng)中設(shè)置為I2C模式,設(shè)置時(shí)鐘占空比和主機(jī)地址。設(shè)置I2C應(yīng)答使能,設(shè)置I2C應(yīng)答7位地址,設(shè)置I2C時(shí)鐘速度為100kHz。由于Pcap01的I2C通訊最大只能到100kHz,故這里只能設(shè)成100kHz。然后使能I2C,初始化I2C,并且使能I2C應(yīng)答功能。這樣就完成了I2C的配置。CH446是SPI串行通訊,但是串行通訊的過(guò)程當(dāng)中開(kāi)啟開(kāi)關(guān)和關(guān)閉開(kāi)關(guān)是依靠數(shù)據(jù)線在STB線激活期間的高低狀態(tài)決定的。而STM32的硬件SPI是標(biāo)準(zhǔn)的SPI通訊不能自由的控制數(shù)據(jù)線,故CH446與STM32的通訊使用模擬SPI的方式來(lái)通訊的。CH446的操作非常簡(jiǎn)便,只需在開(kāi)始是給出一個(gè)復(fù)位信號(hào),然后輸入開(kāi)關(guān)地址然后輸入開(kāi)關(guān)信號(hào)即可。其時(shí)序圖如圖43所示:圖43 CH446的串行通訊時(shí)序 SPI配置對(duì)于SPI的配置首先是要配置引腳//配置MOSI和SCK為復(fù)用推挽輸出 = GPIO_Pin_15|GPIO_Pin_13。 = GPIO_Speed_50MHz。 = GPIO_Mode_AF_PP。GPIO_Init(GPIOB, amp。GPIO_InitStructure)。 //配置MISO為浮空輸入 = GPIO_Pin_14。 = GPIO_Mode_IN_FLOATING。GPIO_Init(GPIOB, amp。GPIO_InitStructure)。 //配置NSS為推挽輸出 = GPIO_Pin_12。 = GPIO_Mode_Out_PP。 = GPIO_Speed_50MHz。GPIO_Init(GPIOB, amp。GPIO_InitStructure)。時(shí)鐘線和數(shù)據(jù)線需要配置成復(fù)用形式,從機(jī)選擇需要軟件控制故不需要配置成復(fù)用模式。然后是外設(shè)SPI的配置SPI_InitTypeDef SPI_InitStructure。 //SPI初始化 = SPI_Direction_1Line_Tx。 //單線雙向發(fā)送 = SPI_Mode_Master。 //設(shè)置為主模式 = SPI_DataSize_8b。 //發(fā)送8位數(shù)據(jù) = SPI_CPOL_High。 //空閑時(shí)時(shí)鐘為高 = SPI_CPHA_2Edge。 //在時(shí)鐘的第二個(gè)邊沿?cái)?shù)據(jù)采樣(上升沿) = SPI_NSS_Soft。 //軟件控制NSS信號(hào) = SPI_BaudRatePrescaler_64。 //72M,64分頻 = SPI_FirstBit_MSB。 //高位在前 = 7。SPI_Init(SPI2, amp。SPI_InitStructure)。SPI_Cmd(SPI2, ENABLE)。SPI_SSOutputCmd(SPI2, ENABLE)。液晶的讀寫(xiě)時(shí)序如圖44所示:圖44 液晶SPI時(shí)序根據(jù)圖44將SPI配置成上述模式,其中液晶的傳輸速度不能超過(guò)2M故SPI的速度設(shè)置為72M的64分頻。 液晶控制流程在對(duì)模組進(jìn)行字節(jié)寫(xiě)入操作
點(diǎn)擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1