/******************************************************************************************************************
程序功能:DS1302时钟实验
开发环境:WINAVR/GCC20100110
硬件环境:eeskill多功能开发学习板/实验箱(2017版):ATMEGA16,12M晶振
接线说明:使用杜邦线连接核心板PA0~PA2口与底板JP26
具体接法,PA2-STCP,PA1-SHCP,PA0-DS
使用杜邦线连接核心板PA3~PA5口与底板JP45
具体接法,PA3-SCLK,PA4-IO,PA5-RST。
跳线说明:J70
实验现象:8位数码管显示时钟,初始时间为:03时46分55秒,
数码管显示为03 46 55,然后开始走时。
技术网站:http://www.eeskill.com
淘宝店铺:http://cepark.taobao.com
*******************************************************************************************************************/
#include //io端口寄存器配置文件,必须包含
#include
#include
#include "smg8-avr.h"
#include "ds1302-avr.h"
unsigned char ucInitTime[7]={0x55,0x46,0x03,0x23,0x03,0x04,0x13}; //初始化后设置为:13年03月23日星期4 03点46分55秒
int main(void)
{
//在这里添加代码开始程序编写
SMG8_PortInit();
DS1302_PortInit();
DS1302_WriteOneByteAtAddr(0x8e,0x80); /* 控制命令,WP=0,写操作*/
DS1302_SetInit(ucInitTime);
DS1302_WriteOneByteAtAddr(0x8e,0x00); /* 控制命令,WP=0,写操作*/
while(1)
{
SMG8_DisplayOneCharOnAddr(DS1302_ReadOneByteAtAddr(ADDR_HOUR_R)/16,0);
SMG8_DisplayOneCharOnAddr(DS1302_ReadOneByteAtAddr(ADDR_HOUR_R)%16,1);
//SMG8_DisplayOneCharOnAddr(16,2);
SMG8_DisplayOneCharOnAddr(DS1302_ReadOneByteAtAddr(ADDR_MIN_R)/16,3);
SMG8_DisplayOneCharOnAddr(DS1302_ReadOneByteAtAddr(ADDR_MIN_R)%16,4);
//SMG8_DisplayOneCharOnAddr(16,5);
SMG8_DisplayOneCharOnAddr(DS1302_ReadOneByteAtAddr(ADDR_SEC_R)/16,6);
SMG8_DisplayOneCharOnAddr(DS1302_ReadOneByteAtAddr(ADDR_SEC_R)%16,7);
}
}
关键字:AVR 多功能实验箱 DS1302时钟『本文转载自网络,版权归原作者所有,如有侵权请联系删除』