日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]由于硬件出了問(wèn)題,也就是外部低速晶振沒(méi)用,震不起來(lái),然后查看了網(wǎng)上的帖子,STM32的RTC果然口碑不怎么樣,所以果斷換DS1302,在移植的過(guò)程中還算順利,記錄下來(lái)吧,也算對(duì)自己的總結(jié)吧!1、所謂的DS1302這里面也指

由于硬件出了問(wèn)題,也就是外部低速晶振沒(méi)用,震不起來(lái),然后查看了網(wǎng)上的帖子,STM32的RTC果然口碑不怎么樣,所以果斷換DS1302,在移植的過(guò)程中還算順利,記錄下來(lái)吧,也算對(duì)自己的總結(jié)吧!

1、所謂的DS1302


這里面也指明了簡(jiǎn)單的SPI協(xié)議

然后就直接上代碼了,注釋很詳細(xì)的!基本實(shí)現(xiàn)單行注釋

1、主函數(shù)main


#include"stm32f10x.h"

#include"SysTick.h"

#include"Delay.h"

#include"Usart.h"

#include"stdio.h"

#include"DS1302.h"

/*******由于沒(méi)有做外設(shè)測(cè)試的程序是:按鍵PA0僅一個(gè)LED燈******/

/*******由于沒(méi)有做外設(shè)測(cè)試的程序是:串口采用的是PA9->(T<->T),PA9->(R<->R)*****/

/*******由于沒(méi)有做外設(shè)測(cè)試的程序是:ds1302clk<->PA4

ds1302dat<->PA5

ds1302rst<->PA6*****/

externuint8_twrite[];

externuint8_tread[];

intmain(void)

{

//uint8_ttime[]={0,0,12,11,11,1,13};

//初始化系統(tǒng)定時(shí)器

SysTick_Init();

USART1_Config();

ds1302_GPIO_Configuration();//一定別忘記了配置GPIO

printf("rn("__DATE__"-"__TIME__")rn");

//ds1302_init(write,time);//設(shè)置1302的初始時(shí)間

ds1302_data(read);

while(1);//這個(gè)得加,不然的話會(huì)有尾巴是亂碼?。?!

}



/*******************************************************************************

**文件名稱:ds1302.c

**編譯環(huán)境:RealViewMDK-ARM4.53

**文件作者:

**功能說(shuō)明:ds1302相關(guān)函數(shù)定義

**軟件協(xié)議:模擬SPI協(xié)議

**簡(jiǎn)介:clk上升沿發(fā)送數(shù)據(jù),clk下降沿接收數(shù)據(jù)

:typedefunsignedcharuint8_t;

**

**

**

*******************************************************************************/

/*包含頭文件*****************************************************************/

#include"ds1302.h"

#include"stdio.h"

#include"Delay.h"

uint8_tread[]={0x81,0x83,0x85,0x87,0x89,0x8b,0x8d};//讀秒、分、時(shí)、日、月、周、年的寄存器地址

uint8_twrite[]={0x80,0x82,0x84,0x86,0x88,0x8a,0x8c};//寫(xiě)秒、分、時(shí)、日、月、周、年的寄存器地址

/*PA4、PA6為輸出*/

/*PA5配置為開(kāi)漏模式,此模式下能夠?qū)崿F(xiàn)真正的雙向IO口*/

voidds1302_GPIO_Configuration(void)

{

GPIO_InitTypeDefGPIO_InitStruct;

GPIO_InitStruct.GPIO_Mode=GPIO_Mode_Out_PP;

GPIO_InitStruct.GPIO_Pin=ds1302clk|ds1302rst;//clk、rst配置為輸出

GPIO_InitStruct.GPIO_Speed=GPIO_Speed_50MHz;

GPIO_Init(GPIOA,&GPIO_InitStruct);

GPIO_InitStruct.GPIO_Mode=GPIO_Mode_Out_OD;//IO配置為雙向

GPIO_InitStruct.GPIO_Pin=ds1302dat;

GPIO_Init(GPIOA,&GPIO_InitStruct);

}

