当前位置:文档之家› 51单片机电子设计制作444彩色光立方

51单片机电子设计制作444彩色光立方

for(i=0;i<10;i++)
{ //一次采集数据的数量
Adc_Delay(3);
R=Read(1); //读对应的口,触发对应的触摸按键
if(R<0x2f)
{//此参数可调整感应灵敏度值在0x01到0x2F
2.设计制作一个4*4*4的三维发光二极管显示方阵,能够通过编写程序来实现对每一个发光二极管控制,从而来显示多种多样的图案。控制显示输出至少二十种显示效果。
3.通过大量编写程序调试实验现象结果分析研究数据形成规律,对规律总结得出结论并初步确定算法。
设计方案
本设计根据二极管点阵的原理由单片机I/O口控制点亮不同的二极管从而组成出不同的画面,根据人眼的视觉暂留现象即当物体移去时视觉神经对物体的印象不会立即消失而是要延续0.1-0.4秒的时间,来设置每幅画面的延迟时间是连续的一系列画面呈现动态。每一个层面的二极管阳极接在一起受一路I/O口的控制,实际电路中该路I/O口输出的控制信号通过5V继电器的吸合和断开来控制的,再输入发光二极管的阳极使其驱动。每一个二极管的阴极分别受单片机扩展后的I/O控制。每个灯都是由片选端口和控制端口共同决定亮或灭。因此,我们可以随意的来点亮光立方中任意一处的灯,来构建多种多样的图案。
/******************************************************************************/
unsigned char Read (unsigned char CHA)
{
unsigned char AD_FIN=0; //存储A/D转换标志
}
ADC_CONTR &= 0xE7; //1111 0111清ADC_FLAG位,关闭A/D转换,
return (ADC_RES); //返回A/D转换结果(8位)
}
/*******************************************************************************
TL1 = 0;
ET1 = 1;
TR1 = 1;
EA = 1;
}
/*******************************************************************************
********************** AD转换函数**************/
/**********************************************************************************************/
bit S1(void)
{
unsigned char R,mm=0,i,j,k;
bit aa;
j=0;k=0;
uchar s=0;
void DELAY_MS (uchar i){
//unsigned int i;
//while( --a != 0){
//for(i = 0; i < 600; i++);
//}
uchar x,j;
for(j=0;j<i;j++)
for(x=0;x<=148;x++);
}
void Adc_Delay (uint a){
/*
*程序功能:cube4光立方彩色版本,实现各种动画效果,配套取模软件
*作者:牛盾
*
*/
#include <stc12c5a60s2.h>
#include <intrins.h>
#define uint unsigned int
#define uchar unsigned char
#define MAX_Delay 8
uint i;
while( --a != 0){
for(i = 0; i < 600; i++);
}
}
void Delay(uint z)
{
uint x,y;
for(x=80;x>0;x--)
for(y=z;y>0;y--);
}
void timer1_init()
{
TMOD |= 0x10;
TH1 = 0;
#define MIN_Delay 1
sbit S_1 = P1 ^ 1;
sbit S_2 = P1 ^ 2;
unsigned int pwm;
unsigned char TimeDelay = 10;
unsigned char Mode = 1;
unsigned char code tabP2[]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F}; //扫描
课程设计开题报告
课程名称:单片机应用实训教程
设计题目:51单片机电子设计制作4*4*4彩色光立方
学 院:
专业班级:
学 号:
姓 名:
指导教师:
设计时间:
1.设计要求3
2.设计方案4
3.电路图5
3.1单片机程序6
设计要求
1.设计论文中心突出,内容充实,论据充分,论证有力,数据可靠,结构紧凑,层次分明,图表清晰,格式规范,字迹工整,结论正确。
************* AD电容式触摸按键检测程序******************/
/*********************************************************************************************/
//bit 1表示有感应物,0表示没有感应物S1
CHA &= 0x07; //选择ADC的8个接口中的一个(0000 0111清0高5位)
ADC_CONTR = 0x00;//ADC转换的速度(0XX0 0000其中XX控制速度,请根据数据手册设置)
_nop_();
ADC_CONTR |= CHA; //选择A/D当前通道
_nop_();
ADC_CONTR |= 0x80; //启动A/D电源
Adc_Delay(1);|= 0x08; //启动A/D转换(0000 1000令ADCS = 1)
_nop_();
_nop_();
_nop_();
_nop_();
while (AD_FIN ==0)
{//等待A/D转换结束
AD_FIN = (ADC_CONTR & 0x10); //0001 0000测试A/D转换结束否
相关主题