亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? spi.c

?? mega128通過SPI方式控制74hc595芯片驅動數碼管程序。
?? C
字號:
#include "SPI.h"

/*-----------------------------------------------------------------------
SPI_Init    : SPI接口初始化

輸入參數:	無
返回值:		無
-----------------------------------------------------------------------*/
void SPI_Init(void)
{
	DDR_SPI = (1<<DD_MOSI)|(1<<DD_SCK)|(1<<DD_SS);
	SPCR = (1<<SPE)|(1<<MSTR)|(1<<SPR0);		
    // 使能SPI接口,主機模式,模式0,16分頻,SPI時鐘約460KHz
}

/*-----------------------------------------------------------------------
SPI_Byte    : 使用SPI發送一個字節數據,并接收一個字節數據

輸入參數:	data:	寫入的數據
返回值:		接收的數據
-----------------------------------------------------------------------*/
unsigned char SPI_Byte(unsigned char data)
{
	unsigned char rdata;

	Device_EN();
	_delay_us(50);
    SPDR = data;
	loop_until_bit_is_set(SPSR,SPIF);	// 等待數據傳送完
	rdata=SPDR;
	Device_DIS();
	_delay_us(50);
	return rdata;
}

/*
串行外設接口-SPI
    SPI接口可以令ATmega128 和外設或其他AVR器件進行高速的同步數據傳輸
	ATmega128的SPI接口同時還用來實現程序和EEPROM的下載和上載。請參見[SPI串行編程和校驗]。
	
	SPI系統包括兩個移位寄存器和一個主機時鐘發生器。
	主機和從機將需要發送的數據放入相應的移位寄存器。
	主機在SCK 引腳上產生時鐘脈沖以交換數據。
	主機的數據從主機的MOSI 移出,從從機的MOSI 移入;從機的數據從從機的MISO 移出,從主機的MISO 移入
	(其實就是由主機和從機構成一個16位的循環移位寄存器,所以收發數據是同時的,收發函數可以寫成一條函數)

	SPI系統的發送方向只有一個緩沖器,而在接收方向有兩個緩沖器。
	也就是說,在發送時一定要等到移位過程全部結束后才能對SPI 數據寄存器執行寫操作。
	而在接收數據時,需要在下一個字符移位過程結束之前通過訪問SPI 數據寄存器讀取當前接收到的字符。
	否則第一個字節將丟失。
	
SS引腳的功能
	1從機模式
	從機模式當SPI配置為從機時,從機選擇引腳SS總是為輸入。
	SS 為低將激活SPI 接口, MISO成為輸出( 用戶必須進行相應的端口配置) 引腳,其他引腳成為輸入引腳。
	當SS 為高時所有的引腳成為輸入, SPI 邏輯復位,不再接收數據。
	SS引腳對于數據包/字節的同步非常有用,可以使從機的位計數器與主機的時鐘發生器同步。
	當SS 拉高時SPI從機立即復位接收和發送邏輯,并丟棄移位寄存器里不完整的數據。
	
	2主機模式
	當SPI 配置為主機時(MSTR 的SPCR 置位),用戶可以決定SS 引腳的方向。
	若SS 配置為輸出,則此引腳可以用作普通的I/O 口而不影響SPI 系統。典型應用是用來驅動從機的SS 引腳。
	(單主機系統,SS引腳最好設成輸出)
	
	如果SS 配置為輸入,必須保持為高以保證SPI 的正常工作。
	若系統配置為主機, SS 為輸入,但被外設拉低,則SPI 系統會將此低電平解釋為有一個外部主機將自己選擇為從機。
	為了防止總線沖突, SPI 系統將實現如下動作:
	1. 清零SPCR 的MSTR 位,使SPI 成為從機,從而MOSI 和SCK 變為輸入。
	2. SPSR 的SPIF 置位。若SPI 中斷和全局中斷開放,則中斷服務程序將得到執行。
	因此,使用中斷方式處理SPI 主機的數據傳輸,并且存在SS 被拉低的可能性時,中斷服務程序應該檢查MSTR 是否為"1”。
	若被清零,用戶必須將其置位,以重新使能SPI 主機模式。
	
數據模式(中文手冊有點混亂,請參考英文原版)
	相對于串行數據, SCK的相位和極性有4種組合,由CPHA和CPOL控制組合的方式。
	SPI模式 CPOL CPHA      起始沿      結束沿
	  0      0    0    采樣(上升沿)   設置(下降沿)
	  1      0    1    設置(上升沿)   采樣(下降沿)
	  2      1    0    采樣(下降沿)   設置(上升沿)
	  3      1    1    設置(下降沿)   采樣(上升沿)

SPI控制寄存器-SPCR
	Bit 7 – SPIE: 使能SPI 中斷
		置位后,只要SPSR 寄存器的SPIF 和SREG 寄存器的全局中斷使能位置位,就會引發SPI 中斷。
	Bit 6 – SPE: 使能SPI
		SPE 置位將使能SPI。進行任何SPI 操作之前必須置位SPE。
	Bit 5 – DORD: 數據次序
		DORD 置位時數據的LSB 首先發送;否則數據的MSB 首先發送。
	Bit 4 – MSTR: 主/ 從選擇
		MSTR置位時選擇主機模式,否則為從機。
		如果MSTR為"1”,SS配置為輸入,但被拉低,則MSTR 被清零,寄存器SPSR 的SPIF 置位。
		用戶必須重新設置MSTR 進入主機模式
	Bit 3 – CPOL: 時鐘極性
		CPOL 置位表示空閑時SCK 為高電平;否則空閑時SCK 為低電平。
	Bit 2 – CPHA: 時鐘相位
		CPHA 決定數據是在SCK 的起始沿采樣還是在SCK 的結束沿采樣。
	Bits 1, 0 – SPR1, SPR0: SPI 時鐘速率選擇1 與0
		確定主機的SCK 速率。
		SPR1 和SPR0 對從機沒有影響。
		SCK 和振蕩器的時鐘頻率fosc關系如下表所示:
			SPI2X SPR1 SPR0 SCK 頻率
			  0 	0 	0 	fosc/4
			  0 	0 	1 	fosc/16
			  0		1 	0 	fosc/64
			  0 	1 	1 	fosc/128
			  1 	0 	0 	fosc/2
			  1 	0 	1 	fosc/8
			  1 	1 	0 	fosc/32
			  1 	1 	1 	fosc/64
			  
SPI狀態寄存器-SPSR
 	Bit 7 – SPIF: SPI 中斷標志
		串行發送結束后,SPIF 置位。
		若此時寄存器SPCR 的SPIE 和全局中斷使能位置位,SPI中斷即產生。
		如果SPI 為主機, SS 配置為輸入,且被拉低, SPIF 也將置位。
		進入中斷服務程序后SPIF自動清零。
		或者可以通過先讀SPSR,緊接著訪問SPDR來對SPIF清零。
	Bit 6 – WCOL: 寫碰撞標志
		在發送當中對SPI 數據寄存器SPDR寫數據將置位WCOL。
		WCOL可以通過先讀SPSR,緊接著訪問SPDR 來清零。
	Bit 0 – SPI2X: SPI 倍速
		置位后SPI 的速度加倍。
		若為主機,則SCK 頻率可達CPU 頻率的一半。
		若為從機,只能保證fosc /4。
		
SPI數據寄存器-SPDR
	SPI數據寄存器為讀/寫寄存器,用來在寄存器文件和SPI移位寄存器之間傳輸數據。
	寫寄存器將啟動數據傳輸,
	讀寄存器將讀取寄存器的接收緩沖器。
*/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产日韩欧美在线一区| 国产ts人妖一区二区| 欧美日韩国产精选| 免费成人深夜小野草| 欧美成人精品3d动漫h| 精品综合免费视频观看| 久久久高清一区二区三区| 国产精品一区二区在线播放| 国产精品视频看| 一本一道波多野结衣一区二区| 午夜精品123| 久久综合九色综合97婷婷女人| 国产91精品精华液一区二区三区| 亚洲精品五月天| 欧美电影在哪看比较好| 免费观看91视频大全| 中文一区二区完整视频在线观看| 日本高清免费不卡视频| 日产国产欧美视频一区精品| 国产欧美精品一区二区色综合朱莉 | 精品欧美一区二区久久| 粉嫩在线一区二区三区视频| 亚洲精品免费在线| 欧美成人猛片aaaaaaa| 成人性生交大片免费看中文网站| 亚洲最大成人网4388xx| 精品日韩一区二区| 在线一区二区视频| 国产伦精品一区二区三区在线观看| 亚洲色图在线看| 日韩欧美国产三级| 91免费版在线看| 久久99热这里只有精品| 亚洲女性喷水在线观看一区| 日韩一区二区三区视频在线 | 亚洲一区中文日韩| 久久久欧美精品sm网站| 欧美精品在线观看一区二区| av激情成人网| 精品一区二区在线视频| 亚洲国产一区二区三区青草影视| 久久久久久免费网| 91精品综合久久久久久| 一本一道久久a久久精品| 国产一区二区三区美女| 日韩av一区二区三区四区| 亚洲免费av网站| 日本一区二区成人| 欧美videos中文字幕| 欧美日韩一级视频| 色综合久久88色综合天天免费| 国产盗摄精品一区二区三区在线 | 国产三级精品三级在线专区| 91精品国产入口| 在线观看av一区| 99久久精品免费| 国产98色在线|日韩| 国产乱子伦视频一区二区三区| 日欧美一区二区| 亚洲国产视频一区二区| 亚洲视频在线一区二区| 中文字幕日本乱码精品影院| 国产视频一区在线观看| 精品国产凹凸成av人导航| 91麻豆精品国产自产在线| 欧美性生活影院| 欧美性猛片aaaaaaa做受| 91丨porny丨在线| 91视频国产资源| 97se亚洲国产综合自在线 | 91色porny| 成人av免费在线观看| 懂色中文一区二区在线播放| 国产精品综合一区二区| 国产精品亚洲专一区二区三区| 国产在线观看一区二区| 国产在线观看免费一区| 国产91在线观看| 成年人午夜久久久| 一本大道久久精品懂色aⅴ| 一本大道久久a久久综合婷婷 | 成人午夜大片免费观看| 国产99一区视频免费| 成人av网在线| 在线观看免费视频综合| 欧美日韩和欧美的一区二区| 欧美一卡在线观看| 久久精品一区二区| 国产精品传媒视频| 亚洲一区二区欧美| 免费观看日韩电影| 粉嫩高潮美女一区二区三区| 色综合中文字幕国产| 欧美日韩国产精选| 精品1区2区在线观看| 亚洲欧洲一区二区三区| 亚洲夂夂婷婷色拍ww47 | 日韩精品一区二区三区中文精品| 精品999久久久| 中文字幕在线一区免费| 亚洲综合精品久久| 麻豆传媒一区二区三区| 国产91清纯白嫩初高中在线观看| 日本电影欧美片| 欧美一区二区三区男人的天堂| 久久久久高清精品| 夜夜精品视频一区二区| 久久国产精品72免费观看| www.亚洲国产| 欧美一级xxx| 国产精品欧美经典| 亚洲成人综合视频| 成人一区二区三区| 欧美精品成人一区二区三区四区| 久久久久一区二区三区四区| 亚洲影视资源网| 国产一区三区三区| 日本高清不卡一区| 久久久久久久久99精品| 一区二区免费看| 国产盗摄女厕一区二区三区| 欧美肥妇bbw| 亚洲欧洲av另类| 免费在线一区观看| 99re6这里只有精品视频在线观看| 欧美日韩国产免费一区二区 | 午夜精品久久久久影视| 国产精品一区二区男女羞羞无遮挡| 在线影视一区二区三区| 国产日韩欧美精品电影三级在线| 午夜影视日本亚洲欧洲精品| av资源网一区| www一区二区| 日本不卡在线视频| 一本大道久久a久久精品综合| 国产日韩欧美精品综合| 美女被吸乳得到大胸91| 欧美中文字幕不卡| 国产精品久线观看视频| 国产真实乱偷精品视频免| 欧美精品黑人性xxxx| 亚洲制服丝袜av| 97久久超碰国产精品电影| 欧美国产乱子伦| 国产乱码精品一区二区三区忘忧草 | 国产精品美女久久久久久2018| 精品午夜久久福利影院 | 337p粉嫩大胆噜噜噜噜噜91av | 欧美高清视频在线高清观看mv色露露十八| 日本一区二区三区高清不卡 | 91丨九色丨蝌蚪富婆spa| 亚洲国产精品精华液ab| 国产一区不卡在线| 日韩精品一区二区三区在线观看| 午夜av区久久| 88在线观看91蜜桃国自产| 亚洲一区二区三区影院| 欧美在线观看18| 亚洲另类春色国产| 欧美综合一区二区| 亚洲一区二区三区中文字幕| 欧美三级视频在线| 亚洲成人自拍偷拍| 欧美日韩的一区二区| 日日欢夜夜爽一区| 日韩欧美一二区| 精品影视av免费| 2017欧美狠狠色| 成人在线综合网| 亚洲视频免费在线观看| 欧美亚洲综合网| 午夜精品成人在线| 日韩精品一区二区三区老鸭窝| 免费看日韩精品| 久久综合久久鬼色中文字| 国产成人综合在线| 中文字幕日本乱码精品影院| 色老头久久综合| 日韩av电影天堂| 欧美精品一区二区三区高清aⅴ| 国产精品12区| 亚洲天堂精品在线观看| 在线视频中文字幕一区二区| 丝袜美腿成人在线| 日韩欧美成人一区二区| 高清国产一区二区| 亚洲综合在线第一页| 日韩亚洲欧美综合| 国产不卡视频一区| 亚洲另类一区二区| 日韩欧美在线综合网| 国产**成人网毛片九色| 亚洲天堂成人网| 91精品国产综合久久久久久久久久 | 美女视频黄a大片欧美| 中文字幕乱码一区二区免费| 欧美日韩在线播放| 国产一区二区导航在线播放| 中文字幕一区在线| 日韩一级免费观看|