资源简介
50多个单片机课程设计的代码和电路图,有c程序文件也有HEX文件,方便实用
代码片段和文件信息
#include
#include
#include
#define PI 3.1415926
sbit SDA=P1^0; //DS1302数据线
sbit CLK=P1^1; //DS1302时钟线
sbit RST=P1^2; //DS1302复位线
sbit K1=P3^0; //选择
sbit K2=P3^1; //调整
sbit K3=P3^3; //确定
uchar tCount=0 d_Flag=0;
uchar Current_Time[7]; //所读取的日期时间
char Adjust_Index=-1; //当前调节的时间对象:秒,分,时(012)
extern void cls(); //清屏
extern char LCD_Initialise(); //LCD初始化
extern uchar LCD_Write_Command(uchar cmd); //写无参数的命令
extern uchar LCD_Write_Command_P2(uchar cmduchar para1uchar para2); //写双参数命令
extern uchar LCD_Write_Data(uchar dat); //写数据
extern void Set_LCD_POS(uchar rowuchar col)reentrant; //设置当前地址
extern void Line(uchar x1uchar y1uchar x2uchar y2bit Mode); //画直线函数
extern void Pixel(uchar xuchar yuchar Mode)reentrant; //画点函数
uchar Time_Back[]={-1-1-1};
uchar HMS_Hand_Length[]={242015}; //秒,分,时针的长度
//------------------------------------------------------------------------------------------
//绘制电子钟圆形面板
//------------------------------------------------------------------------------------------
void Clock_Plate()
{
float staxy; //绘制外围图形园圈
for (sta=0;sta<=2*PI;sta+=0.1)
{
x=sin(sta); y=cos(sta);
Pixel(30+30*x30+30*y1);
} // 绘制刻度1~12
for (sta=0;sta<=2*PI;sta+=2*PI/12)
{
x=sin(sta); y=cos(sta);
Pixel(30+27*x30+27*y1);
Pixel(30+26*x30+26*y1);
}
}
//------------------------------------------------------------------------------------------
//重绘HMS中的某一指针(参数012分别为秒,分,时)
//------------------------------------------------------------------------------------------
void Repaint_A_Hand(uchar i)
{
float rm;
uint xy;
m=(i==0 || i==1)?60.0:12.0; //擦除
r=Time_Back[i]/m*2*PI+1.5*PI;
x=HMS_Hand_Length[i]*cos(r);
y=HMS_Hand_Length[i]*sin(r);
Line(3030x+30y+300); //重绘
r=Current_Time[i]/m*2*PI+1.5*PI;
x=HMS_Hand_Length[i]*cos(r);
y=HMS_Hand_Length[i]*sin(r);
Line(3030x+30y+301); //时间备份
Time_Back[i]=Current_Time[i];
}
//-------------------------------------------------------------------------------------------
//时间变化时重绘
//秒针与分针、时针接近重叠,或分针与时针接近重叠时也重绘
//-------------------------------------------------------------------------------------------
void Display_HMS_Hand()
{
Repaint_A_Hand(0); Repaint_A_Hand(1); Repaint_A_Hand(2);
}
//-------------------------------------------------------------------------------------------
//向DS1302写入一字节
//-------------------------------------------------------------------------------------------
void Write_A_Byte_TO_DS1302(uchar x)
{
uchar i;
for(i=0;i<8;i++)
{
SDA = x&1;
CLK = 1;
CLK = 0;
x >>= 1;
}
}
//-------------------------------------------------------------------------------------------
//从DS1302读取一字节
//-------------------------------------------------------------------------------------------
uchar Get_A_Byte_FROM_
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 131 2011-05-19 22:13 第7章 课程设计题目及运行文件\题目1 开关检测器\1.hex
文件 102116 2012-01-30 18:33 第7章 课程设计题目及运行文件\题目1 开关检测器\开关检测器.DSN
文件 2008 2011-12-30 09:43 第7章 课程设计题目及运行文件\题目10 LCD电子钟的制作\10.hex
文件 202900 2012-01-17 19:55 第7章 课程设计题目及运行文件\题目10 LCD电子钟的制作\Last Loaded LCD电子钟.DBK
文件 1178 2009-09-26 22:07 第7章 课程设计题目及运行文件\题目10 LCD电子钟的制作\lcd1602头文件.h
文件 202900 2012-01-17 19:56 第7章 课程设计题目及运行文件\题目10 LCD电子钟的制作\LCD电子钟.DSN
文件 742 2012-01-31 22:43 第7章 课程设计题目及运行文件\题目10 LCD电子钟的制作\LCD电子钟.PWI
文件 1130 2011-05-17 11:42 第7章 课程设计题目及运行文件\题目11 LED数码管秒表\69.hex
文件 90408 2012-01-02 03:02 第7章 课程设计题目及运行文件\题目11 LED数码管秒表\LED显示的秒表.DSN
文件 742 2012-01-30 19:13 第7章 课程设计题目及运行文件\题目11 LED数码管秒表\LED显示的秒表.PWI
文件 11584 2011-05-17 11:43 第7章 课程设计题目及运行文件\题目11 LED数码管秒表\说明文件.plg
文件 1309 2009-09-26 00:26 第7章 课程设计题目及运行文件\题目12 秒计时表\keil-3.hex
文件 162985 2012-01-02 19:20 第7章 课程设计题目及运行文件\题目12 秒计时表\秒计时表.DSN
文件 742 2012-01-30 19:15 第7章 课程设计题目及运行文件\题目12 秒计时表\秒计时表.PWI
文件 3222 2009-09-27 15:42 第7章 课程设计题目及运行文件\题目13 LCD显示的定时闹钟\keil-4.hex
文件 1178 2009-09-26 22:07 第7章 课程设计题目及运行文件\题目13 LCD显示的定时闹钟\lcd1602头文件.h
文件 228808 2012-01-02 19:43 第7章 课程设计题目及运行文件\题目13 LCD显示的定时闹钟\LCD显示的定时闹钟.DSN
文件 742 2012-01-30 19:17 第7章 课程设计题目及运行文件\题目13 LCD显示的定时闹钟\LCD显示的定时闹钟.PWI
文件 7133 2009-09-27 22:19 第7章 课程设计题目及运行文件\题目14 音乐倒计数计数器\keil-5.hex
文件 224653 2011-12-05 05:28 第7章 课程设计题目及运行文件\题目14 音乐倒计数计数器\Last Loaded proteus-5.DBK
文件 224653 2011-12-28 23:48 第7章 课程设计题目及运行文件\题目14 音乐倒计数计数器\Last Loaded 音乐倒计数计数器.DBK
文件 1178 2009-09-26 22:07 第7章 课程设计题目及运行文件\题目14 音乐倒计数计数器\lcd1602头文件.h
文件 742 2011-12-16 14:43 第7章 课程设计题目及运行文件\题目14 音乐倒计数计数器\proteus-5.PWI
文件 225253 2012-01-02 19:50 第7章 课程设计题目及运行文件\题目14 音乐倒计数计数器\音乐倒计数计数器.DSN
文件 742 2012-01-30 19:22 第7章 课程设计题目及运行文件\题目14 音乐倒计数计数器\音乐倒计数计数器.PWI
文件 1090 2010-05-01 11:03 第7章 课程设计题目及运行文件\题目15 音乐音符发生器\keil-23.hex
文件 405 2010-05-01 11:03 第7章 课程设计题目及运行文件\题目15 音乐音符发生器\keil-23.plg
文件 152579 2011-12-28 23:48 第7章 课程设计题目及运行文件\题目15 音乐音符发生器\音乐音符发生器.DSN
文件 766 2012-01-17 13:08 第7章 课程设计题目及运行文件\题目15 音乐音符发生器\音乐音符发生器.PWI
文件 8473 2010-05-01 10:55 第7章 课程设计题目及运行文件\题目16 数字音乐盒\keil-24.hex
............此处省略294个文件信息
- 上一篇:gpsr协议源码
- 下一篇:[完整版] 全国大学生电子设计竞赛常用电路模块制作
相关资源
- 基于AD1674的模数转换电路及程序
- 学习型红外线遥控器设计单片机
- AVR单片机嵌入式系统原理与应用实践
- STM32F103RCT6单片机在串口屏上打印正弦
- 基于51单片机室内环境检测仪.zip
- 各种51单片机烧录程序软件
- MSP432蓝牙控制小车并进行超声波测距
- 单片机原理及其接口技术_第三版_胡汉
- 六轴传感器MPU6XXX例程及开发资料.ra
- 基于STM32F103ZET6示波器程序.rar
- STM32F103RCT语音模块LD3320 STM32与51单片
- 基于单片机的多功能路灯自动控制系
- DTH11温湿度显示在IIC_OLED上,好用,自
- 智能电热水器的控制系统设计Proteus仿
- stm32f103超声波传感器hcsr04控制模板
- 单片机病房呼叫系统
- 基于51单片机的智能晾衣架设计.docx
- 基于单片机控制的智能窗帘控制系统
- 压控增益放大器(VCA)模块(VCA810)
- 51单片机简易电子琴设计
- 单片机 PROTUES仿真大全(附带原理图)
- 基于STM32F103C8T6及NRF24L01的摔倒检测+
- 基于51单片机的电机转速监测
- 手势刷抖音32单片机代码.zip
- 基于51单片机&GPS;的导航系统设计论文
- 单片机应用小程序种类很全值得收藏
- 英飞凌单片机XC164系列单片机程序例程
- 智能窗帘控制系统.rar
- 51单片机时钟设计.rar
- STM32单片机程序+原理图.rar
评论
共有 条评论