91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 4KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-05-14
  • 語(yǔ)言: 其他
  • 標(biāo)簽: ad7689??

資源簡(jiǎn)介

上傳一個(gè)AD7689驅(qū)動(dòng),STM32 SPI驅(qū)動(dòng)程序。AD采樣驅(qū)動(dòng)。

資源截圖

代碼片段和文件信息

#include?“AD7689.h“
////////////////////////////////////////////////////////////////////////////////// ?
//本程序只供學(xué)習(xí)使用,未經(jīng)作者許可,不得用于其它任何用途
//Mini?STM32開發(fā)板
//SPI?驅(qū)動(dòng)函數(shù) ???
//正點(diǎn)原子@ALIENTEK
//技術(shù)論壇:www.openedv.com
//修改日期:2010/6/13?
//版本:V1.0
//版權(quán)所有,盜版必究。
//Copyright(C)?正點(diǎn)原子?2009-2019
//All?rights?reserved
//////////////////////////////////////////////////////////////////////////////////? ??
?

//以下是SPI模塊的初始化代碼,配置成主機(jī)模式,訪問SD?Card/W25X16/24L01/JF24C ??
//SPI口初始化
//這里針是對(duì)SPI1的初始化

SPI_InitTypeDef??SPI_InitStructure;

void?SPIx_Init(void)
{
GPIO_InitTypeDef?GPIO_InitStructure;
??
RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOA|RCC_APB2Periph_SPI1?ENABLE?);
?
GPIO_InitStructure.GPIO_Pin?=?GPIO_Pin_5?|?GPIO_Pin_6?|?GPIO_Pin_7;
GPIO_InitStructure.GPIO_Mode?=?GPIO_Mode_AF_PP;??//復(fù)用推挽輸出
GPIO_InitStructure.GPIO_Speed?=?GPIO_Speed_50MHz;
GPIO_Init(GPIOA?&GPIO_InitStructure);

? GPIO_SetBits(GPIOAGPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7);

SPI_InitStructure.SPI_Direction?=?SPI_Direction_2Lines_FullDuplex;??//設(shè)置SPI單向或者雙向的數(shù)據(jù)模式:SPI設(shè)置為雙線雙向全雙工
SPI_InitStructure.SPI_Mode?=?SPI_Mode_Master; //設(shè)置SPI工作模式:設(shè)置為主SPI
SPI_InitStructure.SPI_DataSize?=?SPI_DataSize_8b; //設(shè)置SPI的數(shù)據(jù)大小:SPI發(fā)送接收8位幀結(jié)構(gòu)
SPI_InitStructure.SPI_CPOL?=?SPI_CPOL_High; //選擇了串行時(shí)鐘的穩(wěn)態(tài):時(shí)鐘懸空高
SPI_InitStructure.SPI_CPHA?=?SPI_CPHA_2Edge; //數(shù)據(jù)捕獲于第二個(gè)時(shí)鐘沿
SPI_InitStructure.SPI_NSS?=?SPI_NSS_Soft; //NSS信號(hào)由硬件(NSS管腳)還是軟件(使用SSI位)管理:內(nèi)部NSS信號(hào)有SSI位控制
SPI_InitStructure.SPI_BaudRatePrescaler?=?SPI_BaudRatePrescaler_256; //定義波特率預(yù)分頻的值:波特率預(yù)分頻值為256
SPI_InitStructure.SPI_FirstBit?=?SPI_FirstBit_MSB; //指定數(shù)據(jù)傳輸從MSB位還是LSB位開始:數(shù)據(jù)傳輸從MSB位開始
SPI_InitStructure.SPI_CRCPolynomial?=?7; //CRC值計(jì)算的多項(xiàng)式
SPI_Init(SPI1?&SPI_InitStructure);??//根據(jù)SPI_InitStruct中指定的參數(shù)初始化外設(shè)SPIx寄存器
?
SPI_Cmd(SPI1?ENABLE);?//使能SPI外設(shè)

SPIx_ReadWriteByte(0xff);//啟動(dòng)傳輸 ?
}???
//SPI?速度設(shè)置函數(shù)
//SpeedSet:
//SPI_BaudRatePrescaler_2???2分頻???(SPI?36M@sys?72M)
//SPI_BaudRatePrescaler_8???8分頻???(SPI?9M@sys?72M)
//SPI_BaudRatePrescaler_16??16分頻??(SPI?4.5M@sys?72M)
//SPI_BaudRatePrescaler_256?256分頻?(SPI?281.25K@sys?72M)
??
void?SPIx_SetSpeed(u8?SpeedSet)
{
SPI_InitStructure.SPI_BaudRatePrescaler?=?SpeedSet?;
?? SPI_Init(SPI1?&SPI_InitStructure);
SPI_Cmd(SPI1ENABLE);
}?

//SPIx?讀寫一個(gè)字節(jié)
//TxData:要寫入的字節(jié)
//返回值:讀取到的字節(jié)
u8?SPIx_ReadWriteByte(u8?TxData)
{
u8?retry=0; ?
while?(SPI_I2S_GetFlagStatus(SPI1?SPI_I2S_FLAG_TXE)?==?RESET)?//檢查指定的SPI標(biāo)志位設(shè)置與否:發(fā)送緩存空標(biāo)志位
{
retry++;
if(retry>200)return?0;
} ??
SPI_I2S_SendData(SPI1?TxData);?//通過外設(shè)SPIx發(fā)送一個(gè)數(shù)據(jù)
retry=0;

while?(SPI_I2S_GetFlagStatus(SPI1?SPI_I2S_FLAG_RXNE)?==?RESET);?//檢查指定的SPI標(biāo)志位設(shè)置與否:接受緩存非空標(biāo)志位
{
retry++;
if(retry>200)return?0;
} ?? ????
return?SPI_I2S_ReceiveData(SPI1);?//返回通過SPIx最近接收的數(shù)據(jù) ????
}
void?AD7689_Delay(void)
{
u16?count?;
??for(count?=?1000;?count?!=?0;?count--);
}
//http://blog.sina.com.cn/s/blog_711aba3d0100n3j3.html
//凱美特中心在366??宏欣在370??駿彩?367??新鴻368.5
//ITR20403
u16?SPI_AD7689_Read(u8

?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----

?????文件???????5255??2016-07-13?10:54??AD7689.c

?????文件???????4386??2016-09-26?16:44??AD7689.h

-----------?---------??----------?-----??----

?????????????????9641????????????????????2


評(píng)論

共有 條評(píng)論