数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 193|回复: 6

[C51] 一款很简单的蓝牙校时芯片KT6368A通过手机蓝牙获取RTC时间

[复制链接]
发表于 昨天 09:22 | 显示全部楼层 |阅读模式
本帖最后由 qrk123 于 2026-7-28 09:48 编辑

很久没关注过论坛了,也不知道有没有朋友曾经发过类似的帖子,如果有,请一笑而过,不要喷,如果没有,且又喜欢,可以往下看看。

相信很多朋友跟我一样,玩过GPS校时,WIFI校时,当然,也想过用最方便的手机蓝牙校时,但因为很多朋友都不会制作APP,不得不放弃。前段时间在网络上看到一款蓝牙芯片K6368A时间查询RTC版(记住,RTC版,也叫时间同步版),在某宝上有卖,大约四元一个。它十分的简单,无需APP支持,只要手机蓝牙联上它,它就会调用手机上的时间,发送一组时间给串口。它的格式是“AT+ATYYYYMMDDHHMMSS”只要将蓝牙芯片的TX端连上P30 IO脚上,波特率9600,接收程序就是原来的GPS串口接收程序,稍改动一下就好。

void Uart_Receive(void) interrupt 4
{
        unsigned char ch,num;
        ES = 0;
        
        if (RI)                                        //如果接收完成则进入
        {
                ch = SBUF;
                if (ch == '$')  //如果收到字符'$',便开始接收
                {
                        rev_start = 1;
                        rev_stop  = 0;                  //接收停止标志
                }
        
                if (rev_start == 1)       //标志位为1,开始接收
                {
                        buf[num++] = ch;  //字符存到数组中
                        if (ch == '\n')       //如果接收到换行
                        {
                                buf[num] = '\n';
                                rev_start = 0;
                                rev_stop  = 1;          //接收停止标志
                                num = 0;
                        }
                }
        }
        RI = 0;         //RI清0,重新接收
        ES = 1;         //串口1中断允许
}

是不是十分熟悉呢


if(rev_stop==1)//如果接收到GPRMC
                        {
                                ES=0;
                                hour= (buf [13]-0x30)* 16+ buf[14] -0x30;
                                min=  (buf [15]-0x30)* 16+ buf[16]-0x30;
                                sec=  (buf[17]-0x30)* 16+ buf[18]-0x30;


                               write_byte(DS3231_HOUR,hour);

                               write_byte(DS3231_MINUTE,min);


                               write_byte(DS3231_SECOND,sec);




                                
                                ES=1;
                                rev_stop=0;
                        }


就是BUF[X]中的X要改动一下。每人的时钟硬件不同,自己根据实际情况去修改了








本人亲测有效,希望朋友喜欢。




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

打赏

参与人数 1家元 +30 收起 理由
不长叶子的树 + 30

查看全部打赏

发表于 昨天 11:12 | 显示全部楼层
游客请登录后查看回复内容
回复 支持 反对

使用道具 举报

发表于 昨天 11:16 | 显示全部楼层
游客请登录后查看回复内容
回复 支持 反对

使用道具 举报

发表于 昨天 12:09 | 显示全部楼层
游客请登录后查看回复内容
回复 支持 反对

使用道具 举报

发表于 昨天 12:42 | 显示全部楼层
游客请登录后查看回复内容
回复 支持 反对

使用道具 举报

 楼主| 发表于 昨天 13:58 | 显示全部楼层
游客请登录后查看回复内容
回复 支持 反对

使用道具 举报

发表于 昨天 14:16 | 显示全部楼层
游客请登录后查看回复内容
回复 支持 反对

使用道具 举报

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

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|数码之家-技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2026-7-29 03:46 , Processed in 0.842401 second(s), 11 queries , Gzip On, Redis On.

Powered by Discuz!

© MyDigit.Net Since 2006

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