请教一个简单的单片机电路设计

作者&投稿:恽瑾 (若有异议请与网页底部的电邮联系)
谁能教我做简单的单片机电路设计呢,QQ7499830~

可以去CK234查看相关的信息,单片机能实现很多功能,看你要实现什么功能,对应什么电路图,有些事需要模拟电路结合的,一般单片机一定必须的就是晶振,旁路电容其他就看你要实现什么功能了,可以去网站查看相关信息,也可以在哪里留言,哪里高手不少

自个修改一下

#include//头文件//
#define uchar unsigned char
#define uint unsigned int
#define HI P2
#define LO P0
#define tn1h 0xb1
#define tn1l 0xe0
//全局变量定义
uchar code sia[16]={0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};
uchar code sib[16]={0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x3f,0x1f,0x0f,0x07,0x03,0x01,0x00};
uchar code sic[2]={0x55,0xaa};
uchar code sid[2]={0xaa,0x55};
uchar code sie[16]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff};
uchar code sif[16]={0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};
uchar code sig[2]={0x00,0xff};
uchar code sih[2]={0xff,0x00};
uchar code sit[64]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7e,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,
0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7e,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,
0xf8,0xf1,0xe3,0xc7,0x8f,0x1f,0x3f,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfc,
0xf8,0xf1,0xe3,0xc7,0x8f,0x1f,0x3f,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfc,};
uchar code six[64]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7e,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,
0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7e,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,
0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x3f,0x1f,0x8f,0xc7,0xe3,0xf1,0xf8,0xfc,0xfe,
0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0x3f,0x1f,0x8f,0xc7,0xe3,0xf1,0xf8,0xfc,0xfe,};
//显示数据

uchar s=0;
uchar tcount,tcount1,tflag,mflag,dflag=0;
void delayns(uchar s)//n秒延时
{uchar sd=0;//tcount1,tcount,tflag=0;
dflag=0;
while(sd<s&&dflag==0)
{while(tflag==1)
{tflag=0;sd++; }
}
}
void delaynms(uchar m)//n秒延时
{uchar sd=0;tcount1=0;
while(sd<m)
{
while(tcount1==1)
{tcount1=0;sd++; }
}
}
void sign0(void)//模式0
{uchar i=0;
while(mflag==0xef)
{while(i<64&&mflag==0xef)
{HI=six[i];
LO=sit[i];
delaynms(4);
i++;
}
i=0;
}
}
void sign1(void)//模式1 依次点亮
{uchar i=0;
while(mflag==0xfe)
{while(i<16&&mflag==0xfe)
{HI=sib[i];
LO=sia[i];
delayns(1);
i++;
}
i=0;
delayns(2);
}
}
void sign2(void)//模式2 奇数亮-->偶数灯亮
{uchar i=0;
while(mflag==0xfd)
{while(i<2&&mflag==0xfd)
{HI=sid[i];
LO=sic[i];
delayns(1);
i++;
}
i=0;
}
}
void sign3(void)//模式3 分别点亮
{uchar i=0;
while(mflag==0xfb)
{while(i<16&&mflag==0xfb)
{HI=sif[i];
LO=sie[i];
delayns(1);
i++;
}
i=0;
delayns(2);
}
}
void sign4(void)//模式4 左八亮-->右八亮
{uchar i=0;
while(mflag==0xf7)
{while(i<2&&mflag==0xf7)
{HI=sih[i];LO=sig[i];
delayns(5);
i++;
}
i=0;
}
}
void keyscan() //键盘扫描
{uchar key=0;
key=mflag;
P1=0xff;
if(P1!=0xff)
{if(key!=P1)dflag=1;mflag=P1;// //
}
}
/*void t0(void) interrupt 1 using 1 //一秒定时
{TR0=0;
TH0=tn0h;
TL0=tn0l;
TR0=1;


} */
void t1(void) interrupt 3 using 2 //定时扫描键盘
{TR1=0;
TH1=tn1h;
TL1=tn1l;
TR1=1;
keyscan();
tcount++;tcount1=1;
if(tcount==50) //一秒定时
{tflag=1;
tcount=0;}
}
void main() //主程序
{TMOD=0x11; //定时器工作模式 方式一
TH0=tn0h; //
TL0=tn0l; //
TH1=tn1h; //
TL1=tn1l; //
TR1=1; //启动定时器一
ET0=0; //允许定时器0中断
ET1=1; //允许定时器1中断
EA=1; //开启总中断
while(1)
{
if(mflag==0xef)sign0();
if(mflag==0xfe)sign1();
if(mflag==0xfd)sign2();
if(mflag==0xfb)sign3();
if(mflag==0xf7)sign4();
}
}

