第一篇:Start-51单片机学习板 开发程序实例---入门篇(共)
Start-51系列单片机学习板 开发程序实例
入门篇
一、基础知识
1)
2)
3)
4)
5)
6)学习51系列单片机基本知识。找一本单片机教材放在手边,边实战边学习了解STC单片机的基本特点 了解Start-51单片机学习板的电路原理(阅读随板光盘说明书)学习STC单片机ISP软件及下载的方法(下载地址:)学习Keil C51软件的基本使用 学习C51的基础知识
二、入门实验
1)
2)
3)
4)
5)
6)
7)
8)
9)
10)
11)
12)
13)
14)
15)
16)
17)Hello Word:把P23口置低,点亮一个LED灯 基本I/O口实验:使用延时方法,控制一个LED灯闪烁(P23)定时器基本:使用定时器,控制一个LED灯以1S钟为周期闪烁 定时器应用:控制4个LED以流水灯形式闪动 外部中断:按下ENT键(P32),点亮一LED,再按下ENT键,对应LED灭 I/O键盘检测:分别按下一键,对应的LED被点亮,再按下键,则灭 蜂鸣器基本驱动:使用延时方法,控制蜂鸣器发声 蜂鸣器驱动应用1:使用高低两种频率值,产生警笛声 蜂鸣器驱动应用2:播放音乐——数码管显示应用1:在第一个数码管上任意显示0~9之间的数值 数码管显示应用2:在4个数码管上“同时”显示不同数值,如1,2,3,4 综合实验1——计数器:在数码管上显示按ENT键(P32)次数,(先十六进制显示,再改十进制)综合实验2——秒表:在数码管上显示秒数 综合实验3——分秒表:前两位显示分钟,后两位显示秒钟,中间小数点0.5S闪烁 综合实验4——方波信号发生器:10~200Hz,步长10Hz,P23输出,数码管显示频率值,UP:频率加,DN:频率减。综合实验5——简易跑表:前两位数码管显示秒数,后两位显示百分秒;按一下M键开始计时,再按一下停止;DN键清零 综合实验6 ——可多段计数的跑表:按一下M键开始计时,每再按一下记下当前计数
值,最多记四段;按一下UP键停止,再按一下UP键,第一个指示灯亮,并显示第一段计数值;继续按UP键,下一个指示灯亮,并显示下一段计数值;DN键清零
第二篇:单片机程序开发工程师的个人简历
单片机程序开发工程师的个人简历模板
姓名:陈先生性别:男
婚姻状况:未婚民族:汉族
户籍:广东-佛山年龄:32
现所在地:广东-深圳身高:175cm
希望地区:广东-深圳、广东-深圳
希望岗位:电子/电器/元件类-电路(布线)设计工程师
电子/电器/元件类-嵌入式/底层软件开发(Linux/单片机/DSP/„)
电子/电器/元件类-数码产品开发工程师
寻求职位:单片机开发工程师、嵌入式底层软件工程师
教育经历
2011-01 ~ 至今 深圳大学 计算机科学与技术 硕士
2001-09 ~ 2005-05 广东海洋大学 电气工程及其自动化 本科
培训经历
2008-09 ~ 2008-09 中国信息产业部 EMI抑制与抗干扰设计方法及案例分析”高级研修班
2006-07 ~ 2006-07 中嵌培训 嵌入式高速电路设计
**公司(2009-01 ~ 至今)
公司性质:合资企业 行业类别:计算机软件
担任职位:软件项目工程师岗位类别:软件设计师
工作描述:DSP软件开发
**公司(2007-08 ~ 2008-12)
公司性质:国有企业 行业类别:电子、微电子技术、集成电路
担任职位:岗位类别:嵌入式/底层软件开发(Linux/单片机/DSP/„)
工作描述:主要负责电路设计,和程序开发,主要项目有设计信号采集控制器(主要采用飞利浦的ARM7系列芯片(主要芯片型号:LPC2131)设计采用COS系统,负责电路设计和部分硬件驱动程序开发),车载多功能监控终端(主要以ARM9系列芯片为内核,嵌入LINUX系统,任务是开发驱动软件,和设计硬件电路。
**公司(2005-03 ~ 2007-08)
公司性质:私营企业 行业类别:计算机硬件
担任职位:单片机程序开发工程师岗位类别:硬件工程师
工作描述:
1、设计嵌入式的PL3100晓程载波通讯模块SCH和PCB(采用四层板设计)以及程序动手焊接、调试、测试样机,批量使用于现场;
2、熟悉各种存储电路的设计(SRAM、FLASH、IIC EEPROM)(曾设计使用过DS1270、SST39VF160等芯片);个人简历表格 http://
3、熟悉串口通讯原理和红外通讯原理和USB通讯原理以及网络通讯原理;
4、设计过红外遥控8路独立带定时功能电源插座;
5、设计过家庭智能远程终端(红外感应,温度感应,语音提示,菜单提示等功能);
6、用单片机设计过多功能智能充电器;
7、设计过5V、2A的开关电源;
8、设计过485总线和电话防雷器;
9、多次到信息产业部电子第五研究质检中心/中国赛宝(总部)实验室对产品进行EMC测试;
10、熟悉EMC测试规则,熟悉如何去应对EMI和EMC测试;
11、熟悉数字模拟电路原理;
12、熟悉高速数字电路设计原理;
13、熟练使用汇编语言和C语言和C++语言;
14、汇编语言编写:智能充电器、红外智能遥控器,液晶显示的程序;
15、C语言编写了智能远程终端、载波通讯模块、电能采集器的程序。
离职原因:家庭的原因
技能专长
专业职称:硬件研发工程师
计算机水平:高校非计算机专业三级(偏硬)
计算机详细技能:1.精通Protel 99SE、Protel DXP POWER PCB及 keil软件、C语言、汇编语言、C++等
2.熟练应用ADS1.2,SDT2.5嵌入式开发软件
3.掌握硬件描述语言(VHDL或Verilog);掌握一般可编程器件(EPLD、FPGA)的设计,了解可编程逻辑设计软件.技能专长:熟练使用 ATMEL、WINBOND、Sunplus、MSP430系列等单片机系统设计及编程。
熟练使用PROTEL、POWER PCB、KEIL、ADS1.2 IDE等软件。
熟练使用示波器、万用表、函数发生器、扫频仪等设备。
熟练编写和调试汇编或者C语言程序;
熟悉嵌入式系统软件硬件的开发流程;
熟悉嵌入式linux的软件开发流程。
语言能力
普通话:流利粤语:流利
英语水平:
英语:熟练
其 他:粤语
求职意向
发展方向:成为技术精英,做栋梁之材!
其他要求:
自身情况
自我评价:_____我从小热爱电子制作,喜欢制作一些新奇实用的电子产品。在高中,在大学,参加了各类校际电子竞赛,并都获得了可喜的成绩,特别是“05年全国大学生挑战杯竞赛”,荣获三等奖。我得到这些荣誉,自然也离不开指导老师的教导和同学的帮助。步入社会后,先后在两家企业从事研发工作,在广东卓维网络有限公司担任单片机研发工程师一职,在职期间,我一直致力于为公司创作更先进,更实用,更稳定的电子产品。并专注于电能采集器、载波通讯模块、安防感应报警器的开发上,后来因为家庭原因才辞去这份工作。另一份是深圳桑达电子设备有限公司担任硬件研发工程师一职,专注于开发智能车载终端设备上。
____对一个每一个开发项目的完成,我都学到了很多东西,积累了难得的经验。在工作中总结出,个人技术水平固然重要,团队合作才能让个人能力体现最大化。
____懂得了做事需要踏踏实实,一步一个脚印才能真正学到真本事的道理。只要您给我机会,凭借这四年学到的知识和技能,我对应聘的工作岗位充满信心
第三篇:51单片机学习板配件要求
51单片机学习板配件要求
1.HC6800-EM3开发板一块(188mm * 134mm)1个
2.单片机为STC89C55RD+FLASH64K1个STC90C516RD+
3.1602带背光液晶屏1个
4.TFT真彩屏SD卡集成模块1个
5.优质纯铜带屏蔽供电通信USB数据线1条 6.八位排线4条(32根)
7.单P杜邦线8条
8.红色短路帽19个(另送4个备用冒)
9.实验时钟电池座及电池1PCS
10.超大容量DVD光盘1张
11.全新ABS环保多功能折叠箱抗压抗摔经久耐磨1个
12.超亮双色点阵模块1片
14.11.0592晶振1个
15.12.000晶振1个
16.全新进口高速高矩进口步进电机1个
17.全新直流电机1个
18.全新红外接收头1个
19.全新红外遥控器(送纽扣电池)1个
20.全新18B20温度检测1个
以上配置为淘宝上的标配需要一套
另外一套需要是
把第3项和4项更改为2.4 寸TFT真彩屏SD卡集成模块 标配基础上增加以下配件
1、需增加1602带背光液晶屏1个
2、八位排线4条(32根)
3、单P杜邦线8条
请尽快给出以上两套配置价格,我们是初学者还请以后多多指教,如有冒犯之处请原谅。联系电话***
AT89S51是支持ISP在线编程的,可以自己用74LS244或者74LS373做并口的下载线路。建议你下载一个Easy 51Pro v2.0软件,这是完全免费的,里面有下载线的制作方法,电路图什么的,很好用,适合初学者。
第四篇:学习会议程序
怀北路公租房新建项目安全、技术学习会议程序
一.主持人:彭家湘
二.组成人员:
1.邀请人员:
①指挥部:李彩池、胡传祥、蒋湘平、罗忠全、王旭明。
②总监:
③公司:龙兴治或潭安员、刘东杰、奉卫平、宋平、荆永巨、胡新民、陈武跃
2.项目部人员:
黎秋平、刘劲松、彭家湘、谌洪启、黄新成、丁文、井腾、刘中立、晏彩萍、谢敏韬、杨骊、向春娥
3.劳务队人员:
胡吉祥、王乔、王亚雄、曹腾颢、郭双洲、宋迪光、刘操、王国正、挖机司机
4.冲击桩队人员:
欧阳伟、王武志
三.领导发言:
①指挥部领导:
②公司领导:
③项目部领导:黎秋平发言
四.授课内容:
1.塔式起重机安全操作使用规程。
2.起重吊装作业“十不吊”准则。
3.塔式起重机司机作业安全生产规定。
4.桩基施工技术要点:
①钻孔、②钢筋笼制作与安装、③砼灌注。
5.钻孔灌注桩施工安全控制要点。
6.施工现场临时用电管理。
7.挖掘机司机安全生产规定。
8.安全“三宝”的作用。
9.土石方开挖。
10.建筑桩基础
五.授课人:刘东杰、奉卫平、胡新民(临时用电)
第五篇:郑大信息工程学院单片机学习心得体会论文
用80C51制作看门狗及单片机学习体会
看门狗 又叫watchdog timer,是一个定时器电路,一般有个输入,叫喂狗,一个输出到重置端,正常工作时,每个一段时间输出一个信号到喂狗端 ,给看门狗清零,如果超过规定的时间不喂狗,(一般在程序跑飞时),看门狗定时超过,就会给出一个复位信号到MCU,使MCU复位.防止MCU死机.看门狗的作用就是防止程序发生死循环,或者说程序跑飞。其工作原理:在系统运行以后也就启动了看门狗的计数器,看门狗就开始自动计数,如果到了一定的时间还不去清看门狗,那么看门狗计数器就会溢出从而引起看门狗中断,造成系统复位。大多数51 系列单片机都有看门狗,当看门狗没有被定时清零时,将引起复位。这可防止程序跑飞。但80c51单片机由于型号较老没有内置看门狗。但可以用80c51内置的2个定时器实现软件的看门狗装置,来对主程序的运行进行监控。我们可以对T0设定一定的定时时间,当产生定时中断的时候对一个变量进行赋值,而这个变量在主程序运行的开始已经有了一个初值,在这里我们要设定的定时值要小于主程序的运行时间,这样在主程序的尾部对变量的值进行判断,如果值发生了预期的变化,就说明T0中断正常,如果没有发生变化则使程序复位。对于T1我们用来监控主程序的运行,我们给T1设定一定的定时时间,在主程序中对其进行复位,如果不能在一定的时间里对其进行复位,T1 的定时中断就会使单片机复位。在这里T1的定时时间要设的大于主程序的运行时间,给主程序留有一定的的裕量。而T1的中断正常与否我们再由T0定时中断子程序来监视。这样就够成了一个循环,T0监视T1,T1监视主程序,主程序又来监视T0,从而保证系统的稳定运行。程序如下:
ORG 0000H ;程序起始地址 START:AJMPMAN ; 主程序入口地址 ORG 000BH ;T0重点入口地址 LJMP ERR 软件复位
MAN:SRTB EA SETB ET0 SETB TR0 MOV TMOD.#01H MAN1:MOV TH0.data1 MOV TL0.data2 …………………..LJMP MA N1 NOP NOP ERR:CLR EA MOV DPTR.#ERR1 PUSH DPL PUSH DPH RET1 ;转入错误处理,实现 ;开总中断 ; 开T0中断 ;启动T0 ;T0定时方式1 ;给定时器T0赋初值 ;用户程序 ;关中断 ;准备返回地址 ;清除高级中断激活标志 ERR1:CLR A ;准备复位地址 PUSH ACC ;压入复位地址 PUSH ACC RET1 ;清除低级中断激活标志 END
在学习单片机的过程中,我想我得到了一些关于学习单片机的一些个人的经验,以下就是我学习单片机的心得体会。
单片机是一门应用性和综合性很强的学科,它综合了电子技术中的模拟电路和数字电路方面的知识,特别是数字电路,因为数字电路在里面的应用很多。学习单片机最好先从汇编语言入手,虽然汇编语言是低级语言,编程效率低,但它比C语言占用内存小,执行速度快等优点,在刚接触单片机时更容易学习。由于单片机涉及的知识很多,所以我们只能循序渐进的学习,逐步的积累,没有什么捷径可循。
刚开始学习的时候,对单片机没有什么认识,不知道什么是单片机,更不知道它有什么作用。通过学习才大体知道了单片机的一些知识。由中央处理器CPU、随机存储器RAM、只读存储器ROM、I/O接口、定时器/计数器以及串行通信接口等集成在一块芯片上,构成了一个单片微型计算机,简称为单片机。刚开始学习是总觉得指令语句太过复杂,怎么也记不住,这时只能多练、多记,只能抄写别人做成功的程序,一遍一遍的写,直到能熟练的独自将程序写出来,从简单的入手,逐步的积累,对单片机就会有新的认识,能够自己独立的写一些小的程序,能够将小的程序结合到一起,拼接成较为复杂一些的程序。然后可以参考已经成功的程序,抄过来,写一个最简单的,让它运行起来,先培养一下自己的感觉,知道写程序是怎么一回事,无论写大程序还是小程序,要做的工序不会差多少,总得建个项目,再配置一下项目,然后建个程序,加入项目中,再写代码、编译、生成HEX,刷进单片机中、运行。必须熟悉这一套工序。写好程序在上面运行一下看结果,学习效果会好很多。单片机是注重理论和实践的,光看书不动手,是学不会的。所以我觉得以后能有机会实际动手去做相关的实验,才会对单片机的流程有更深刻的认识。也许还是自己的能力有限,编写的大多程序拿给尖子生看的时候还是出现这样或者那样的错误。但当你写出一个程序,并成功的进行实验,哪怕是很简单的,你也会有一些成就感,它将会使你对单片机的学习产生更加浓厚的兴趣,更加激励你去更深入的研究单片机。学习单片机要投入大量的时间,如果只想速成,几乎是不可能的。由于单片机涉及的知识面很广,不可能在朝夕间就学会,只能一点点的积累。不积跬步,无以至千里。只有当你一步步去学习、去积累之后,你的单片机水平才会提高。学习过程中还要注重理解,要逐渐养成自己的编程思路,在编程过程中还要注意细节问题,如果因为粗心大意将程序写错,将会无形间给自己带来更大的工作量,随着学习的深入,我们编写的程序将越来越长,如果出现很多错误,在改错时将会很麻烦,出错越多你改的时间将会越长,就会无形间给自己带来更多麻烦。
对于初学者,个人觉得以下几点确实不太好掌握:
一、总线:我们知道,一个电路总是由元器件通过电线连接而成的,在模拟电路中,连连线并不成为一个问题,因为各器件间一般是串行关系,各器件之间的连线并不很多,但计算机电路却不一样,它是以微处理器为核心,各器件都要与微处理器相连,各器件之间的工作必须相互协调,所以就需要的连线就很多了,如果仍如同模拟电路一样,在各微处理器和各器件间单独连线线,则线的数量将多得惊人,所以在微处理机中引入了总线的概念,各个器件共同享用连线,所有器件的8根数据线全部接到8根公用的线上,即相当于各个器件并联起来,但仅这样还不行,如果有两器件同时送出数据,一个为0,一个为1,那么,接收方接收到的究竟是什么呢?这种情况是是不允许的,所以要通过控制线进行控制,使器件分时工作,任何时候只能有一个器件发送数据(可以有多个器件同时接收)。器件的数据线也就被称为数据总线,器件所有的控制线被称控制总线。
在单片机内部或者外部存储器及其它器件中有存储单元,这些存储单元要被分配地址才能用,由于存储单元比较多,所以,用于地址分的线也较多,这些线被称为地址总线。
二、数据、地址、指令:之所以将这三者放在一起,是因为这三者的本质都是一样的——数字,或者说都是字符串‘0’和‘1’组成的序列。换言之,地址、指令也都是数据。指令由单片机芯片的设计者规定的一种数字,它与我们常用的指令助记符有着严格的一一对应关,不可以由单片机的开发者更改。地址:是寻找单片机内部、外部的存储 单元、输入输出口的依据,内单元的地址值已由芯片设计者规定好,不可更改,外部的单元可以由单片机开发者自行决,但有一些地址单元是一定要有的(详见程序的执行过程)。数据:这是由微处理机处理的象,在各种不同的应用电路中各不相同,一般而言,被处理的数据可能有这么几种情况:
1地址(如MOV DPTR,#1000H),即地址1000H送入DPTR。
2方式字或控制字(如MOV TMOD,#3),3即是控制字。
3常数(如MOV TH0,#10H)10H即定时常数。
4实际输出值,这里0FFH和00H都是实际输出值。又如用于LED的字形码,也是实际出的值。理解了地址、指令的本质,就不难理解程序运行过程中为什么会跑飞,会把数据当成指令来行了。
三、P0口、P2口和P3的第二功能用法初学时往往对P0口、P2口和P3口的第二功能用法迷惑不解,认为第二功能和原功能之间要有个切换的过程,或者说要有一条指令,事实,各端口的第二功能完全是自动,不需要指令来转换。如P3.6、P3.7分别是WR、RD信号,当微片理机外接RAM或有外部I/O口 时,它们挥作第二功能,不能作为通用I/O口使用,只要一微处理机一执行到MOVX指令,就会有相应的信号从 P3.或P3.7送出,不需要事先用指令说明。事实上‘不能作为通用I/O口使用’也并不是‘不能而是(使用者)‘不会’将其作为通用I/O口使用。你完全可以在指令中按排一条S ETB P3.7的指令,并且当单片机执行到这条指令时,也会使P3.7变为高电平,但使用者不会 这么做,因为这通常这会导致系统当溃(即死机)。
四、程序的执行过程 单片机在通电复位后8051内的程序计数器(PC)中的值为‘0000?,所以程序总是从‘0000’单元开始执行,也就是说:在系统的ROM中一定要存在‘0000’个单元,并且在‘0000’单元中存放的一定是一条指令。
五、堆栈 堆栈是一个区域,是用来存放数据的,这个区域本身没有任何特殊之处,就是内部RAM的 一份,特殊的是它存放和取用数据的方式,即所谓的‘先进后出,后进先出’,并且堆栈有特 的数据传输指令,即‘PUSH’和‘OP’,有一个特殊的专为其服务的单元,即堆栈指 针SP 每当执一次 PUSH指令时,SP就(在原来值的基础上)自动加1,每当执行一次POP指令,SP就(在原 来值基础上)?动减1。由于SP中的值可以用指令加以改变,所以只要在程序开始阶段更改了SP值,就可以把堆栈设置在规定的内存单元中,如在程序开始时用一条MOV SP,#5FH指令,就时把堆栈设置在从内存单元60H开始的单元中。
六、单片机的开发过程这里所说的开发过程并不是一般书中所说的从任务分析开始,我们假设已设计并制作好硬件下面就是编写软件的工作。在编写软件之前,首先要确定一些常数、地址,事实?这些常数、地址在设计阶段已被直接或间接地确定下来了。如当某器件的连线设计好后,其地址也就确定了,当器件的功能被确定下来后,其控制字也就被确定了。然后用文本编缉器(如EDIT、CCED 等)写软件,编写好后,用编译器对源程序文件编译,查错,直到没有语法错误,除了极简单程序外,一般应用仿真机对软件进行调试,直到程序运行正确为止。运行正确后,就可以写(将程序固 化在EPROM中)。在源程序被编译后,生成了扩展名为HEX的目标文件,一般编程器能够识别种格式的文件,只要将此文件调入即可写片。在此,为使大家对整个过程有个认识,举 一例子说明: ORG 0000H LJMP START ORG 040H START: MOV SP,#5FH;设堆栈 LOOP: NOP LJMP LOOP ;循环 END ;
有时候单片机的学习很单调,有些知识学起来很抽象,不容易理解,只能慢慢适应,一边学习理论知识,一边编写程序,将程序刷入单片机进行调试,通过这种方式才能更快速的学习单片机。同时也会从学习中体会成功的喜悦。