找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 578|回复: 2
收起左侧

这个程序哪里错了,为什么ten_us后面有括号,但是还显示错误,明明打了ShowNum却没有

[复制链接]
ID:1070722 发表于 2023-4-9 21:23 | 显示全部楼层 |阅读模式
#include <regx52.h>
#include "time.h"
#include "LCD1602.h"

unsigned int ten_us        ;
void delay_10us(u16 ten_us)
{
        while(ten_us--); //循环递减
}
unsigned char Sec,Min,Hour;
void main()
{
        LCD_Init();
        Timer0_Init();
        LCD_ShowString(1,1,"CLOCK:");
        LCD_ShowString(2,1,"  :  :  ");

        while(1);
        {
                 LCD_ShowNum(2,1,Hour,2);
                LCD_ShowNum(2,4,Min,2 );
                LCD_ShowNum(2,7,Sec,2);
        }
}
                                 
typedef unsigned int u16;                        
void Timer0_Routine() interrupt 1
{
        static u16 T0Count;
        TL0 = 0x18;                                //设置定时初始值
        TH0 = 0xFc;
        T0Count++;
        if(T0Count>=1000)
        {
                T0Count=0;
                Sec++;
                if(Sec>=60)
                {
                        Sec=0;
                        Min++;
                        if(Min>=60)
                        {
                                Min=0;
                                Hour++;
                        
                                if(Hour>=24)
                                {
                                        Hour=0;
                                }
                        }
                }
        
        
        }
}

回复

使用道具 举报

ID:883242 发表于 2023-4-9 21:27 | 显示全部楼层
typedef unsigned int u16; 放最前面。
回复

使用道具 举报

ID:180919 发表于 2023-4-10 00:51 | 显示全部楼层
#include <regx52.h>
#include "time.h"
#include "LCD1602.h"
typedef unsigned uint u16;
unsigned int ten_us        ;
void delay_10us(u16 ten_us)
{
        while(ten_us--); //循环递减
}
unsigned char Sec,Min,Hour;
void main()
{
        LCD_Init();
        Timer0_Init();
        LCD_ShowString(1,1,"CLOCK:");
        LCD_ShowString(2,1,"  :  :  ");

        while(1);
        {
                 LCD_ShowNum(2,1,Hour,2);
                LCD_ShowNum(2,4,Min,2 );
                LCD_ShowNum(2,7,Sec,2);
        }
}
                                 
                        
void Timer0_Routine() interrupt 1
{
        static u16 T0Count;
        TL0 = 0x18;                                //设置定时初始值
        TH0 = 0xFc;
        T0Count++;
        if(T0Count>=1000)
        {
                T0Count=0;
                Sec++;
                if(Sec>=60)
                {
                        Sec=0;
                        Min++;
                        if(Min>=60)
                        {
                                Min=0;
                                Hour++;
                        
                                if(Hour>=24)
                                {
                                        Hour=0;
                                }
                        }
                }
        
        
        }
}
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表