下载此文档

STM32实时钟设计.docx


文档分类:通信/电子 | 页数:约18页 举报非法文档有奖
1/18
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/18 下载此文档
文档列表 文档介绍
STM32实时钟设计  实现功能:1、定时器用于实时钟的月日、时分和秒计时;2、2个按键用于实时钟的显示切换和设置;3、LCD用于实时钟的月日、时分和秒显示;4、通过UART接口在微机上显示和设置实时钟。按键要求:程序如下: #include""#include""//#include""#include""#include""//#defineNVIC_SETENA1(*(volatileunsignedlong*)(0xe000e104))intRx=0;intreceive=0;u8temp;inttime[6];intled=0x200;intlcddata[5][2]={0};intrunnian=1,flag=2,dian=0,flag2=1,timer=0;charrtc[30];charno=0;charlcd_code[16]=  //编码  {                  0xeb,//0   0x0a,//1   0xad,//2   0x8f,//3   0x4e,//4   0xc7,//5   0xe7,//6   0x8a,//7   0xef,//8   0xcf,//9   0x7e,//A   0x37,//B   0x71,//C   0x1f,//D   0x75,//E   0x74//F  };//privatefunctionvoidLCD_Write(intdata,intbit);voidSystick_Proc(void);voidLcd_Proc(void);voidlcd_display0(void);voidlcd_display1(void);voidlcd_display2(void);voidlcd_display3(void);voidlcd_display4(void);voidlcd_display5(void);voidlcd_display6(void);voidUart_IO_Config(void);voidLCD_IO_Config(void);voidLed_IO_Config(void);voidUart_IO_Config(void);voidButton_IO_Config(void);voidEXTILineConfig(void);voidNVIC_Configuration(void);voidUart_Init(void);voidLCD_Init(void);voidSystick_Init(void);voidLED_Proc(void);voidLcd_Proc(void);voidUart(void);voiduartPuts(u8*s);voidUart_r(void);voidUSART_GetS_Time(void);intmain(void){ //SystemInit(); //Systick_Init(); SystemInit(); SysTick_Config(9000000); LCD_IO_Config(); Led_IO_Config(); Uart_IO_Config(); Button_IO_Config(); EXTILineConfig(); NVIC_Configuration(); Uart_Init(); LCD_Init(); while(1) { Systick_Proc(); Lcd_Proc(); Uart_r(); }}voidSystick_Proc(void){  if(NVIC_STCSR&0x10000)  {  dian^=1;    if((++time[0])>=60){time[0]=0;if((++time[1])>=60){time[1]=0;if((++time[2])>=24)time[2]=0;switch(time[4]){case1:case3:case5:case7:case8:case10:case12:if(++time[3]>=32){if(++time[4]>=13)time[4]=1;}break;case2:if(runnian){if(++time[3]>=30){if(++time[4]>=13)time[4]=0;}}else{if(++time[3]>=29){if(++time[4]>=13)time[4]=0;}}break;case4:case6:case9:case11:if(++time[3]>=31){if(++time[4]>=13)time[4]=0;}break;default:break;//time[4]

STM32实时钟设计 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数18
  • 收藏数0 收藏
  • 顶次数0
  • 上传人ranfand
  • 文件大小248 KB
  • 时间2019-06-29