voidwrite_1302byte(uint8_tdat)//寫(xiě)一個(gè)字節(jié)的數(shù)據(jù)sck上升沿寫(xiě)數(shù)據(jù)

{

uint8_ti=0;

GPIO_ResetBits(GPIOA,ds1302clk);//ds1302clk=0

Delay_us(2);//延時(shí)大約2us

for(i=0;i<8;i++)

{

GPIO_ResetBits(GPIOA,ds1302clk);//ds1302clk=0;

if(dat&0x01)

GPIO_SetBits(GPIOA,ds1302dat);

else //ds1302dat=(dat&0x01)

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

51單片機(jī)學(xué)習(xí)筆記———13.1DS1302實(shí)時(shí)時(shí)鐘原理部分

關(guān)鍵字: ds1302 時(shí)鐘

由于昨天照著手冊(cè)寫(xiě)了一下DS1302的驅(qū)動(dòng)程序,發(fā)現(xiàn)耗時(shí)挺多的,并且在考場(chǎng)上不可能一步步去自己寫(xiě)驅(qū)動(dòng),所以今天看了一下藍(lán)橋杯提供的DS1302官方驅(qū)動(dòng)程序,發(fā)現(xiàn)直接引用還是不行的,程序當(dāng)中有些小問(wèn)題需要去修改。下面就對(duì)那...

關(guān)鍵字: ds1302 時(shí)鐘

DS1302時(shí)鐘模塊通信原理(SPI總線)

關(guān)鍵字: ds1302 時(shí)鐘

現(xiàn)在流行的串行時(shí)鐘電路很多,如DS1302、 DS1307、PCF8485等。這些電路的接口簡(jiǎn)單、價(jià)格低廉、使用方便,被廣泛地采用

關(guān)鍵字: ds1307 ds1302

stm32f103zet6是一種嵌入式-微控制器的集成電路(IC),是由ST公司開(kāi)發(fā)的STM32F1系列的其中一種,芯體尺寸是32位,速度是72MHz,程序存儲(chǔ)器容量是256KB,程序存儲(chǔ)器類(lèi)型是FLASH,RAM容量是...

關(guān)鍵字: stm32f103zet6 datasheet 引腳圖

現(xiàn)在流行的串行時(shí)鐘電路很多,如DS1302、 DS1307、PCF8485等。這些電路的接口簡(jiǎn)單、價(jià)格低廉、使用方便,被廣泛地采用。它可以對(duì)年、月、日、周、時(shí)、分、秒進(jìn)行計(jì)時(shí),且具有閏年補(bǔ)償?shù)榷喾N功能。

關(guān)鍵字: ds1302 時(shí)鐘芯片 電路

DS1302 我們前邊也有提起過(guò),是三根線,分別是 CE、I/O 和 SCLK,其中 CE 是使能線,SCLK 是時(shí)鐘線,I/O 是數(shù)據(jù)線。前邊我們介紹過(guò)了 SPI 通信,同學(xué)們發(fā)現(xiàn)沒(méi)發(fā)現(xiàn),這個(gè) DS1302 的通信線定...

關(guān)鍵字: ds1302 通信時(shí)序

有時(shí)候,我們需要保存少量數(shù)據(jù),但是用外擴(kuò)的ROM又覺(jué)得不方便,這時(shí)候自然就想到了芯片內(nèi)部是否自帶flash(閃存),據(jù)我了解,stm32內(nèi)部的應(yīng)該是nor flash,因?yàn)槿绻莕and flash的話,肯定速度是跟不上...

關(guān)鍵字: Flash nor stm32f103zet6

定時(shí)器TIM3產(chǎn)生四路PWM波輸出。首先介紹一下PWM吧,算是給自己充電,脈沖寬度調(diào)制(PWM),是英文“Pulse Width Modulation ”的縮寫(xiě),簡(jiǎn)稱脈寬調(diào)制,是利用微處理器的數(shù)字輸出來(lái)對(duì)模擬電路進(jìn)行控制...

關(guān)鍵字: pwm stm32f103zet6 定時(shí)器

//引入文件***********************************************************#include "delay.h" #include "...

關(guān)鍵字: ds1302 pic16f84a 讀取時(shí)鐘芯片
關(guān)閉