产品概述

单片机旋转时钟 单片机好创意:LED灯旋转时钟

小编 2024-10-09 产品概述 23 0

单片机好创意:LED灯旋转时钟

时钟是人们生活中非常常见的物品,可以说是每天使用频率最高的物品之一。自从它被发明的那天起,就成为了人类的好朋友,随着科技的进步。人们从使用沙漏、水桶刻度开始粗略计时,到后面的机械发条时钟,再到先如今我们生活中随处可见的电子时钟。时钟的精度不断在提高,计时的成本不断减低。几乎是个消费电子产品,设计者都想给它加上个时钟功能。

LED旋转时钟

每个单片机爱好的心里都有一个时钟情结,搞起单片机都想着做一个时钟。这是因为时钟与单片机的工作节拍有关,学习单片机一般需要学会单片机的定时器。我们可以通过单片机的定时器定义出时钟需要的节拍,比如1毫秒。累计后就可以得到秒、分、时、日、月、年。所有做一个时钟对单片机爱好者来说不是什么难事。把摇摇棒的利用人眼滞留效应和时钟结合起来,大神门就发明了LED旋转时钟。

LED旋转效果

旋转LED的原理并不复杂,它是利用安装在高速旋转电机上的一条LED灯线旋转形成一个圆形的LED灯面。LED灯条在旋转到不同的角度时不同的LED亮灭,与前后时刻的LED状态形成图案显示在圆面上。一个圆面就是一个圆形的显示屏,旋转的LED灯就是圆形显示屏的像素点。在单片机上载入不同的图案,就能够显示不同的图案了。

LED旋转时钟原理图

可能大家会奇怪,LED灯条在高速地旋转,那么LED灯是怎么供电的呢?肯定不能像正常那样直接通过两根线给LED条供电,否则就旋转不起来了。能工巧匠参考了电机的电刷设计的下图的供电电刷,巧妙地解决了旋转过程中供电的问题。外部电刷作为LED灯条供电的正极,电机的转轴作为供电的负极。

LED旋转时钟供电电刷

控制方面选用了89C52单片机,出于降低旋转惯量的考虑,采用的是贴片是的芯片。时钟芯片选用DS1302经典时钟芯片,具有接口少,操作简单的特点。为了实现更酷的功能,加入了遥控功能,实现通过电脑上位机或者遥控器更改显示内容。为了使得转速控制更加均匀,在基板上增加控制系统控制电机的转速。通过黏贴在LED灯条上的霍尔传感器反馈电机的转速。

系统框图

原理图1

原理图2

动手做一个属于你自己的LED旋转时钟吧,相信自己可以的。

科技改变生活,关注搞搞单片机,增加生活乐趣。这里有单片机教程,有单片机好创意,有共同爱好的单片机达人。赶紧加入我们吧,一起搞搞单片机。

什么是什么单片机时钟?怎么设置

什么时钟?

首先我们先讲讲什么是时钟。时钟就是单片机的心脏。每跳动一下。整个单片机的各个电路就同步的动作一下。就好像我们做广播体操的时候 广播上喊的节拍1234 2234 3234。。。。然后我们全部的同学就按照这个节奏进行一个个动作。节拍越快我们动作越快。节拍越慢我们动作的越慢。

内部时钟和外部时钟?

PIC单片机有许多型号可以设置成 用外部时钟(如外部接个4MHZ的石英晶振),也可以设置成用内部RC时钟。而且还有许多型号可以选择多种频率的时钟。

如 PICLF1823 内部时钟最高可以到达32MHZ 最低可以达到 31kHz. 这事实上提供了一条降低功耗的新路子。一般的单片机降低功耗常常用的睡眠,而睡眠期间CPU是什么都不做。如果希望降低功耗,而且CPU也能工作。降低时钟频率无疑是个非常好的选择。

时钟的设置?

时钟设置一般只和两处有关 一个是配置字,一个是振荡器控制寄存器 OSCCON 下面我们以PICLF1823为例子进行讲解。

PICLF1823 配置字设置 中与时钟有关的就是 FOSC<2:0>:振荡器选择位,和PLLEN:PLL使能位 。

OSCCON 是有关内部时钟频率选择,如果只用外部时钟一般不理会。以下是数据手册中OSCCON寄存器的详细介绍。

实例讲解:

使用内部时钟将时钟频率设置成8MHZ

开发环境:MPLAB X IDE

