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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? main.c

?? 一些avr單片機(jī)的開(kāi)發(fā)實(shí)例
?? C
字號(hào):
/***********************************************
****      AVR  SPI接口使用范例   	             ***
****  	                                     ***
**** 作者:  HJJourAVR                        ***
**** 編譯器:WINAVR20050214                   ***
****                                         ***
****  	www.OurAVR.com	 2005.9.26           ***
***********************************************/
/*
本程序簡(jiǎn)單的示范了如何使用AVR ATMEGA16的SPI接口來(lái)訪問(wèn)DS1302 RTC實(shí)時(shí)時(shí)鐘芯片
	串行外設(shè)接口-SPI
	DS1302的讀寫控制
	USART跟PC連接,實(shí)現(xiàn)顯示和控制

*/

#include <avr/io.h>
#include <avr/signal.h>
#include <avr/interrupt.h>
#include <avr/delay.h>
//時(shí)鐘定為外部晶振 7.3728MHz,F_CPU=7372800
#include "main.h"

unsigned char DS1302_EXIST;
unsigned char INITDATE[8]={0x50,	//59秒
						   0x59,	//59分
						   0x23,	//23時(shí)  24小時(shí)制
						   0x06,	//06日
						   0x10,	//10月
						   0x04,	//星期四
						   0x05,	//2005年
						   0x80		//寫保護(hù)
						  };

unsigned char CURDATE[7];
unsigned char sCURDATE[]="20xx年xx月xx日xx時(shí)xx分xx秒 星期xx";
unsigned char sWEEK[]="錯(cuò)一二三四五六日";
//注意 漢字要占用2個(gè)字節(jié)的空間

int main(void)
{
    //上電默認(rèn)DDRx=0x00,PORTx=0x00 輸入,無(wú)上拉電阻
    PORTA=0xFF;							//不用的管腳使能內(nèi)部上拉電阻。
    PORTC=0xFF;
    PORTD=0xFF;
	DDRD=(1<<PIN_TXD);					//串口的輸出
    PORTB=~((1<<DS1302_CE)|(1<<DS1302_MOSI)|(1<<DS1302_MISO)|(1<<DS1302_SCK));
    									//DS1302帶內(nèi)部下拉電阻
    DDRB =(1<<DS1302_CE)|(1<<DS1302_SCK)|(1<<DS1302_MOSI);
    									//設(shè)定SPI接口
    init_USART();
    init_SPI();
    put_s("這是個(gè)簡(jiǎn)單的SPI接口訪問(wèn)DS1302實(shí)時(shí)時(shí)鐘(RTC)的程序");
    DS1302_EXIST=check_RTC();			//檢測(cè)DS1302的存在
    if(DS1302_EXIST)
    {
    	put_s("按下[I]鍵可以初始化RTC時(shí)間,默認(rèn)為2005年10月06日23時(shí)59分50秒 星期四");
    	put_s("按下[R]鍵可以讀取當(dāng)前時(shí)間");
    	put_s("用戶可以自行開(kāi)發(fā)其他功能");
    	put_s("     www.ouravr.com");
	}
	else
		put_s("RTC找不到!");
    sei();								//使能全局中斷
    while(1);
    
}

