亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码
標題:
DS3231時鐘串口打印STM32程序源碼
[打印本頁]
作者:
sangxin
時間:
2018-3-28 12:55
標題:
DS3231時鐘串口打印STM32程序源碼
DS3231時鐘串口 STM32單片機源程序如下:
#include "led.h"
#include "delay.h"
#include "sys.h"
#include "usart.h"
#include "DS3231.h"
//使用的時鐘模塊為DS3221, 采用模擬IIC驅動
//時鐘模塊引腳接線 SCL-> PB10
// SDA-> PB11
//32K和SQW引腳懸空,什么都不接。
int main(void)
{
u8 t=0;
delay_init(); //延時函數初始化
NVIC_Configuration();// 設置中斷優先級分組
uart_init(9600); //串口初始化為9600
LED_Init(); //初始化與LED連接的硬件接口
DS3231_Init();
// DS3231_Set(16,11,27,21,03,30); 首次設置時間,設置完成后注釋掉,重新下載一次程序即可掉電保存
//年,月,日,時,分,秒
while(1)
{
get_show_time();
if(t!=calendar.sec)
{
t=calendar.sec;
printf("年月日:");
printf("%ld,%d,%d\r\n",calendar.w_year+2000,calendar.w_month,calendar.w_date);
printf("時分秒:");
printf("%d,%d,%d\r\n",calendar.hour,calendar.min,calendar.sec);
LED0=!LED0;
}
}
}
復制代碼
#include "DS3231.h"
#include "myiic.h"
#include "delay.h"
#include "sys.h"
_calendar_obj calendar;
#define DS3231_WriteAddress 0xD0
#define DS3231_ReadAddress 0xD1
u8 BCD2HEX(u8 val)
{
u8 i;
i= val&0x0f;
val >>= 4;
val &= 0x0f;
val *= 10;
i += val;
return i;
}
u16 B_BCD(u8 val)
{
u8 i,j,k;
i=val/10;
j=val%10;
k=j+(i<<4);
return k;
}
void I2cByteWrite(u8 addr,u8 bytedata)
{
IIC_Start();
delay_us(5);
IIC_Send_Byte(DS3231_WriteAddress);
IIC_Wait_Ack();
delay_us(5);
IIC_Send_Byte(addr);
IIC_Wait_Ack();
delay_us(5);
IIC_Send_Byte(bytedata);
IIC_Wait_Ack();
delay_us(5);
IIC_Stop();
}
u8 I2cByteRead(u8 addr)
{
u8 Dat=0;
IIC_Start();
IIC_Send_Byte(DS3231_WriteAddress);
IIC_Wait_Ack();
delay_us(5);
IIC_Send_Byte(addr);
IIC_Wait_Ack();
delay_us(5);
IIC_Start();
IIC_Send_Byte(DS3231_ReadAddress);
IIC_Wait_Ack();
delay_us(5);
Dat=IIC_Read_Byte(1);
IIC_Stop();
return Dat;
}
void DS3231_Init(void)
{
IIC_Init();
I2cByteWrite(0x0e,0);
delay_ms(2);
I2cByteWrite(0x0f,0x0);
delay_ms(2);
}
void DS3231_Get(void)
{
calendar.w_year=I2cByteRead(0x06);
calendar.w_month=I2cByteRead(0x05);
calendar.w_date=I2cByteRead(0x04);
calendar.hour=I2cByteRead(0x02);
calendar.min=I2cByteRead(0x01);
calendar.sec=I2cByteRead(0x00);
}
void DS3231_Set(u8 yea,u8 mon,u8 da,u8 hou,u8 min,u8 sec)
{
u8 temp=0;
temp=B_BCD(yea);
I2cByteWrite(0x06,temp);
temp=B_BCD(mon);
I2cByteWrite(0x05,temp);
temp=B_BCD(da);
I2cByteWrite(0x04,temp);
temp=B_BCD(hou);
I2cByteWrite(0x02,temp);
temp=B_BCD(min);
I2cByteWrite(0x01,temp);
temp=B_BCD(sec);
I2cByteWrite(0x00,temp);
}
void get_show_time(void)
{
calendar.w_year=I2cByteRead(0x06);
calendar.w_year=BCD2HEX(calendar.w_year);
calendar.w_month=I2cByteRead(0x05);
calendar.w_month=BCD2HEX(calendar.w_month);
calendar.w_date=I2cByteRead(0x04);
calendar.w_date=BCD2HEX(calendar.w_date);
calendar.hour=I2cByteRead(0x02);
calendar.hour&=0x3f;
calendar.hour=BCD2HEX(calendar.hour);
calendar.min=I2cByteRead(0x01);
calendar.min=BCD2HEX(calendar.min);
calendar.sec=I2cByteRead(0x00);
calendar.sec=BCD2HEX(calendar.sec);
}
復制代碼
所有資料51hei提供下載:
DS3231時鐘串口打印.rar
(293.73 KB, 下載次數: 281)
2018-3-28 17:17 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
作者:
kabala56
時間:
2018-5-15 10:38
非常感謝,一直沒調通,試試這個。
作者:
zb12138
時間:
2018-7-10 01:04
好用,感謝
作者:
cooleaf
時間:
2018-12-26 16:26
非常感謝,試試這個。
作者:
cooleaf
時間:
2018-12-26 16:27
非常感謝,試試這個。
作者:
Lxuezhangya
時間:
2019-1-18 09:55
感謝樓主……
作者:
baibaoyu
時間:
2019-4-4 10:24
DS3231時鐘帶鬧鐘程序
作者:
Damaoagou
時間:
2019-11-4 20:08
感謝樓主
作者:
仰望星臣
時間:
2020-4-6 00:41
感謝樓主
作者:
unibugs
時間:
2020-4-26 23:26
謝謝分享謝謝分享哦
作者:
曾現路
時間:
2021-5-23 20:48
找了好久才找到這個,下載試試,感謝樓主
作者:
yuazhang
時間:
2021-8-3 15:31
是模擬I2
作者:
yuazhang
時間:
2021-8-3 15:32
是模擬I2C接口,沒有使用stm32的i2c接口,比較遺憾。
作者:
jiangge156
時間:
2023-7-11 16:41
非常感謝,試試這個。
歡迎光臨 (http://www.denmoz.com/bbs/)
Powered by Discuz! X3.1