芯片型号:PICLF1823

#include

__CONFIG(FOSC_INTOSC&WDTE_OFF&PWRTE_ON&MCLRE_OFF&CP_ON&CPD_OFF&BOREN_ON&

CLKOUTEN_OFF&IESO_ON&FCMEN_ON);

__CONFIG(PLLEN_OFF&LVP_OFF) ;//将FOSC<2:0>:振荡器选择位设置成 INTOSC,

void init_fosc(void)

{

OSCCON = 0x70;//8MHZ IRCF<3:0>时钟频率选择位设置成8MHZ

}

int main(int argc, char** argv) {

init_fosc();

while(1);

}

PLL是用来做什么的呢?他的作用就是能将8MHZ的时钟频率X4变成32MHZ,记住只有8MHZ可以,其他频率是不行的。

使用内部时钟将时钟频率设置成32MHZ

开发环境:MPLAB X IDE

芯片型号:PICLF1823

#include

__CONFIG(FOSC_INTOSC&WDTE_OFF&PWRTE_ON&MCLRE_OFF&CP_ON&CPD_OFF&BOREN_ON

&CLKOUTEN_OFF&IESO_ON&FCMEN_ON);//这个要放到上一行去

__CONFIG(PLLEN_ON&LVP_OFF) ;//将FOSC<2:0>:振荡器选择位设置成 INTOSC,使能PLLEN

void init_fosc(void)

{

OSCCON = 0xF0;//32MHZ IRCF<3:0>时钟频率选择位设置成8MHZ ,使能4XPLL

}

int main(int argc, char** argv) {

init_fosc();

while(1);

}

相关问答

单片机 24小时 时钟 ,怎么利用按键实现控制 时钟 时间暂停和回复时间走动呢?

时间一般采用定时器T0或T1,清零TR0、TR1可实现暂停,置位TR0、TR1可恢复时间一般采用定时器T0或T1,清零TR0、TR1可实现暂停,置位TR0、TR1可恢复

单片机时钟 频率调整?

做一个延时程序吧,延时500ms,然后取反,出来的信号就是1HZ的。DELAY_500MS:MOVR5,#10L1:MOVR6,#100L2:MOVR7,#250DJNZR7,$...

51 单片机 时钟 方式为?

一、内部时钟方式:利用单片机内部的振荡器,然后在引脚XTAL1(18脚)和XTAL2(19脚)两端接晶振,就构成了稳定的自激振荡器,其发出的脉冲直接送入内部时钟电...一...

单片机时钟 频率为6MHZ,机器周期为多少是51单片机_作业帮

[最佳回答]■\x09(1)振荡周期:也称时钟周期,是指为单片机提供时钟信号的振荡源的周期,一般实验板上为11.0592MHZ,12MHZ和24MHZ用的也比较多.■\x09(2)状态周期...

单片机 电子 时钟 外设工作原理介绍?

在MCS-51单片机片内有一个高增益的反相放大器,反相放大器的输入端为XTAL1,输出端为XTAL2,由该放大器构成的振荡电路和时钟电路一起构成了单片机的时钟方式。...

单片机 有几个 时钟 引脚?

单片机有2个时钟引脚,一个是外部时钟输入引脚,另一个是内部时钟输出引脚。单片机有2个时钟引脚,一个是外部时钟输入引脚,另一个是内部时钟输出引脚。

单片机时钟 频率设置指令?

1.选择适当的寄存器:在大多数单片机中,时钟频率设置通常涉及到一个名为"时钟控制寄存器"或"时钟配置寄存器"的寄存器。这个寄存器通常有一个位用于选择不同的.....

多功能电脑 时钟 程序设计(C++ 单片机 程序) - yixieren2 的回答...

采用at89c2051兼容芯片制作六位数显多2113路定时电子钟电路特点这里介5261绍的4102电子钟,电路可称得上极简1653,它仅使用单片的20引脚单片机完成电...

求一个51 单片机 定时闹钟程序。要C语言。能够调时间 - 懂得

我来发一个C语言211351单片机时钟程序,希望5261能帮到你/*程序功能:4102带定时闹铃时钟*//*--P0=d...

什么是 单片机 的数字 时钟 信号?

单片机的数字时钟信号是指用于驱动单片机(微控制器)执行各种操作和计算的时钟信号。这些时钟信号通常由外部晶振或内部电路产生,并以固定的频率和周期性脉冲的...

猜你喜欢