导航:首页 > 操作系统 > 杜洋单片机官网

杜洋单片机官网

发布时间:2025-01-23 23:13:51

1. 单片机入门 杜洋老师的好还是郭天详老师的好

郭天祥是系统的从0开始的教学吧,杜洋老师的是趣味性的教学,以趣味小制作为基础的教学,适合有点基础需要提高的人和对制作有兴趣的人

2. 学习c51有什么好的网站。。拜托了

www.doyoung.net
这是杜洋的网站,上面“教学”一栏里面有很多文章和视频,例如视频用面包板入门单片机,这种方法不用焊接,拆解方便,入门简单。还有《单片机编程魔法学校》《单片机入门制作专辑》这样的免费文章,还都在《无线电》上刊登过。首页上许多精简设计,制作只需十来分钟,但是不乏趣味。
(里面介绍的STC系列单片机是51系列的高级型,完全和51单片机通用,却速度更快,功能更多)

3. 毕业设计我想用单片机做一个电子琴,程序最好是c语言编写的,那个好心人可以帮我提供点资料,要钱的免进!

www.doyoung.net

上有好多,要的话我还有流程图

/*********************************************************************************************

程序名:DoToy系列作品MidTouch21电子琴程序

编写人:杜洋

编写时间:2009年6月3日

硬件支持:STC11L60XE外部12MHZ晶振电源3V

接口说明:详见《DoToy_MidTouch21电路原理图》

修改日志:

NO.1-20090603_17.54完成电子琴21键的测试(20090603_1备)

NO.2-20090604_01.29改为第二次新板的硬件电路(20090604_2备)

/*********************************************************************************************

说明:

用STC11Fxx单片机I/O接口的高阻态输入功能,扫描I/O接口电平。

手指将VCC线和I/O接口线半连接,产生高电平信号。

/*********************************************************************************************/

voidINIT(void);

#include<STC11Fxx.H>

/*********************************************************************************************/

sbitSPEAKER=P1^0;//扬声器,低使能

sbitLED=P3^0;//LED正极,强推

sbitLED2=P3^1;//LED负极

sbitKEY11=P2^0;

sbitKEY12=P2^1;

sbitKEY13=P2^2;

sbitKEY14=P2^3;

sbitKEY15=P2^4;

sbitKEY16=P2^5;

sbitKEY17=P2^6;

sbitKEY21=P2^7;

sbitKEY22=P4^4;

sbitKEY23=P4^5;

sbitKEY24=P4^6;

sbitKEY25=P0^7;

sbitKEY26=P0^6;

sbitKEY27=P0^5;

sbitKEY31=P0^4;

sbitKEY32=P0^3;

sbitKEY33=P0^2;

sbitKEY34=P0^1;

sbitKEY35=P0^0;

sbitKEY36=P3^3;

sbitKEY37=P3^2;

/*********************************************************************************************/

unsignedcharMUSIC;

unsignedcharSTH0,STL0;

unsignedintcodetab[]={//音阶表

63628,63835,64021,64103,64260,64400,64524,//低音1-7

64580,64684,64777,64820,64898,64968,65030,//中音1-7

65058,65110,65157,65178,65217,65252,65283//高音1-7

};

/*********************************************************************************************/

voiddelay1ms(unsignedinta){//1ms延时程序(12MHz10倍于51单片机速度时)

unsignedinti;

while(--a!=0){

for(i=0;i<600;i++);

}

}/***************************************************************************************/

voidINIT(void){//初始化程序

TMOD=0x11;

ET0=1;

ET1=1;

EA=1;

P0M1=0xff;//I/O接口工作方式

P0M0=0x00;//P0全为高阻输入

P1M1=0xfe;//P1.0为准双向,其他为高阻输入

P1M0=0x00;

P2M1=0xff;//P2全为高阻输入

P2M0=0x00;

P3M1=0xfc;//P3.0为强推,其他为标准双向

P3M0=0x01;

P4M1=0xff;//P4全为高阻输入

P4M0=0x00;

P4SW=0xff;

LED=1;

LED2=0;

SPEAKER=0;

}

/***************************************************************************************/