发光二极管按照点阵方式排列既可以,通过点阵方式连接编程控制点亮,否则单片机管脚不够用,也可以用三极管放大电流串联,不过100多个LED个人感觉不怎么好。
发声装置要编程,查一下每个音调频率,然后组合成音乐即可,主要还是要编程。
开关接单片机的外部中断,图案的亮灭只要在程序中控制就好,当音调改变时候给LED的电平取反并稍微延时下就好了
其他的我觉得还要电容晶振

你整列直接接么?图像都是固定的又没什么花头的

把发光二极管排成点阵你看怎么样呢


现在教学上流行的单片机是51么?什么开发板比较好?请大神们推荐一款...
我觉得是吧这样!我们就是用51讲的,首先51单片机是比较简单的,非常容易上手。把51学好了再学其他的都比较容易上手。不过还要把C学好了,要不然你只会按照例程上面敲的代码弄,以后做别的东西就不会改了。开发板就大同小异了,买个便宜点的就行!有LED灯,有蜂鸣器,LCD1602和LCD12864的接口,数码管...

请教大家一个简单的单片机问题啊,MOVX A,@DPTR是什么意思,为什么一个十 ...
呵呵 十六位的是地址。不是有个@吗。@的意思就是所在地址的数。比如 movx a,@1000h 就是把外部地址为1000h中的数放到a中。多谢采纳

有没有人教我一下单片机
这是我帮一个想学习单片机的网友回答的。看你这么喜欢单片机编程,哎不得回想一下当年自己,求学经历,学习单片机是一件很枯燥的事情,不是一件容易事,单片机开发和嵌入式开发的道路你还没有了解过,你真心想学习单片机,我给你指出条明路,先去到网上买一块51学习板,参考小宋老师手把手教你学习单片机...

单片机编程 找些个单片机编程的网上教程
我这有个在网上找的可以参考下:单片机教程:单片机编程入门一 http:\/\/bbs.huazhoucn.com\/Topic.aspx?id=1313 单片机教程:单片机编程入门二 http:\/\/bbs.huazhoucn.com\/Topic.aspx?id=1314 单片机教程:单片机编程入门三 http:\/\/bbs.huazhoucn.com\/Topic.aspx?id=1315 单片机教程:单片机编程入门四 http...

请教单片机高手一个简单的问题
1,先把LPC1114的PIO10的寄存器设置为:GPIO输出,寄存器地址在datasheet有专门讲的,你也可以在DEMO板的代码中找到。注意:每一个GPIO对应一个寄存器,一定要找到该地址。2,然后你在main函数里这样写就好了。while(1){ PIO1.0=0;delay(1000ms);PIO1.0=1;delay(1000ms);} 这样D1灯就会每1秒闪...

手把手教你学51单片机的前 言
所以本书的着重点是想让读者了解一个完整的单片机设计过程所需的知识,而不仅仅只是讲述单片机的原理。通过本书的学习,读者可以独立设计和完成一个简单的单片机控制系统,即体验从原理图设计、制作电路板到单片机系统调试的整个过程。本书的主要内容本书概括地论述了单片机的基础知识,包括单片机的基本结构和...

