#include "iostm8l152c6.h"
#include "LCD.H"
#include "add.h"
#define KEYPRESSED !PC_IDR_bit.IDR1
long int data[6];
enum category { MINUTE,
HOUR };
category choice = MINUTE;
void delay( void )
{
for ( long int i = 0; i < 200000; i++ )
;
return;
}
#pragma vector=EXTI1_vector
__interrupt void Pin1_interrupt(void)
{
delay(); //餿靦-餿靦 頡溜誅粳
if ( !KEYPRESSED ) //綁鞅 蜜複蝕 褕餓羲慣�, 熱羲曉慟 篦蝕獎�
{
PC_ODR_bit.ODR7 = 1; //頑詢� 縊璃�...
PE_ODR_bit.ODR7 = 1; //...� 飼趕磋� 篛綏蝠慘煬
delay(); //頡溜誅粳
PC_ODR_bit.ODR7 = 0; //頡雕羸�...
PE_ODR_bit.ODR7 = 0; //...篛綏蝠慘煬
RTC_WPR = 0xCA; //縞慟粳 頑孃雕
RTC_WPR = 0x53;
RTC_ISR1_bit.INIT = 1; // 集褒溘� � 擇詬� 熱羲曉疑�
while ( RTC_ISR1_bit.INITF == 0 ); //頡溜誅粳, 頡蒙 熱� 擋鼓義痞 隆瞄�
RTC_TR1 = CodNum( 0 ); //頑震羅� � 篦蝕獎� 0
RTC_ISR1_bit.INIT = 0; //順瑤粳 愿 擇詬影 熱羲曉疑�
RTC_WPR = 0x00; //閔窟粳 萄蝌截蝴蝕
EXTI_SR1_bit.P1F = 1; //篤曉� 縱琶� 頜綑權痢��, 餾螂� 閑曆檔靈� � 蜻�
return; // 蝌衝闐鋼鼻瘟 順瑤粳 愿 頜綑權痢�� PC_DDR_bit.DDR7 = 1;
PC_CR1_bit.C17 = 1;
PE_DDR_bit.DDR7 = 1;
PE_CR1_bit.C17 = 1;
}
if ( choice == MINUTE ) // 熱羲擋弊琯� 憂皚靜
{
long int i = 0;
PC_ODR_bit.ODR7 = 1; // 飼雒磋� 篛綏
while ( KEYPRESSED ) //頡蒙 熱詼錶 蜜複蒙
{
LCD_Write_Int( &i, -1 ); //震羅� 陲粳�
delay(); //誅粳
i++; //慚蜥粳粵摘截擘� 膳綏鞣�
LCD_Write_Int( &i, -1 );//震羅� 陲粳�
if ( i == 60 ) i = 0; // 綁鞅 溜藝� 溜 60 - 篤曉� � 熱闐餃
}
PC_ODR_bit.ODR7 = 0; //頡嫁縊� 篛綏蝠慘�
//頑震羅� 頑瞇粵徹 憂皚� � 縝褕閑隨錳毚孃� 擇媲羲�
RTC_WPR = 0xCA;
RTC_WPR = 0x53;
RTC_ISR1_bit.INIT = 1;
while ( RTC_ISR1_bit.INITF == 0 );
RTC_TR2 = CodNum( i - 1 );
RTC_ISR1_bit.INIT = 0;
RTC_WPR = 0x00;
choice = HOUR; // � 縛窟毚孃� 擋� 蛭滇� 熱羲擋弊痞� 闐興
EXTI_SR1_bit.P1F = 1;
return;
}
if ( choice == HOUR ) // 痢畫蝶摺瘟 溫� 熱羲曉疑� 闐縝�
{
long int i = 0;
PE_ODR_bit.ODR7 = 1;
while ( KEYPRESSED )
{
LCD_Write_Int( &i, -1 );
delay();
i++;
LCD_Write_Int( &i, -1 );
if ( i == 24 ) i = 0; // 鋼閱橡 閑曆粳�� � 0 頜� 溜羲慇粵態 鳩皓粵�� 24
}
PE_ODR_bit.ODR7 = 0;
RTC_WPR = 0xCA;
RTC_WPR = 0x53;
RTC_ISR1_bit.INIT = 1;
while ( RTC_ISR1_bit.INITF == 0 );
RTC_TR3 = CodNum( i - 1 );
RTC_ISR1_bit.INIT = 0;
RTC_WPR = 0x00;
choice = MINUTE; //� � 縛窟毚孃� 擋� 蛭滇� 熱羲擋弊痞� 憂皚靜
EXTI_SR1_bit.P1F = 1;
return;
}
}
long int num_t;
int main()
{
CLK_CKDIVR = 0; //褕蓊�琯� 褓瘟隅蝗 頜窟滇鞅鋼鼻
CLK_PCKENR2_bit.PCKEN22 = 1; //錶蜘 闐縝�
CLK_CRTCR_bit.RTCSEL3 = 1; //順虛痢 闐縝隆� 蒲痙�
LCD_Init(); //頑餓嚼� 溘縉雒�
LCD_Contrast( 7 ); //蜻瘢擋羲瘟羲� 溘縉雒� 熱 影蜴慟擭
//熱羲曉慟 震磋 � 縊璃憂 飼雒磋� 篛綏蝠慘滓憂 熱 順錨�
PC_DDR_bit.DDR7 = 1;
PC_CR1_bit.C17 = 1;
PE_DDR_bit.DDR7 = 1;
PE_CR1_bit.C17 = 1;
//熱羲曉慟 頜綑權痢��
PC_DDR_bit.DDR1 = 0; //震� � 蜜蝴蜻� 熱 集蝠
PC_CR1_bit.C11 = 1; //� 擇詬慮 push-pull
PC_CR2_bit.C21 = 1; //擋鼓義粵� 頜綑權琢璃�
EXTI_CR1_bit.P1IS = 2; //頜綑權痢�� 頡 縉琴�
asm( "RIM" ); //幌螂畫贛蝦 擋鼓義粵� 頜綑權痢慷
while(true)
{
while ( !RTC_ISR1_bit.RSF ); // 蝸彰琯� 頑彙擰蝕 滓瘩贖
//鞣錶粳 隄� 擇媲羲橢
data[0] = GetNum( RTC_TR1 );
data[1] = GetNum( RTC_TR2 );
data[2] = GetNum( RTC_TR3 );
data[3] = GetNum( RTC_DR1 );
data[4] = GetNum( RTC_DR2 );
data[5] = GetNum( RTC_DR3 );
num_t = data[2]*10000 + data[1]*100 + data[0]; // 縝菊擋粳 羲曉鞭� 陲粳粵�
LCD_Write_Int( &num_t, -1 ); // 震羅� 窠 熱 �擋�
LCD_RAM7 = 0x88; // 羲琵慟 擋頌粱摘粱贛灘 滂蝦錙鞣�
}
return 0;
}
stm8l RTC.zip_RTC_RTC STM8L_STM8L _stm8l rtc_stm8l rtc
版权申诉
118 浏览量
2022-09-23
04:12:57
上传
评论
收藏 3.95MB ZIP 举报
御道御小黑
- 粉丝: 61
- 资源: 1万+
最新资源
- Pytorch-pytorch深度学习教程之深度残差网络.zip
- Pytorch-pytorch深度学习教程之循环神经网络.zip
- Pytorch-pytorch深度学习教程之逻辑回归.zip
- Pytorch-pytorch深度学习教程之双向循环网络.zip
- Pytorch-pytorch深度学习教程之卷积神经网络.zip
- Pytorch-pytorch深度学习教程之前馈神经网络.zip
- Pytorch-pytorch深度学习教程之线性回归.zip
- Pytorch-pytorch深度学习教程之基本操作.zip
- 基于QT的地图可视化桌面系统后台数据库为MySQL5.7源码.zip
- 基于simulink的PLL锁相环系统仿真【包括模型,文档,参考文献,操作步骤】
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