voidmain(void){

INIT();//初始化

while(1){

if(KEY37==1){delay1ms(20);if(KEY37==1){MUSIC=20;}}//高音B(37)

if(KEY36==1){delay1ms(20);if(KEY36==1){MUSIC=19;}}

if(KEY35==1){delay1ms(20);if(KEY35==1){MUSIC=18;}}

if(KEY34==1){delay1ms(20);if(KEY34==1){MUSIC=17;}}

if(KEY33==1){delay1ms(20);if(KEY33==1){MUSIC=16;}}

if(KEY32==1){delay1ms(20);if(KEY32==1){MUSIC=15;}}

if(KEY31==1){delay1ms(20);if(KEY31==1){MUSIC=14;}}

//3

if(KEY27==1){delay1ms(20);if(KEY27==1){MUSIC=13;}}

if(KEY26==1){delay1ms(20);if(KEY26==1){MUSIC=12;}}

if(KEY25==1){delay1ms(20);if(KEY25==1){MUSIC=11;}}

if(KEY24==1){delay1ms(20);if(KEY24==1){MUSIC=10;}}

if(KEY23==1){delay1ms(20);if(KEY23==1){MUSIC=9;}}

if(KEY22==1){delay1ms(20);if(KEY22==1){MUSIC=8;}}

if(KEY21==1){delay1ms(20);if(KEY21==1){MUSIC=7;}}

//2

if(KEY17==1){delay1ms(20);if(KEY17==1){MUSIC=6;}}

if(KEY16==1){delay1ms(20);if(KEY16==1){MUSIC=5;}}

if(KEY15==1){delay1ms(20);if(KEY15==1){MUSIC=4;}}

if(KEY14==1){delay1ms(20);if(KEY14==1){MUSIC=3;}}

if(KEY13==1){delay1ms(20);if(KEY13==1){MUSIC=2;}}

if(KEY12==1){delay1ms(20);if(KEY12==1){MUSIC=1;}}

if(KEY11==1){delay1ms(20);if(KEY11==1){MUSIC=0;}}

//1

if(MUSIC!=0xff){//如果有音阶数值(非0XFF时)

STH0=tab[MUSIC]/256;//将音阶的频率值装入定时器T0

STL0=tab[MUSIC]%256;

TR0=1;//启动定时器

MUSIC=0xff;//清除寄存器

}else{//否则

SPEAKER=1;//关扬声器

LED=1;

TR0=0;//关定时器

}

}

}

/***************************************************************************************/

voidt0(void)interrupt1using0{//定时器0产生音频

TH0=STH0;

TL0=STL0;

SPEAKER=~SPEAKER;//取反频率产生音调

LED=SPEAKER;//LED同频闪烁

}

/***************************************************************************************/

/*************************************************************

*杜洋工作室www.DoYoung.net

/*************************************************************/

4. 杜洋工作室单片机引脚触摸控制原理

其实就是设定单片机引脚旁边两个IO口为高电平,中间那个引脚为高阻输入,一旦扫到高电平,就可认为有按键按下

关键词: 高阻输入,其余的处理方式和按键一样,中断也好,扫描也可以。

# include <reg51.h>
# include <intrins.h>

sbit P10=P1^0;
sbit P11=P1^1;
sbit P12=P1^2;
sfr P1M1=0x91; //I/O口工作状态寄存器
sfr P1M0=0x92;

void delay(void)
{
unsigned char a,b,c;
for(c=167;c>0;c--)
for(b=171;b>0;b--)
for(a=16;a>0;a--);
_nop_();
}

void main()
{
P1M1=0x02;
P1M0=0x00;
P10=1;
P12=1;
P11=0;
while(1)
{
if(P11==1)
{
P2=0x00;//P2接LED
delay();
delay();
}
else
{
P2=0xFF;
}
}
}

5. 51单片机c语言学习哪本书讲的比较详细,适合入门的看呢

你可以看看《爱上单片机》(杜洋着),超简单的哦。
如果你不想买书,你可以下载《单片机编程魔法学校》,或者硬件的《单片机入门制作专辑》(其实就是从书里面截取的片段)
还可以购买视频,你到www.doyoung.net看看
其实没必要买一块开发板,也不必要自己做一块
完全可以用面包板搭建,无需焊接,拆装方便,而且真正能理解硬件电路,让自己动手实践,例如第一次试验只需要用三个元器件单片机(推荐用STC12C5A60S52,也是51内核的,完全通用,但是功能丰富,千万不要用AT89S51,以后你就会知道,比如说以后用到ADC数模转换,PWM输出,STC就都集成好了,而AT就需要一个个用芯片外扩)LED灯、电池盒三个元件,而不需要面对连电路都不熟悉的开发板。详见视频“用面包板入门单片机”:
http://www.doyoung.net/video/BREAD_1/index.html
学习C语言可以配合着《单片机入门制作专辑》(网页最后可以下载光盘及文章):
http://www.doyoung.net/articles/0711_MCU_entry_album/index.html
《单片机编程魔法学校》(最后也有下载):
http://www.doyoung.net/articles/0711_MCU_entry_album/index.html
推荐书籍:《爱上单片机》

阅读全文

与杜洋单片机官网相关的资料

热点内容
主次梁箍筋加密和负筋箍筋 浏览:349
at命令win 浏览:146
个人所得税app的设置在哪里 浏览:136
linux空值 浏览:141
剪力墙钢筋用不用加密区 浏览:982
哪里app可以上高中生物课 浏览:474
cad粗糙度快捷键命令大全 浏览:523
腾讯云服务器无法运行软件 浏览:344
奔跑吧哪个app 浏览:99
哪个app听音乐最好 浏览:283
考研英语2真题pdf 浏览:701
烟台编程积木教育环境好不好 浏览:216
python优秀代码 浏览:622
androidtop命令 浏览:457
你平时怎么排解压力 浏览:70
表格中的文件夹怎样设置 浏览:478
em78单片机 浏览:962
splitjava空格 浏览:248
电脑怎么谷歌服务器地址 浏览:515
nx自定义工具启动宏命令 浏览:101