这是单片机编程的,sfr是声明一个8位寄存器,这里的8位具体是什么意思,求...
2. "8位"指的是这些寄存器的数据宽度为8位,即能够存储0到255的十进制数。3. 在8位单片机中,所有寄存器如累加器(ACC)、状态寄存器(PSW)、地址寄存器等都是8位的。4. 每个8位寄存器可以独立存储一个8位的二进制值。5. 在编写单片机程序时,需要了解每个寄存器每一位的含义,例如状态寄存器(...

你好,请教一下怎么用单片机知识、汇编语言设计一个秒表计时器,_百度...
程序初始化设置相应的定时器模式和外部中断方式,打开相应的中断。用定时器产生一个10ms的中断开始计数。用外部中断控制计时,你可以设置一个标志位,没按下一次按键,标志位取反,就能控制计数的继续和暂停。至于时间清零,就很简单了,判断某一管脚为1或0时,上面三个8位寄存器如R2,R3,R4全部清零就...

谁能教教我怎么做单片机在线编程?具体的电路怎么连接需要什么器件?_百度...
你用的是哪种单片机?AT89S51单片机和ATMEG8等单片机 直接用天河双龙的isp实现在线编程 而STC单片机可直接用串口进行ISP编程 用法直接参考具体芯片的文档 而89C51和AT89C2051为编程电压为12V 不支持在线编程 部分具体ISP电路参考 http:\/\/www.51c51.com\/bbs\/dispbbs.asp?boardid=6&id=18706 ...

请问最适合初学者学习的单片机教材是什么?
尝试着写一些小程序,有条件的可以和硬件连起来,没有的可以先弄一个仿真软件如:protues 等先做一些小的实验,关键是多练才能入门,只看书是入不了门,除非你的悟性和能力超强。如果真要推荐书的话我认为你要先学会有关汇编的书如:《单片机原理及接口技术》,然后再学一本关于C51的就行。之后慢慢...

巨鹿县19812167069: 请教一个简单的单片机电路设计 -
年左奥哌: 发光二极管按照点阵方式排列既可以,通过点阵方式连接编程控制点亮,否则单片机管脚不够用,也可以用三极管放大电流串联,不过100多个LED个人感觉不怎么好. 发声装置要编程,查一下每个音调频率,然后组合成音乐即可,主要还是要编程. 开关接单片机的外部中断,图案的亮灭只要在程序中控制就好,当音调改变时候给LED的电平取反并稍微延时下就好了 其他的我觉得还要电容晶振

巨鹿县19812167069: 你好,可以给我设计一个单片机最简单的电路么? 也容易焊的, 我们课程设计 , 谢谢 -
年左奥哌: 最简单的是点亮一个灯(如接在P1^0口)需要的外围电路是振荡接18,19引脚 我的QQ1055306484

巨鹿县19812167069: 如何自己做一个最简单的单片机?希望各位大神能把制作要用的元器件的?
年左奥哌: 三个部分:电源电路,复位电路,晶振电路电源电路:假设5v的单片机,就可以加一个三端集成稳压模块,比如AMS1117-5.0或者L7805,保险的话可以在输入端加一个...

巨鹿县19812167069: 单片机的电路怎样设计啊, -
年左奥哌: 将CPU写好程序,就可以运行了我是搞单片机系统开发的,单片机的电路是根据单片机需要完成的功能来设计电路的,单片机不像电脑,什么功能都要有,他只需要完成几个或者某一个单一的功能就可以,首先用protel软件,根据功能要求做出原理图,将用到的元器件,如电阻电容,设计到里面去,再将元器件焊接上去,然后根据原理图,去设计PCB板图,然后将板图拿到生产板子的工厂生产出来

巨鹿县19812167069: 请教一个单片机逻辑电路题目,谢谢. -
年左奥哌: 先把逻辑图写成表达式,再应用摩根定理化简,最后写成:P3.0 = (P1.0 * P1,1 + P1.4 + P1.5) * P1.6 这就简单多了,四个取反的步骤,都化没了.程序如下:C://--------------------------- sbit a=P1^0; sbit b=P1^1; sbit c=P1^4; sbit d=P1^5; sbit e=P1^6...

巨鹿县19812167069: 单片机电路如何设计? -
年左奥哌: 你在看看,我想是并连的,这个要分情况而定了,比如P0口上的电阻你必需接,因为P0口上没有上拉电阻,这个电阻的作用是为了驱动外部设备,比如发光二极管,因为,单片机内总的电阻非常大,你要是直接输出 ,那么流到二极管的电流就...

巨鹿县19812167069: 求一个用单片机设计测量电阻电容的电路图 -
年左奥哌: 如果是51单片机,最简单但切实可行的电路图方案如下:测电阻:接一个参考电容到p0.0和地之间,待测电阻一头接p1.0,另一头接p0.0,测电容阻:接一个参考电阻到p0.1和p1.1地之间,待测电容一头接p0.1,另一头接地.

巨鹿县19812167069: 设计一个单片机控制的开关电路 -
年左奥哌: 74HC245芯片,当改变1号引脚上的输入电平时就可以把输入端和输出端互相改变,引脚19控制芯片的工作.

巨鹿县19812167069: 介绍一个简单的单片机的电路
年左奥哌: 不同的单片机电路不一样,最简单的是LED流水灯电路,你带上你的单片机型号网上一搜,一大片一大片的

巨鹿县19812167069: 单片机电源电路怎么设计啊?
年左奥哌: 方案很多.最常见、最简单、最经济的就是:5~10W变压器+1A/200V全桥+L7805稳压IC+470uF电解(交流滤波用,位于全桥和稳压IC之间)+100uF电解(直流滤波用,位于稳压IC输出端).如果负载电流较大(通电3分钟内,稳压IC发烫),可以在L7805上加装一个小散热片.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网