/*
串行外設(shè)接口-SPI
    SPI接口可以令A(yù)Tmega16 和外設(shè)或其他AVR器件進(jìn)行高速的同步數(shù)據(jù)傳輸
	ATmega16的SPI接口同時(shí)還用來(lái)實(shí)現(xiàn)程序和EEPROM的下載和上載。請(qǐng)參見(jiàn)[SPI串行編程和校驗(yàn)]。
	
	SPI系統(tǒng)包括兩個(gè)移位寄存器和一個(gè)主機(jī)時(shí)鐘發(fā)生器。
	主機(jī)和從機(jī)將需要發(fā)送的數(shù)據(jù)放入相應(yīng)的移位寄存器。
	主機(jī)在SCK 引腳上產(chǎn)生時(shí)鐘脈沖以交換數(shù)據(jù)。
	主機(jī)的數(shù)據(jù)從主機(jī)的MOSI 移出,從從機(jī)的MOSI 移入;從機(jī)的數(shù)據(jù)從從機(jī)的MISO 移出,從主機(jī)的MISO 移入
	(其實(shí)就是由主機(jī)和從機(jī)構(gòu)成一個(gè)16位的循環(huán)移位寄存器,所以收發(fā)數(shù)據(jù)是同時(shí)的,收發(fā)函數(shù)可以寫成一條函數(shù))

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

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

/*
DS1302的SPI接口特點(diǎn):
	1 I/O共用一個(gè)引腳,故M16的MOSI要串10K電阻到MISO,然后把MISO跟DS1302_IO腳短接在一起的
	2 低位在先
	3 SPI模式0 CPOL = 0, CPHA = 0,空閑時(shí)SCK為低電平,上升沿采樣,下降沿設(shè)置
	4 CE引腳為使能端,高電平使能SPI口
	5 最高時(shí)鐘速度 2MHz@Vcc=5V 500KHz@Vcc=2V
	6 SCK/IO/CE都帶有40K內(nèi)部下拉電阻。
	7 有寫保護(hù),寫入數(shù)據(jù)前需要先去掉寫保護(hù)。
	8 BURST模式下對(duì)CLOCK進(jìn)行寫操作,必須一次寫完8字節(jié)。
	9 0x80地址的秒寄存器的第7位(CH)需要置0,震蕩器才能起振.

*/

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91在线精品秘密一区二区| 一区二区三区精品视频| 日本欧美在线观看| 91电影在线观看| 亚洲欧洲精品一区二区三区| 国产成人亚洲综合a∨婷婷| 欧美电影在哪看比较好| 午夜影院久久久| 欧美三级日韩在线| 丝袜诱惑制服诱惑色一区在线观看| 在线一区二区观看| 亚洲尤物视频在线| 欧美精品亚洲一区二区在线播放| 亚洲成人福利片| 欧美日韩成人激情| 日本午夜精品一区二区三区电影 | 日韩av网站在线观看| 欧美午夜精品免费| 无码av免费一区二区三区试看| 欧美视频在线观看一区二区| 中文字幕欧美一| 99riav一区二区三区| 亚洲激情一二三区| 欧洲精品一区二区三区在线观看| 一区二区三区免费看视频| 粉嫩aⅴ一区二区三区四区五区| 日韩一区二区电影| 国产毛片精品视频| 国产精品久久久久永久免费观看| 99视频国产精品| 一区二区三区欧美久久| 91精品欧美一区二区三区综合在| 秋霞午夜av一区二区三区| 久久久三级国产网站| 成人三级伦理片| 亚洲综合图片区| 日韩女优制服丝袜电影| 国产成人免费视频| 中文字幕制服丝袜一区二区三区 | 26uuu亚洲综合色欧美| 成人网男人的天堂| 亚洲第一av色| 欧美一级在线观看| av中文一区二区三区| 亚洲大片精品永久免费| 3d成人h动漫网站入口| 国产寡妇亲子伦一区二区| 一区二区三区四区不卡视频| 欧美一区二区三区人| 成人蜜臀av电影| 亚洲一区二区三区四区中文字幕| 日韩欧美在线影院| 91尤物视频在线观看| 日韩av不卡一区二区| 久久亚洲精精品中文字幕早川悠里 | 欧洲视频一区二区| 麻豆成人久久精品二区三区红| 亚洲国产成人私人影院tom| 欧美视频第二页| 国产二区国产一区在线观看| 亚洲午夜av在线| 中文字幕成人在线观看| 欧美一区二区三区在线视频| 国产精品一区二区黑丝| 亚洲二区在线视频| 国产人伦精品一区二区| 欧美日本不卡视频| 成人av网站在线观看| 视频一区视频二区中文| 亚洲视频资源在线| 精品国产乱码久久| 欧美精品一二三四| 色系网站成人免费| 国产盗摄精品一区二区三区在线| 日韩福利视频导航| 一区二区三区在线视频免费 | 亚洲一区在线看| 国产精品第四页| 日韩视频不卡中文| 在线成人免费观看| 91丨porny丨户外露出| 国产精品一二三四| 久久国产精品免费| 日韩av一二三| 日韩专区中文字幕一区二区| 亚洲国产精品久久久久秋霞影院| 国产精品久久久一区麻豆最新章节| 精品国产免费一区二区三区四区 | 婷婷国产v国产偷v亚洲高清| 亚洲欧美二区三区| 国产精品系列在线| 久久精品视频免费| 精品第一国产综合精品aⅴ| 欧美老年两性高潮| 欧美性生活影院| 在线亚洲欧美专区二区| 91行情网站电视在线观看高清版| 成人美女视频在线看| 久久国产精品色| 韩日av一区二区| 国产呦精品一区二区三区网站| 久久成人18免费观看| 高清不卡在线观看av| 国产精品亚洲综合一区在线观看| 美腿丝袜亚洲色图| 日韩欧美一区二区视频| 精品国精品国产| 国产欧美日韩在线| 亚洲一卡二卡三卡四卡无卡久久| 日本伊人色综合网| 成人av动漫网站| 欧美在线你懂的| 精品乱人伦一区二区三区| 国产日韩欧美精品电影三级在线| 亚洲三级电影网站| 亚洲不卡av一区二区三区| 蜜臀91精品一区二区三区| 成人一区二区三区中文字幕| 欧美日韩一区二区三区视频| 久久午夜色播影院免费高清| 一区二区三区四区在线免费观看| 九九九精品视频| 色视频成人在线观看免| 精品久久久久久无| 亚洲精品免费看| 经典三级视频一区| 在线视频欧美区| 国产欧美一区二区三区在线老狼| 香蕉久久一区二区不卡无毒影院| 国产成人亚洲综合a∨猫咪| 欧美精品第一页| 亚洲天堂2016| 国产精品亚洲一区二区三区在线| 欧美日韩视频在线第一区| 国产精品无遮挡| 久久精品国产网站| 欧美三区在线观看| 亚洲色图.com| 国产麻豆91精品| 日韩欧美在线123| 亚洲一区二区在线免费观看视频| 国产成人av电影在线| 日韩一卡二卡三卡国产欧美| 亚洲一区二区视频| av男人天堂一区| 国产亚洲一区二区三区在线观看 | 91视频xxxx| 国产欧美日韩视频一区二区| 另类小说欧美激情| 在线播放欧美女士性生活| 亚洲免费视频成人| 国产经典欧美精品| 久久美女艺术照精彩视频福利播放| 天天色 色综合| 欧美日韩一级视频| 一区二区三区电影在线播| 91网站在线播放| 国产亚洲一区二区三区在线观看| 精品一区二区三区在线播放| 777久久久精品| 三级成人在线视频| 欧美日韩不卡在线| 香蕉影视欧美成人| 777午夜精品视频在线播放| 天天综合天天做天天综合| 欧美日韩国产首页| 国内精品久久久久影院一蜜桃| 日韩美女视频一区二区在线观看| 日韩国产精品久久久久久亚洲| 欧美日本一区二区在线观看| 亚洲成人精品一区二区| 欧美吻胸吃奶大尺度电影 | 国产精品91一区二区| 久久久久久久网| 国内精品伊人久久久久av影院| 精品成人免费观看| 国产一区二区精品在线观看| 欧美激情中文字幕| 色综合久久综合网欧美综合网| 亚洲精品视频在线| 日本高清成人免费播放| 亚洲精品欧美在线| 欧美日韩国产一级| 美女视频黄久久| 久久久综合精品| 成人高清免费观看| 亚洲免费av高清| 7777女厕盗摄久久久| 麻豆精品一区二区av白丝在线| 精品久久久久久最新网址| 丁香六月综合激情| 亚洲欧美日韩国产成人精品影院 | 欧美伦理影视网| 麻豆91在线播放| 国产亚洲精品bt天堂精选| 99精品国产视频| 亚洲一区二区视频| 欧美tickle裸体挠脚心vk| 国产精品资源站在线| 中文字幕一区二区三区四区不卡|