- nicehost
-
* 回复内容中包含的链接未经审核,可能存在风险,暂不予完整展示!先针对性回答一下你的问题:
1、单片机学习需要的知识,单片机原理,编程技术,电子电路。
2、学无止境,当然要继续学习,C语言对于单片机非常重要,多数人都是用c,包括我。如果从汇编开始我不知道要经过多少努力你才能开始做开发。
3、VB可以做电脑程序开发,可以做成软件和单片机进行通讯,可以用电脑和单片机系统组成一个应用项目。一切知识都是有用的,看你的爱好和你的时间决定吧。
4、单片机和数学基本上没有太直接联系,不要被别人吓住了。
另外再加一条单片机种类选型的看法
5、初学还是建议学习51单片机,因为51单片机容易上手,学习资料也多。你说的指令集51的算是少的了。如果使用汇编的话就要学会每条汇编指令。而现在多数单片机工程师都是选择c语言进行设计。而且c语言的程序除了单片机设置的部分,其他功能运算部分在每种单片机上基本都通用,这叫移植性好,而汇编语言则是每种类型的单片机一种指令集,单片机程序移植困难。
最后再说一下如何具体学习单片机:
很多想学单片机的人问我的第一句话就是怎样才能学好单片机?对于这个问题我今天就我自己是如何开始学单片机,如何开始上手,如何开始熟练这个过程给大家讲讲。
先说说单片机,一般我们现在用的比较多的的MCS-51的单片机,它的资料比较多,用的人也很多,市场也很大。就我个人的体会怎么样才能更快的学会单片机这门课。单片机这门课是一项非常重视动手实践的科目,不能总是看书,但是学习它首先必须得看书,因为从书中你需要大概了解一下,单片机的各个功能寄存器,而说明白点,我们使用单片机就是用软件去控制单片机的各个功能寄存器,再说明白点,就是控制单片机那些管脚的电平什么时候输出高,什么时候输出低。由这些高低电平的变化来控制你的系统板,实现我们需要的各个功能。至于看书,只需大概了解单片机各管脚都是干什么的?能实现什么样的功能?第一次,第二次你可能看不明白,但这不要紧,因为还缺少实际的感观认识。所以我总是说,学单片机看书看两三天的就够了,看小说你一天能看五六本,看单片机你两三天看两三遍就够了,可以不用仔细的看。推荐一本书,就这一本就足够,书名是《新编MCS-51单片机应用设计》,是哈尔滨工业大学出版社出的的,作者是张毅刚。大概了解一下书上的内容,然后实践,这是非常关键的,如果说学单片机你不实践那是不可能学会的,关于实践有两种方法你可以选择,一种方法:你自己花钱买一块单片机的学习板,不要求功能太全的,对于初学者来说你买功能非常多的那种板子,上面有很多东西你这辈子都用不着,我建议有流水灯、数码管、独立键盘、矩阵键盘、AD或DA(原理一样)、液晶、蜂鸣器,这就差不多了。如果上面我提到的这些,你能熟练应用,那可以说对于单片机方面的硬件你已经入门了,剩下的就是自己练习设计电路,不断的积累经验。只要过了第一关,后面的路就好走多了,万事开头难,大家可能都听过。方法二:你身边如果有单片机方面的高手,向他求助,让他帮你搭个简单的最小系统板。对于高手来说,做个单片机的最小系统板只需要一分钟的时间,而对于初学者可就难多了,因为只有对硬件了解了,才能熟练运用。而如果你身边没有这样的高手,又找不到可以帮助你的人,那我劝你最好是自己买上一块,毕竟自己有一块要方便的多,以后做单片机类的小实验时都能用得上,还省事。
有了单片机学习板之后你就要多练习,最好是自己有台电脑,一天少看电影,少打游戏,把学习板和电脑连好,打开调试软件坐在电脑前,先学会怎么用调试软件,然后从最简单的流水灯实验做起,等你能让那八个流水灯按照你的意愿随意流动时你已经入门了,你会发现单片机是多么迷人的东西啊,太好玩了,这不是在学习知识,而是在玩,当你编写的程序按你的意愿实现时你比做什么事都开心,你会上瘾的,真的。做电子类的人真的会上瘾。然后让数码管亮起来,这两项会了后,你已经不能自拔了,你已经开始考虑你这辈子要走哪一行了。就是要这样练习,在写程序的时候你肯定会遇到很多问题,而这时你再去翻书找,或是问别人,当得到解答后你会记住一辈子的,知识必须用于现实生活中,解决实际问题,这样才能发挥它的作用,你自己好好想想,上了这么多年大学,天天上课,你在课堂上学到了什么?是不是为了期末考试而忙碌呢?考完得了90分,哈哈哈好高兴啊,下学期开学回来忘的一干二净,是不是?你学到什么了?但是我告诉你单片机一旦学会,永远不会忘了。另外我再说说用汇编和C语言编程的问题。很多同学大一二就开设了C语言的课,我也上过,我知道那时天天就是几乘几,几加几啊,求个阶乘啊。学完了有什么用?让你用C语言编单片机的程序你是不是就傻了?书上的东西我们必须要会运用。单片机编程用C语言或汇编语言都可以,但是我建议用C语言比较好,如果原来有C语言的基础那学起来会更好,如果没有,也可以边学单片机边学C语言,C语言也挺简单,只是一门工具而已,我劝你最好学会,将来肯定用得着,要不你以后也得学,你一点汇编都不会根本无所谓,但你一点C语言都不会那你将来会吃苦头。汇编写程序代码效率高,但相对难度较大,而且很罗嗦,尤其是遇到算法方面的问题时,根本是麻烦的不得了,现在单片机的主频在不断的提高,我们完全不需要那么高效率的代码,因为有高频率的时钟,单片机的ROM也在不断的提高,足够装得下你用C语言写的任何代码,C语言的资料又多又好找,将来可移植性非常好,只需要变一个IO口写个温度传感器的程序在哪里都能用,所以我劝大家用C语言。
总结上面,只要你有信心,做事能坚持到底,有不成功不放弃的强烈意志,那学个单片机来说就是件非常容易的事。
步骤:1.找本书大概了解一下单片机结构,大概了解就行。不用都看懂,又不让你出书的。(三天)
2.找学习板练习编写程序,学单片机就是练编程序,遇到不会的再问人或查书。 (二十天)
3.自己网上找些小电路类的资料练习设计外围电路。焊好后自己调试,熟悉过程。 (十天)
4.自己完全设计具有个人风格的电路,产品,。。。你已经是高手了。 。。。。
看到了吗?下功夫一个多月你就能成为高手,我就讲这么多了,学不学得会,下不下得了功夫就看你的了。
www.a*****.cn
www.a*****.cn/bbs
- 苏州马小云
-
单片机,啥玩意?
- S笔记
-
我学过单片机,MSC51的,虽然是选修课。刚接触很迷糊,开始老师出了一道很简单的题,我写完以后给老师看,老师把我批评一痛,说什么不按要求做了,自己瞎编乱造之类的,就是没说我哪错了,我一赌气不学了,后来才知道,当时就是在寄存器中计算,没在累加器A中计算,其实他告诉我一声我就明白了,没赶上好老师,没办法。单片机开始学时都这样,不知道很多规则,都要经过一个累计的过程,时间长了,就行了,单片机很有用的。
你学过C语言和VB,基础比我好多了,我是刚开始就学这个,单片机主要内容之一是接口技术。
- 可可
-
你要是学51单片机,那么楼上说的(1)北航出版的单片机原理确实是本好书,我还要推荐 求实科技出版的好书 (2)单片机应用系统开发实例导航 还有人民邮电出版社的(3)例说8051
(1) 是基本原理
(2)(3)是一些程序应用例子(包括电路图)
还有我建议你学pic系列的单片机,因为这种单片机,设计简洁,我个人认为它的内部构造就是像你说的“简明扼要”
你可以在网上找一下关于它的一些介绍,或者问我也行
如果你学pic系列的单片机
那我就推荐几本好书
第一阶段:
(1)北航出版社的 pic单片机入门与实战(初学的时候看,一直看到第5章,等到该看第6章的时候换书,我觉得这本书前5章经典的不能再经典,从第6章开始垃圾的不能在垃圾)
(2)求实科技的 PIC单片机典型模块设计实例导航[有一些程序应用例子(包括电路图)]
第二阶段(第一阶段看完后再买下面这些):
(3)PIC单片机实用教程--提高篇(经典啊,个人认为)
(4)PIC单片机实用教程--基础篇 (虽是基础篇,但不要忽视,有定时器等章节)
第三阶段:
不用买书了,接项目了,自己挣钱了
关于语言:是辨证的,
汇编:最接近硬件,用它编程序,可以在编程的时候,更加深对单片机内部结构的了解,而且汇编的实时性好,但是可读性差,程序长,对编程者的汇编语言的水平有较高的要求
C语言:编程较容易,程序短,可读性强,看实时性没有汇编好,控制硬件也不想汇编那么接近硬件
本人认为:二者皆有好的一方面,我建议先用汇编,汇编掌握了很好的时候再用c语言,最终达到用c嵌套汇编的编程风格。
对于那些一开始就用C的,本人绝对不支持,个人认为那是不可取的一条死路
单片机原理及应用张毅刚第三版
单片机原理及应用作者张毅刚哈尔滨工业大学 电气工程及自动化学院 教授/教学带头人/省教学名师完整版单片机原理及应用课后习题2023-08-17 09:16:271
帮忙介绍嵌入式操作系统与微控制器的书
看书有点难,不如看视频2023-08-17 09:20:133
新编mcs-51单片机应用设计第3版 张毅刚怎样
张老师的书都不错,最经典的是《单片机原理与应用》这本书,对于初学者来说非常适合。国内的书都差不多, 随便找一本看就行, 重要的是多动手。2023-08-17 09:20:271
单片机中dw定义后数据位置问题
你说的对啊,DW的首地址为2000H,由于是8位单片机,所以(2000H)=12H(2001H)=46H2023-08-17 09:20:403
求大神帮忙用C语言解决一下,不胜感激,单片机
我会2023-08-17 09:21:072
关于单片机的参考文献要具体页码, 要求至少出现2篇英文,期刊需要页码,有的发我邮箱,332316369@qq.com
[1] 张毅刚.《新编MCS51单片机应用设计(第三版)》,哈尔滨:哈尔滨工业大学出版社,2008[2] 何立民.《单片机应用技术选编》,北京:北京航空大学出版社,1998[3] 李华.《MCS-51系列单片机使用接口技术》,北京:北京航空航天大学出版社,1993[4] 彭为.《单片机典型系统设计实例精讲》,北京:电子工业出版社,2006[5] 潘永雄.《新编单片机原理与应用》,西安:西安电子科技大学出版社,2003[6] 童诗白,华成英,《模拟电子技术基础》,北京:高等教育出版社,2000[7] 阎石主.《数字电子技术基础》,北京:高等教育出版社,1998[8] 樊昌信,曹丽娜.《通信原理》,北京:国防工业出版社,2007[9] 李瀚荪.《电路分析基础》,北京:高等教育出版社1991毕 业 论 文(设 计)开 题 报 告[10]G.Edward Suh, Charles W.O"Donnell, Srinivas Devadas, Aegis:a single-chip secure processor, IEEE Design and Test of Computers.2008,24(6)570-580.[11] Mt. Prospect.MCS 51 Family of Microcontrollers Architectural Overview. September 19932023-08-17 09:21:291
求《单片机原理及应用(第二版)》 张毅刚 PDF教材 ,谢谢
这个有pdf的吗2023-08-17 09:21:392
毕业论文范本的论文正文
目录第一章 前言…………………………………………………………………………3第二章 单片机概述………………………………………………………………42.1单片机的定义……………………………………………………………………42.2单片机的发展方向…………………………………………………………52.3 单片机的应用……………………………………………………………………52.4 MCS-51简介………………………………………………………………………6第三章 单片机交通灯控制……………………………………………………………73.1 硬件电路……………………………………………………………………………73.1.1芯片选用……………………………………………………………………………73.1.2硬件电路图……………………………………………………73.1.3系统工作原理………………………………………………………………………73.2软件设计………………………………………………………………83.2.1 每秒钟的设定………………………………………………………83.2.2 计数器初值计算………………………………………………………83.2.3 综合计算………………………………………………………83.2.4 设定一秒的方法………………………………………………………83.2.5 程序设计………………………………………………………83.3 软件延时………………………………………………………93.4 时间及信号灯显示………………………………………………………93.5 程序………………………………………………………13第四章 总结……………………………………………………………………………12参考文献………………………………………………………………………………13致谢………………………………………………………………………………14第一章 前言城市交通是保持城市活力最主要的基础设施,是城市生活的动脉,制约着城市经济的发展。展望21世纪的城市交通事业,给我们提出了更高要求。发展多层次、立体化、智能化的交通体系,将是城市建设发展中普遍追求的目标。而发展大、中、低客运量相互匹配的多种形式相结合的客运交通工具,将是实现上述远景目标的一项重大技术决策措施。自改革开放以来,我国的城市规模和经济建设都有了飞速的发展7城市化进程在逐步加快,城市人口在急剧增加,大量流动人口涌进城市,人员出行和物资交流频繁,使城市交通面临着严峻的局势。当前,全国大中城市普遍存在着道路拥挤、车辆堵塞、交通秩序混乱的现象。如何解决城市交通问题已成为全社会关注的焦点和大众的迫切呼声。当今,红绿灯安装在各个交通要道上已经成为了缓解交通问题最常见、最根本、最有效的方法。交通灯的出现使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显的效果。单片机是一种集成的微型计算机,与微处理器相比,它可单独地完成现代工业控制所要求的智能化控制功能,它有唯一的、专门为嵌入式应用而设计的体系结构和指令系统。红绿灯的控制有PLC控制,单片机控制等方法,随着近年来单片机控制交通灯技术的成熟,单片机给交通带来了很大的便利。第二章 单片机概述二十世纪七十年代,微电子技术正处于发展阶段,集成电路属于中规模发展时期,各种新材料新工艺尚未成熟,单片机仍处在初级的发展阶段。1974年,美国研制出了世界第一台单片微型计算机F8,深受家用电器和仪器仪表领域的欢迎和重视,从此拉开了研制单片机的序幕。2.1单片机的定义所谓单片机,即把组成微型计算机的各个功能部件,如中央处理器(CPU)、随机存储器(RAM)、只读存储器(ROM)、输入/输出接口电路(I/O口)、定时/计数器以及串行通信接口等集成在一块芯片中,构成一个完整的微型计算机。这些电路能在软件的控制下准确、迅速、高效地完成程序设计者事先规定的任务。与微处理器相比,它可单独地完成现代工业控制所要求的智能化控制功能,它有唯一的、专门为嵌入式应用而设计的体系结构和指令系统这是单片机最大的特征。现代单片机加上了中端单元、定时单元及A/D转换电路等更复杂、更完善的电路,使得单片机的功能越来越强大,应用更广泛。因此可以把单片机理解为一个单芯片形态的微控制器。单片机是单芯片形态作为嵌入式应用的计算机,它有唯一的、专门为嵌入式应用而设计的体系结构和指令系统,加上它的芯片级体积的优点和在现场环境下可高速可靠地运行的特点,因此单片机又称为嵌入式微控制器。2.2单片机的发展方向单片机的发展趋势将是向着高性能化,大容量,小容量、低价格化及外围电路内装化等几个方面发展。(1)单片机的高性能化:主要是指进一步改进CPU的性能,加快指令运算的速度和提高系统控制的可靠性,并加强了位处理功能、中断和定时控制功能;采用流水线结构,指令以队列形式出现在CPU中,从而有很高的运算速度。(2)片内存储器大容量化:以往单片机的片内ROM为1到4KB,RAM为64到128B。因此在一些较复杂的应用系统中,存储器容量就显得不够,不得不外扩存储器。为了适应这种领域的要求,利用新工艺,将片内存储器的容量大幅度增加,不得不外扩存储器。为了适应这种领域的要求,利用新工艺,将片内存储器的容量大幅度增加,片内ROM可以达到12KB。(3)小容量、低价格化:与上述相反,小容量、低价格化的4位、8位单片机也是发展方向之一。这类单片机主要用于儿童玩具等较小规模的控制系统。(4)外围电路内装化:随着集成度的不断提高,有可能把众多的各种外围功能器件集成在片内。除了一般必须具备的CPU、RAM、ROM、定时/计数器等之外,片内集成的部件还有A/D、D/A转换器,DMA控制器,声音发生器,监视定时器,液晶显示驱动器,彩色电视机和录像机用的锁相电路等。(5)增强I/O接口功能:为了减少外部驱动芯片,进一步增加单片机并行口的驱动能力,现在有些单片机可直接输入大电流和高电压,以便直接驱动显示器。(6)加快I/O接口的传输速度:有些单片机设置了高速I/O接口,以便能以更快的速度触发外围设备,以更快的速度读取数据。2.3单片机的应用单片机广泛应用于仪器仪表、家用电器、医用设备、航空航天、专用设备的智能化管理及过程控制等领域,大致可分为如下几个:1.在计算机网络和通信领域中的应用;2.在工业控制中的营运;3.在家用电器中的应用;4.在智能仪器仪表上的应用;5.在医用设备领域的应用;2.4 MCS-51简介MCS-51系列单片机在结构上基本相同,只是在个别模块和功能上有些区别。MCS-51单片机是在一块芯片中集成了一个8位CPU、128B RAM、4KB ROM、两个16位定时/计数器、32个可编程I/O口和一个可编程的全双工串行接口、五个中断源、一个片内振荡器等。1.中央处理器(CPU):中央处理器是单片机的核心部分,是一个8位的中央处理单元,它对数据的处理是以字节为单位进行的,CPU主要由运算器、控制器和寄存器阵列组成。2.数据存储器(片内RAM):数据存储器用于存放变化的数据。在8051单片机中,通常把控制与管理寄存器(简称为“专用寄存器”)在逻辑上划分在片内RAM中,因为其地址与RAM是连续的。8051单片机数据存储器的地址空间为256个RAM单元,但其中能作为数据存储器供用户使用的仅有前面128个,后128个被专用寄存器占用。3.程序存储器(片内ROM):程序存储器用于存放程序和固定不变的常数、表格等。通常采用只读存储器,且其有多种类型。4.定时/计数器:定时/计数器用于实现定时和计数功能。8051单片机共有两个16位定时/计数器,8052单片机共有三个16位定时/计数器。5.并行I/O口:8051单片机共有四个8位的并行I/O(P0、P1、P2、P3),每个口都由一个锁存器和一个驱动器组成。并行I/O口主要是用于实现与外部设备中数据的并行输入/输出,有些I/O口还具有其他功能。6.串行口:8051单片机有一个全双工异步串行口,用以实现单片机和其他具有相应接口的设备之间的异步串行数据传送。7.时钟电路:时钟电路的作用是产生单片机工作所需要的时钟脉冲序列。8.中断系统:中断系统的主要作用是对外部或内部的中断请求进行管理与处理。8051单片机的中断系统可以满足一般控制应用的需要:共有五个中断源,其中有两个外部中断源INT0和INT1、三个内部中断源(两个定时/计数器中断和一个串行口中断);此外,8052单片机还增加了一个定时器2的中断源。第三章 交通灯单片机控制3.1 硬件电路3,1.1芯片选用:选用设备8031单片机一片,8255并行通用接口芯片一片,74LS07,MAX692“看门狗”一片,共阴极的七段数码管两个,双向晶闸管若干,7805三端稳压电源一个,红、黄、绿交通灯各两个,开关键盘、连线若干。3.1.2 硬件电路图:3.1.3 系统工作原理:1.开关键盘输入交通灯初始时间,通过8051单片机P1输入到系统。2.由8051单片机的定时器每秒钟通过P0口向8255的数据口传送信息,由8255的PA口显示红、绿、黄等的燃亮情况;由8255的PC口显示每个灯的燃亮时间。3.8051通过设置各个信号等的燃亮时间,通过8031设置,绿、红时间分别为60秒,80秒循环由8051的P0口向8255的数据口输出。4.通过8051单片机的P3.0位来控制系统的工作或设置初值,当牌位0就对系统进行初始化,为1系统就开始工作。5.红灯倒计时时间,当有车辆闯红灯时,启动蜂鸣器进行报警,3S后恢复正常。6.增加每次绿灯时间车流量检测的功能,并且通过查询P2.0端口的电平是否为低,开关按下为低电平,双位数码管显示车流量,直到下一次绿灯时间重新记入。7.绿灯时间倒计时完毕,重新循环。3.2 软件设计3.2.1每秒钟的设定:利用MCS-51内部定时器材溢出中断来确定1秒的时间。3.2.2 计数器初值计算:定时器工作时必须给计数器送计数器初值,这个值是送到TH和TL中的,他是以加法计数的,并能从全1到全0时自动产生溢出中断请求。因此,我们可以把计数器记满为零所需的计数值设定为C和计数初值设定为TC,即:TC=M-C;式中,M为计数器模值,该值和计数器工作方式有关,在方式0时M为213;在方式1时M的值为216;在方式2和3时为28。3.2.3 综合计算:T=(M-TC)T1 或者 TC=M-T/T1 式中T1是单片机时钟周期的12倍;TC为定时初值。这种方法在使用后悔超过计数器的最大定时间,所以再采用定时器和软件相结合的办法。3.2.4 设定一秒的方法:我们采用在主程序中设定一个初值为20的软件计数器和使T0定时50毫秒,这样每当T0到50毫秒时CPU就响应它的溢出中断请求,进入他的中断服务子程序,在中断子程序中,CPU先使软件计数器减1,然后判断它是否为零,为零表示1秒已到可以返回到输出时间显示程序。3.2.5 程序设计:1.主程序:定时器定时50毫秒,故T0工作于方式1,初值:TC=M-T/T1=216-50ms/1us=3CBOHORG 1000HSTART:MOV TMOD, #01H; 令T0为定时器方式1MOV TH0, #3CH; 装入定时器初值MOV TL0, #BOH;MOV IE, #82H; 开T0中断SEBT TR0; 启动T0计数器MOV R0, #14H; 软件计数器赋初值LOOP: SJMP S; 等待中断2.中断服务子程序:ORG 000BHAJMP BRT0ORG 00BHBRT0:DJNZ R0,NEXT AJMP TIME; 跳转到时间及信号灯显示子程序DJNZ:MOV R0,#14H; 恢复R0值MOV TH0,#3CH; 重装入定时器初值MOV TL0,#BOH;MOV IE, #82HRET1END3.3 软件延时MCS-51的工作频率为2-12MHZ,我们选用的8051单片机的工作频率为6MHX,机器周期与主频由关,机器周期是主频的12倍,所以一个机器周期的时间为12*(1/6M)=2us,我们可以知道具体每条指令的周期数,这样我们就可以通过指令的执行条数来确定1秒的时间。3.4时间及信号灯显示当定时器定时为1秒时,程序跳转到时间显示及信号灯显示子程序,它将依次显示信号灯时间,同时一直显示信号灯的颜色,这时在返回定时子程序定时一秒,在显示黄灯的下一个时间,这样依次把所有的灯色的时间显示完后再重新给时间计数器赋初值,重新进入循环。由于发光二极管为共阳极接法,输出端口为低电平,对应的二极管发光,所以可以用复位方法点亮红,绿,黄发光二极管。3.5 程序实现交通灯的交替控制及特殊情况(如急救车等)通过时 ,通过外中断实现:North_South_Red BIT P1.0North_South_Yellow BIT P1.1North_South_Green BIT P1.2East_West_Red BIT P1.3East_West_Yellow BIT P1.4East_West_Green BIT P1.5Scd EQU 30H ;秒ORG 0000HJMP STARTORG 0003HJMP INIT0ORG 000BHJMP TIME0交通灯交替工作时,红绿黄交替点亮: 红灯亮33秒钟后绿灯亮27秒,然后闪烁3秒,最后黄灯点亮三秒 ,循环。TIME0:MOV TH0,#30HMOV TL0,#0B0HINC 31HMOV A,31HN: CJNE A,#20,EXIT ;判断是否到一秒MOV 31H,#0INC ScdMOV A,ScdCJNE A,#27,NEXT1 ;判断绿灯是否到27sSETB F0JMP EXITNEXT1: MOV A,ScdCJNE A,#30,NEXT2 ;判断绿灯是否亮30sCLR F0MOV P1,#0EEHJMP EXITNEXT2:MOV A,ScdCJNE A,#33,NEXT3MOV P1,#0F3H ;初始化NEXT3:MOV A,ScdCJNE A,#60,NEXT4SETB 00HJMP EXITNEXT4: MOV A,ScdCJNE A,#63,NEXT5CLR 00HMOV P1,#0F5HJMP EXITNEXT5: MOV A,ScdCJNE A,#66,EXITMOV P1,#0DEHMOV Scd,#0EXIT: RETI外中断:东西方向出现特殊情况 时南北红灯亮,东西绿灯亮,延时10s。INIT0:PUSH PSWPUSH ACCCLR EAMOV R2,P1 ;保存数据MOV P1,#0F6HCALL DELLAY10SMOV P1,R2 ;恢复SETB EAPOP ACCPOP PSWRETI主程序:START:MOV Scd, #00HMOV 31H, #00HMOV P1, #0FFHCLR 00HCLR F0MOV TMOD, #01H ;设定定时器1MOV IE, #83H ;设定中断使能 定时器中断0、外部中断0和1MOV SP, #60HMOV TH0, #30HMOV TL0, #0B0HSETB TR0LOOP:JNB F0,N0CPL East_West_Green ;绿灯闪三秒CALL DELAY500MSJMP N1N0:JNB 00H,N1CPL North_South_Green ;绿灯闪三秒CALL DELAY500MSN1:JMP LOOP第四章 总结本系统实现了红、绿灯燃亮时间的功能,红绿灯循环点亮,倒计时剩5秒时黄灯闪烁警示。车辆闯红灯报警;绿灯时间可检测车流量并可通过双位数码管显示。系统不足之处不能控制车的左、右转、以及自动根据车流改变红绿灯时间等。这是由于本身地理位子以及车流量情况所定,如果有需要可以设计扩充原系统来实现。通过此次课题的研究,让我更加深入的了解了单片机的一些功能,对于单片机在日常生活中的运用有了更深层次的了解。在研究时也发现了自身对于单片机的不理解之处,并查看相关书籍等资料解决了不懂的问题。结合实际工作中的实践,和这次的毕业论文撰写,了解了很多也学到了很多。同时,对以前所学的专业知识,有了进一步的加深和巩固。参考文献[1] 张国锋.单片机原理及应用[J].高等教育研究,200.9.8[2] 张毅坤.单片微型计算机原理及运用,西安电子科技大学出版社,1998[3] 胡汉才.单片机原理及其接口技术[M].北京:清华大学出版社,2004.5[4] 胡乾斌.单片机原理与应用[M].华中科技大学出版社.2006[5] 张毅刚.单片机原理及接口技术[M].哈尔滨:哈尔滨工业大学出版社,1990[6] 雷丽文.微机原理与接口技术,北京:电子工业出版社,1997.2[7] 余锡存 曹国华.单片机原理及接口技术,陕西:西安电子科技大学出版社,2000.7致谢通过这段时间的研究设计学习,我学到了很多以前不知道的知识,并且在学习中培养了一种做事情一丝不苟的态度和耐心,为以后的工作打下了坚实的基础。在此我要向我们论文的指导老师表示衷心的感谢,可以让我通过这次机会系统学习了单片机的有关知识,并能具体结合实践生活完成交通灯的设计,他幽默,风趣,严谨的教学作风将是我学习的榜样。2023-08-17 09:22:091
如何学习单片机?
我有一块AVR atmega16实验板不知道如何进行初步学习?、 何谓单片机 一而在单片机中,这些部份,全部被做到一块集成电路芯片中了,所以就称为单片2023-08-17 09:22:312
什么叫单片机???????
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机了解计算机原理与结构的最佳选择。 可以说,二十世纪跨越了三个“电”的时代,即电气时代、电子时代和现已进入的电脑时代。不过,这种电脑,通常是指个人计算机,简称PC机。它由主机、键盘、显示器等组成(如图1所示)。还有一类计算机,大多数人却不怎么熟悉。这种计算机就是把智能赋予各种机械的单片机(亦称微控制器,如图2所示)。顾名思义,这种计算机的最小系统只用了一片集成电路,即可进行简单运算和控制。因为它体积小,通常都藏在被控机械的“肚子”里。它在整个装置中,起着有如人类头脑的作用,它出了毛病,整个装置就瘫痪了。现在,这种单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词——“智能型”,如智能型洗衣机等。现在有些工厂的技术人员或其它业余电子开发者搞出来的某些产品,不是电路太复杂,就是功能太简单且极易被仿制。究其原因,可能就卡在产品未使用单片机或其它可编程逻辑器件上单片机的几部份 一、总线:我们知道,一个电路总是由元器件通过电线连接而成的,在模拟电路中 ,连连线并不成为一个问题,因为各器件间一般是串行关系,各器件之间的连线并不很 多,但计算机电路却不一样,它是以微处理器为核心,各器件都要与微处理器相连,各 器件之间的工作必须相互协调?所以就需要的连线就很多了,如果仍如同模拟电路一样 ,在各微处理器和各器件间单独连线线,则线的数量将多得惊人,所以在微处理机中引 入了总线的概念,各个器件共同享用连线,所有器件的8根数据线全部接到8根公用的线 上,即相当于各个器件并联起来,但仅这样还不行,如果有两?器件同时送出数据,一 个为0,一个为1,那么,接收方接收到的究竟是什么呢?这种情况是是不允许的,所以 要通过控制线进行控制,使器件分时工作,任何时候只能有一个器件发送数据(可以有 多个器件同时接收)。器件的数据线也就被称为数据总线,器件所有的控制线被称 控制 总线。 在单片机内部或者外部存储器及其它器件中有存储单元,这些存储单元要被分配 地址,才能 用,分配地址当?也是以电信号的形?给出的,由于存储单元比较多,所以 ,用于地址分的线也较多,这些线被称为地址总线。 二、数据、地址、指令:之所以将这三者放在一起,是因为这三者的本质都是一样的—数字,或者说都是?串‘0"和‘1"组成的序列。换言之,地址、指令也都是数据 。指令由单片机芯片的设计者规定的一种数字,它与我们常用的指令助记符有着严格的 一一对应关,不可以由 单片机的开发者更改。地址:是寻找单片机内部、外部的存储 单元、输入输出口的依据,内 单元的地址值已由芯?设计者规定好,不可更改,外部的 单元可以由单片机开发者自行决,但有一些地址单元是一定要有的(详见程序的执行过 程)。数据:这是由微处理机处理的 象,在各种 不同的应用电路中各不相同,一般而言,被处理的数据可能有这么几种情况: 1地址(如MOV DPTR,#1000H),即地址1000H送入DPTR。 2方式字或控制字(如MOV TMOD,#3),3即是控制字。 3常数(如MOV TH0,#10H)10H即定时常数。 4实际输出值(如P1口接彩灯,要灯全亮,则执行指令:MOV P1,#0FFH,要灯全暗, 则执 兄 令:MOV P1,#00H)这里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开始的单元中。一般程序的开头总有这 么?条设置堆栈指针的指令,因为开机时,SP的初始值为07H,这样就使堆栈从08H单元 开始往后?8H到1FH这个区域正是8031的第二、三、四工作寄存器区,经常要被使用,这会造成 数?的浑乱。不? 作者编写程序时,初始化堆栈指令也不完全相同,这是作者的习惯问 题。当设置好堆栈区?,并不意味着该区域成为一种专用内存,它还是可以象普通内存 区域一样使用,只是一般情 下编程者不会把它当成?通内存用了。 六、单片机的开发过程 这里所说的开发过程并不是一般书中所说的从任务分析开始,我们假设已设计并制作好 硬件下面就是编写软件的工作。在编写软件之前,首先要确定一些常数、地址,事实?这些 常?、地址在设计阶段已被直接或间接地确定下来了。如当某器件的连线设计好后,其 地址也就确定了,当 器件的功能被确定下来后,其控制字也就被确定了。然后用文本编缉器(如EDIT、CCED 等)写软件,编写好后,用编译器对源程序文件编译,查错,直到没有语法错误,除了极简 单?程序外,一般应用仿真机对软件进行调试,直到程序运行正确为止。运行正确后, 就可以写(将程序固 化在EPROM中)。在源程序被编译后,生成了扩展名为HEX的目标文件,一般编程器能够 识别种格式的文件,只要将此文件调入即可写片。在此,为使大家对整个过程有个认识,举 一?说明: ORG 0000H LJMP START ORG 040H START: MOV SP,#5FH ;设堆栈 LOOP: NOP LJMP LOOP ;循环 END 单片机概述 1、何谓单片机 一台能够工作的计算机要有这样几个部份构成:CPU(进行运算、控制)、RAM(数据存储)、ROM(程序存储)、输入/输出设备(例如:串行口、并行输出口等)。在个人计算机上这些部份被分成若干块芯片,安装一个称之为主板的印刷线路板上。而在单片机中,这些部份,全部被做到一块集成电路芯片中了,所以就称为单片(单芯片)机,而且有一些单片机中除了上述部份外,还集成了其它部份如A/D,D/A等。 天!PC中的CPU一块就要卖几千块钱,这么多东西做在一起,还不得买个天价!再说这块芯片也得非常大了。 不,价格并不高,从几元人民币到几十元人民币,体积也不大,一般用40脚封装,当然功能多一些单片机也有引脚比较多的,如68引脚,功能少的只有10多个或20多个引脚,有的甚至只8只引脚。 为什么会这样呢? 功能有强弱,打个比方,市场上面有的组合音响一套才卖几百块钱,可是有的一台功放机就要卖好几千。另外这种芯片的生产量很大,技术也很成熟,51系列的单片机已经做了十几年,所以价格就低了。 既然如此,单片机的功能肯定不强,干吗要学它呢? 话不能这样说,实际工作中并不是任何需要计算机的场合都要求计算机有很高的性能,一个控制电冰箱温度的计算机难道要用PIII?应用的关键是看是否够用,是否有很好的性能价格比。所以8051出来十多年,依然没有被淘汰,还在不断的发展中。 2、MCS51单片机和8051、8031、89C51等的关系 我们平常老是讲8051,又有什么8031,现在又有89C51,它们之间究竟是什么关系? MCS51是指由美国INTEL公司(对了,就是大名鼎鼎的INTEL)生产的一系列单片机的总称,这一系列单片机包括了好些品种,如8031,8051,8751,8032,8052,8752等,其中8051是最早最典型的产品,该系列其它单片机都是在8051的基础上进行功能的增、减、改变而来的,所以人们习惯于用8051来称呼MCS51系列单片机,而8031是前些年在我国最流行的单片机,所以很多场合会看到8031的名称。INTEL公司将MCS51的核心技术授权给了很多其它公司,所以有很多公司在做以8051为核心的单片机,当然,功能或多或少有些改变,以满足不同的需求,其中89C51就是这几年在我国非常流行的单片机,它是由美国ATMEL公司开发生产的。以后我们将用89C51来完成一系列的实验。 资料来自《平凡的单片机》2023-08-17 09:22:4211
80c51单片机在应用中P0和P2是否可以直接作为输入或输出连接开关、指示灯等外围设备
对.2023-08-17 09:23:246
单片机学到什么样子才算是高手了
同意他们的看法2023-08-17 09:23:426
学习单片机C语言,哪些书比较好?
单片机C语言,汇编,数据结构,之类的,之后GUI,……。2023-08-17 09:24:014
目前单片机都是几位的??
单片机的发展可分为四个阶段:1974-1976:单片机初级阶段。因工艺限制,单片机采用双片的形式,而且功能比较简单。1974年12月,仙童公司推出了8位的F8单片机,实际上只包括了8位CPU,64字节RAM和2个并口,从此开创了单片机发展的初级阶段。1976-1978年:低性能单片机阶段。1976年Intel公司推出的MCS-48单片机极大的促进了单片机的变革。1977年GI公司推出了PIC1650,但这个阶段的单片机仍然处于低性能阶段。1978-1983年:高性能单片机阶段。1978年Zilog公司推出了Z8单片机,1980年Intel公司在MCS-48单片机的基础上推出了MCS-51系列单片机,Motorola公司推出6801单片机,这些产品使单片机的应用上了一个新台阶。此后,各公司的8位单片机迅速发展起来。由于8位单片机的性价比较高,被广泛使用,仍然是目前应用数量较多的单片机产品之一。1983-现在:8位单片机巩固发展及16位单片机,32位单片机推出阶段。16位单片机的典型产品为intel公司生产的MCS-96系列单片机。而32位单片机除了具有更高的集成度外,其数据处理速度比16位单片机提高很多,性能比8位,16位单片机更为优越。参考自:张毅刚,彭喜元。单片机原理与应用设计。哈尔滨工业大学出版社,2008,07。PS:全部手打的,累死了,希望对你有所帮助!2023-08-17 09:24:094
求有关单片机设计电热水壶的相关文献?
[1] 杨红科.HT46R47在电热水壶中的应用[J].微计算机信息,2004,20(11):1-2.[2] 李华.MCS-51系列单片机实用接口技术[M].北京:北京航空航天大学出版社,1993:28-35.[3] 李晓静. 液晶显示控制器与单片机的接口及编程[J].电子技术,2004,10(6):35-40.[4] 清源计算机工作室.PROTEL 99 SE电路设计与仿真[M].北京:机械工业出版社,2001:45-90.[5] 王树勋.单片微机计算机原理与开发[J]. 应用科技,1989,15(6):89-124.[6] 陈奥初.单片机应用系统设计与实施[M].北京:北京航空航天大学出版社,1991:351-389.[7] 何立民.单片机应用系统设计[J]. 鄂州大学学报,1990,35(10):25-96.[8] 宋宏运.单片微机计算机原理及应用[M].重庆:重庆大学出版社,1990:212-320.[9] 张毅刚. MCS-51单片机应用设计[M].哈尔滨:哈尔滨工业大学出版社,1990:51-90.[10] 周明德.微型计算机硬件软件及应用[J]. 新余高专学报,1982,13(2):20-45.[11] 刘光斌.单片机系统实用抗干扰技术[J]. 电子技术,2004,29(12A):99-140.[12] 王福瑞.单片机测控系统设计大全[M].北京:北京航空航天大学出版社,2002:375-410.[13]吴金.8051单片机实践与应用[J]. 应用科技,2002,26(4):45-73.[14] 全国大学生电子设计竞赛获奖作品精选[J]. 电子技术,2003,30(2):4-5.[15] 全国大学生电子设计竞赛获奖作品汇编[J]. 电子技术,2004,26(15):45-46.[16] KIM S,CLARKW W,WANGQ M.Piezoelectric energy harvesting using a diaphragm structure[J] .SPIE,2003, 26(5055) :307-318. [17] GLYNNE-JONES P,TUDORM J,BEEBYS P,etal.An electromagnetic,vibration-poweredgenerator for in-telligent sensor systems[J] .S.ensorsand Actuators A, 2004,45(110) :344-349.2023-08-17 09:24:171
单片机开发是什么意思?怎么开发?
单片机开发是指用在单片机上编写开发应用程序。单片机开发涉及到硬件设计及软件编程,必须经过专门学习培训才能胜任开发工作。 单片机(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。2023-08-17 09:24:273
学习单片机怎么入门?
我想学习单片机但不知道该从那方面先下手,各位高手指教一下!先说一下个人情况,本人对模拟电路和数字电路都懂一点但不能说很熟练,学习过PLC并能应用,有一台个人PC。1. 学习单片机应该具备那些基础知识?2. 我们学单片机是为以后的工作着想,不是仅仅在学校里逞一时的风光! 首先我们要把数电模电搞熟练,会用数电设计一些具有一定功能的中等难度的电路再做成板子试验一下,这样我们会摸索到怎样排版布线,和一些注意事项!位以后单片机做板子时的消除干扰做准备。其次要学习汇编语言,尽可能的用汇编编程做产品,在汇编熟练以后,那么我们对单片的原理和内部结构就基本上都掌握了。然后我们再开始学习C语言编程,这时的C语言编程对你来说简直是小菜一碟!学习这些的同时,也要了解一些常用系列的芯片的用处,至于引脚功能我们完全可以不记,毕竟我们不是电脑不可能记得那么多东西! 另外,在开始学汇编语言时,就要买个单片机学习板,也不要买太贵的,将近两百的就可以了,学习板应包括矩阵键盘、独立键盘、点阵、红外线的接收与发射、 流水灯、蜂鸣器发声、继电器控制、数码管的静态动态显示、AD转化、DA转换等,至于1602液晶、12864液晶这样的就根据你的经济情况而定了。 此外,还要把这几个软件应用熟练:Keil:用于运行、调试程序; Altium designer 6.5 :用于画电路图,使之生成PCB图后制作单片机板子rotues:用于电路的仿真,避免浪费器材和时间,在里面画好电路图后,然后把程序运行保存好之后烧入单片机里,进行仿真模拟。 推荐书籍:1.编MCS-51单片机应用设计 哈尔滨工业大学出版社 张毅刚 此书主要以汇编语言为主,对单片机内部结构介绍较详细,初学者可选择本书。 2.8051系列单片机C程序设计完全手册 人民邮电出版社 求是科技 此书主要讲了单片机的C语言编程及很多例子,可参考,是一本非常好的书。 单片机是不会被淘汰的,它只会不断的更新,只要你把以上学好了,找一份收入不错的工作绝对是轻而易举的!现在的确有了更新的一种叫VHDL ,它好像是以前美国国防部发明的一种语言,但是它也是从汇编延伸而来。兄弟万事开头难,要坚持下来! 在你把那些都学精后,你可以向更高层发展。但是估计你在校期间时间是不够了!呵呵。。。。 努力,少玩点!不要想着泡个妞,上个网,包个夜,搓一顿,这些都是不现实的东西!等你一无所获的时候,他们就会员离你而去!2023-08-17 09:24:371
求用单片机制作简易信号发生器的程序以及电路图
清华大学去出的一本单片机实战书上有,你可以去看看/2023-08-17 09:24:493
想自学linux,主要是用ARM开发板做项目
鸟哥私房菜----入门linux就没问题了.书中告诉你怎么学linux2023-08-17 09:25:124
如何学习单片机
就我个人的体会怎么样才能更快的学会单片机这门课。单片机这门课是一项非常重视动手实践的科目, 不能总是看书,但是学习它首先必须得看书,因为从书中你需要大概了解一下,单片机的各个功能寄存器, 而说明白点,我们使用单片机就是用软件去控制单片机的各个功能寄存器,再说明白点,就是控制单片机那 些管脚的电平什么时候输出高,什么时候输出低。由这些高低电平的变化来控制你的系统板,实现我们需要 的各个功能。至于看书,只需大概了解单片机各管脚都是干什么的?能实现什么样的功能?第一次,第二次 你可能看不明白,但这不要紧,因为还缺少实际的感观认识。所以我总是说,学单片机看书看两三天的就够 了,看小说你一天能看五六本,看单片机你两三天看两三遍就够了,可以不用仔细的看。推荐一本书,就这 一本就足够,书名是《新编MCS-51单片机应用设计》,是哈尔滨工业大学出版社出的的,作者是张毅刚。大 概了解一下书上的内容,然后实践,这是非常关键的,如果说学单片机你不实践那是不可能学会的,关于实 践有两种方法你可以选择,一种方法:你自己花钱买一块单片机的学习板,不要求功能太全的,对于初学者 来说你买功能非常多的那种板子,上面有很多东西你这辈子都用不着,我建议有流水灯、数码管、独立键盘 、矩阵键盘、AD或DA(原理一样)、液晶、蜂鸣器,这就差不多了。如果上面我提到的这些,你能熟练应用 ,那可以说对于单片机方面的硬件你已经入门了,剩下的就是自己练习设计电路,不断的积累经验。只要过 了第一关,后面的路就好走多了,万事开头难,大家可能都听过。方法二:你身边如果有单片机方面的高手 ,向他求助,让他帮你搭个简单的最小系统板。对于高手来说,做个单片机的最小系统板只需要一分钟的时 间,而对于初学者可就难多了,因为只有对硬件了解了,才能熟练运用。而如果你身边没有这样的高手,又 找不到可以帮助你的人,那我劝你最好是自己买上一块,毕竟自己有一块要方便的多,以后做单片机类的小 实验时都能用得上,还省事。 有了单片机学习板之后你就要多练习,最好是自己有台电脑,一天少看电影,少打游戏,把学习板和电脑连 好,打开调试软件坐在电脑前,先学会怎么用调试软件,然后从最简单的流水灯实验做起,等你能让那八个 流水灯按照你的意愿随意流动时你已经入门了,你会发现单片机是多么迷人的东西啊,太好玩了,这不是在 学习知识,而是在玩,当你编写的程序按你的意愿实现时你比做什么事都开心,你会上瘾的,真的。做电子 类的人真的会上瘾。然后让数码管亮起来,这两项会了后,你已经不能自拔了,你已经开始考虑你这辈子要 走哪一行了。就是要这样练习,在写程序的时候你肯定会遇到很多问题,而这时你再去翻书找,或是问别人2023-08-17 09:25:221
怎样学习单片机,应该如何着手?
从学51单片机开始,看书,然后自己实际操作编程,从最简单的编程入手开始,如控制1个LED灯亮,然后再一步步的加深。实际动手操作很重要,光看书是学不出来的。2023-08-17 09:25:464
新手学习单片机
建议买功能比较多的开发板学习!有c语言基础就够了!很好学的2023-08-17 09:25:575
怎样读好单片机程序???
你得时间呐,光看程序是没有用的,做几个时间的小项目,你的收获一定会很大的2023-08-17 09:26:157
南京航空航天大学机械制造与自动化专业考研具体考哪几门课
①101政治理论②201英语③301数学一④815理论力学或823电工电子学复试考试科目:551机械原理或552微机原理及应用815 理论力学:《理论力学》(第六版,上、下册),哈尔滨工业大学编,高等教育出版社823 电工电子学:《电工学(第五版)》秦曾煌主编,高等教育出版 1999.6551 机械原理:《机械原理》郑文纬,高等教育出版社,1997年;或任一本具有考试大纲要求内容的机械类<<机械原理>>教材。552 微机原理及应用:《80X86/Pentium微x型计算机原理及应用》吴宁主编,电子工业出版社;或者《单片机原理及应用》张毅刚主编,彭喜元、董继成副主编,高等教育出版社出版(普通高等教育“十五” 国家级规划教材)。2023-08-17 09:27:422
学习单片机要学习什么?是不是就是汇编语言?学会单片机可以从事什么工作?
很多人问这样的问题,我的博客上有专门的文章讨论这个问题.2023-08-17 09:28:062
怎样学好单片机?
网上郭天祥的视频建议你看一下,最好买个配套的开发板把实验都做一遍。做完就入门了。2023-08-17 09:28:194
学习单片机的有关问题
去电驴上下个郭天翔的视频看看吧,另外多逛逛单片机的论坛,网上资源倒是不少,关键得看你是不是用心的去学了。单片机的数据手册也很有用,多仔细的看看也没啥坏处。2023-08-17 09:29:084
求《新编mcs-51单片机应用设计》张毅刚第三版PDF
https://zhidao.baidu.com/question/1514323684746476180.html2023-08-17 09:29:331
单片机编程!!
可以的2023-08-17 09:29:439
单片机怎么学
http://zhidao.baidu.com/question/124835143.html参考。2023-08-17 09:30:012
求本单片机教材,最好是考研的指定教材
《MCS-51单片机应用设计》(第二版), 张毅刚编,哈尔滨工业大学很不错的一本书。2023-08-17 09:30:092
如何快速学习单片机
一定要多写,多看资料,了解单片机工作原理,一开始肯定会很枯燥,我也是,我学的是C语言,有空上网搜视频看,也可以买点元件回来自己做个下载模块、流水灯、数码管、矩阵键盘,点阵。我也还是学生2023-08-17 09:30:345
51单片机 4*4键盘 用上拉电阻不用?
要用的2023-08-17 09:30:525
用C语言编写单片机上计算器程序遇到问题
串口调试助手发送和接受有二个方式:十六进制和ASCII码;如果你要十进制计算的话,用ASCII码传输的,把十进制转ASCII码来发送,在单片机内先ASCII码转十进制在计算最后再十进制转ASCII码来发送;2023-08-17 09:31:117
学单片机有那几点啊
用C语言写还要分配字节,那编译器干什么去了?2023-08-17 09:31:272
学单片机需要什么学科基础拜托各位大神
我来回答,很多想学单片机的人第一句话就是怎样才能学好单片机?对于这个问题我今天就我自己是如何开始学单片机 ,如何开始上手,如何开始熟练这个过程给大家讲讲。 先说说单片机,一般我们现在用的比较多的的MCS-51的单片机,它的资料比较多,用的人也很多,市场也很 大。就我个人的体会怎么样才能更快的学会单片机这门课。单片机这门课是一项非常重视动手实践的科目, 不能总是看书,但是学习它首先必须得看书,因为从书中你需要大概了解一下,单片机的各个功能寄存器, 而说明白点,我们使用单片机就是用软件去控制单片机的各个功能寄存器,再说明白点,就是控制单片机那 些管脚的电平什么时候输出高,什么时候输出低。由这些高低电平的变化来控制你的系统板,实现我们需要 的各个功能。至于看书,只需大概了解单片机各管脚都是干什么的?能实现什么样的功能?第一次,第二次 你可能看不明白,但这不要紧,因为还缺少实际的感观认识。所以我总是说,学单片机看书看两三天的就够 了,看小说你一天能看五六本,看单片机你两三天看两三遍就够了,可以不用仔细的看。推荐一本书,就这 一本就足够,书名是《新编MCS-51单片机应用设计》,是哈尔滨工业大学出版社出的的,作者是张毅刚。大 概了解一下书上的内容,然后实践,这是非常关键的,如果说学单片机你不实践那是不可能学会的,关于实 践有两种方法你可以选择,一种方法:你自己花钱买一块单片机的学习板,不要求功能太全的,对于初学者 来说你买功能非常多的那种板子,上面有很多东西你这辈子都用不着,我建议有流水灯、数码管、独立键盘 、矩阵键盘、AD或DA(原理一样)、液晶、蜂鸣器,这就差不多了。如果上面我提到的这些,你能熟练应用 ,那可以说对于单片机方面的硬件你已经入门了,剩下的就是自己练习设计电路,不断的积累经验。只要过 了第一关,后面的路就好走多了,万事开头难,大家可能都听过。方法二:你身边如果有单片机方面的高手 ,向他求助,让他帮你搭个简单的最小系统板。对于高手来说,做个单片机的最小系统板只需要一分钟的时 间,而对于初学者可就难多了,因为只有对硬件了解了,才能熟练运用。而如果你身边没有这样的高手,又 找不到可以帮助你的人,那我劝你最好是自己买上一块,毕竟自己有一块要方便的多,以后做单片机类的小 实验时都能用得上,还省事。 有了单片机学习板之后你就要多练习,最好是自己有台电脑,一天少看电影,少打游戏,把学习板和电脑连 好,打开调试软件坐在电脑前,先学会怎么用调试软件,然后从最简单的流水灯实验做起,等你能让那八个 流水灯按照你的意愿随意流动时你已经入门了,你会发现单片机是多么迷人的东西啊,太好玩了,这不是在 学习知识,而是在玩,当你编写的程序按你的意愿实现时你比做什么事都开心,你会上瘾的,真的。做电子 类的人真的会上瘾。然后让数码管亮起来,这两项会了后,你已经不能自拔了,你已经开始考虑你这辈子要 走哪一行了。就是要这样练习,在写程序的时候你肯定会遇到很多问题,而这时你再去翻书找,或是问别人 ,当得到解答后你会记住一辈子的,知识必须用于现实生活中,解决实际问题,这样才能发挥它的作用,你 自己好好想想,上了这么多年大学,天天上课,你在课堂上学到了什么?是不是为了期末考试而忙碌呢?考 完得了90分,哈哈哈好高兴啊,下学期开学回来忘的一干二净,是不是?你学到什么了?但是我告诉你单片 机一旦学会,永远不会忘了。另外我再说说用汇编和C语言编程的问题。很多同学大一二就开设了C语言的课 ,我也上过,我知道那时天天就是几乘几,几加几啊,求个阶乘啊。学完了有什么用?让你用C语言编单片 机的程序你是不是就傻了?书上的东西我们必须要会运用。单片机编程用C语言或汇编语言都可以,但是我 建议用C语言比较好,如果原来有C语言的基础那学起来会更好,如果没有,也可以边学单片机边学C语言,C 语言也挺简单,只是一门工具而已,我劝你最好学会,将来肯定用得着,要不你以后也得学,你一点汇编都 不会根本无所谓,但你一点C语言都不会那你将来会吃苦头。汇编写程序代码效率高,但相对难度较大,而 且很罗嗦,尤其是遇到算法方面的问题时,根本是麻烦的不得了,现在单片机的主频在不断的提高,我们完 全不需要那么高效率的代码,因为有高频率的时钟,单片机的ROM也在不断的提高,足够装得下你用C语言写 的任何代码,C语言的资料又多又好找,将来可移植性非常好,只需要变一个IO口写个温度传感器的程序在 哪里都能用,所以我劝大家用C语言。 总结上面,只要你有信心,做事能坚持到底,有不成功不放弃的强烈意志,那学个单片机来说就是件非常容 易的事。 步骤:1.找本书大概了解一下单片机结构,大概了解就行。不用都看懂,又不让你出书的。(三天) 2.找学习板练习编写程序,学单片机就是练编程序,遇到不会的再问人或查书。我当初就是买了一块开发板 ( http://www.kaifaban.com/html/2006111423012559.html) ,二十天就搞定了。 3.自己网上找些小电路类的资料练习设计外围电路。焊好后自己调试,熟悉过程。 (十天) 4.自己完全设计具有个人风格的电路,产品,。。。你已经是高手了。 。。。。 看到了吗?下功夫一个多月你就能成为高手,我就讲这么多了,学不学得会,下不下得了功夫就看你的了 6092希望对你有帮助!2023-08-17 09:31:381
推荐几本专门单片机通信的书籍
基础的知识,研究一下232的详细通信过程,挺简单的,怎么玩都可以,微机原理上面讲串口讲的比较信息。2023-08-17 09:31:494
自学单片机的问题…
你好! 循序渐进是学习的过程,既然已经入门了,那就再接再厉; 单片机的学习,开始可以仿写,通过知识掌握的增多,根据自己的想法,写自己的程序!2023-08-17 09:32:114
我想学51单片机不知道从哪学起,请推荐几本书和简绍一下方法
可以看看《单片机机应用100列》还可以上网搜搜相关的视频2023-08-17 09:32:202
高手来看 要求基于单片机的rlc测量仪
RLC测量电路设计RLC测量电路设计摘要: 仪器的发展趋势是向着智能化,智能仪器是近年仪器科学发展的一个重要分支。RLC测量仪是一种以单片机为基础的自动测量电阻R、电感L、电容C等参数的智能元件参数测量仪器。本课题研究的内容是基于单片机RLC测量仪。测量原理采用的是伏安法,伏安法又可分为固定轴法和自由轴法。由于固定轴法对硬件的要求很高而且存在同向误差,故本课题采用自由轴法测量。课题的研究分为硬件电路设计和软件程序编制两个部分。在硬件方面,我们采用单片机控制电路;软件方面,我们采用汇编语言控制。关键字:RLC测量, 电阻R, 电感L, 电容C. Abstract: With the developing of instrument science, instruments are getting more intelligent. Intelligent instrument is an important branch of instrument science and a keen edge of researching. RLC elemental meter is a kind of intelligent instrument used to measure elemental parameter such as resistance R, inductance L, capacity C and so on. In this paper, we made a virtual RLC elemental meter based on MCS. The paper includes two parts, one is the designing of hardware circuit ,the other is the programming .We used of MCS to control in the designing of hardware; And we used of advanced language to control in the software.Key words: RLC elemental meter, Resistance R, Inductance L, Capacity C.目录第一章. 绪论1.1 RLC测量定义1.2 基于单片机智能测量系统的特点及应用1.3 RLC测量仪器的发展和现状第二章.单片机概述2.1 什么叫单片机2.2 单片机的特点2.3 单片机的发展第三章.单片机的硬件基础3.1 8051单片机内部逻辑结构3.2 8051单片机的封装与信号引脚3.3 单片机的内部存储器第四章. RLC测量电路设计 4.1 RLC测量系统的总体系统4.2 局部电路分析4.3 相关的子程序第一章. 绪论1.1 RLC测量定义 RLC测量是控制电路将电阻、电感和电容的值转换成不同频率的电信号,所得的电信号再通过控制电路处理,经过显示器件将其表示出来,成为模拟信号,所得的模拟信号即为电阻、电感和电容的实际值的大小。1.2 基于单片机智能测量系统的特点及应用 基于单片机测量系统的RLC测量仪与传统的RLC测量仪相比,具有智能性高,人机界面友好、操作方便,体积更小、功能强大、便于携带等特点。该测量系统应用于电阻、电感和电容的测量,其测量范围:R:1Ω~1MΩ,L:1mH~1000mH,C:1000pF~1000uF,可以被广泛应用于电子工业生产所需的元器件参数的测量。1.3 RLC测量仪器的发展和现状RLC元件参数测量仪器是用于测量集中参数电阻R、电感L、电容C和品质因数Q等的测量仪器。随着集成电路和微机的普及和发展,元件参数测量仪取得了很大的发展。国内微机化仪器和具有智能化的仪器已有产品出售,但大多属于低档产品,其功能单一、体积较大、精度不高。国外公司如惠普已生产出先进的RLC测试仪器产品,其功能、精度和可靠性均已达到很高的水平,但其价格十分昂贵。目前,随着集成电路技术和单片机技术的发展,仪器的发展已趋向小型化和智能化。而且采用单片机技术构成的电子系统可以获得传统通用集成电路所无法比拟的优越性:1. 缩小体积、减轻重量、降低功耗;2. 提高可靠性。用单片机进行系统集成后,外部连线减少,因而可靠性明显提高;3. 有利于获得高性能系统。不同的测量任务对测试系统有不同的要求,一种单片机控制测试系统不可能覆盖整个社会对测量的需求。当今单片机已完全进入科研、企业生产,而基于单片机控制的RLC元件参数测量仪器在过内尚不多见。市场上多为台式机,体积大、价格高。这就为一种体积小、性价比合理的仪器—基于单片机控制的RLC元件参数测量仪器提供了很大的市场潜力。第二章 单片机概述2.1 什么叫单片机所谓单片机就是将中央处理器(CPU)、随机存储器(RAM)、只读存储器(ROM/EPROM)、定时器/计数器和一些输入/输出(I/O)接口电路集成在一块芯片上的微型计算机,又可称之为微控制器(Microcontroller)。2.2 单片机的特点单片机的共有特点:①控制功能强;②体积小;③功耗小;④成本低。由于上述优越性能,单片机已在工业工程领域得到广泛应用。特别是,随着数字技术的发展,它在很大程度上改变了传统的设计方法,在软件和扩展接口支持下,单片机可以代替以往由模拟和数字电路实现的系统,可使原来许多电路设计问题转化为程序设计问题。2.3 单片机的发展过程单片机的发展非常迅速。70年代中期,Intel公司推出8位单片机MCS-48系列,80年代初又推出高档8位单片机MCS-51系列。这之后 ,Intel公司于1983年推出MCS-51系列单片机,使单片机的发展进入了一个新阶段。MCS-51单片机采用MOS的工艺技术,将12万只以上的晶体管制作在一块约4cm2的集成电路芯片上,构成一种高性能的8位单片微型计算机。它包括如下一些部件:一个中央处理器CPU、片内随机数据存储器(RAM)、定时器/计数器、数字型I/O接口、全双工串行通行接口、监视跟踪定时器(WATCH DOG)、高速输入/输出(I/O)、中断控制逻辑电路、脉宽调制器(PWM)以及时钟信号发生器与反偏压发生器等。第三章 单片机的硬件基础3.1 8051单片机的内部逻辑结构Intel公司推出的8051单片机,典型产品包括8051、8031、8052、8032、8751、8752、8951和8952,其中最为实用的是8051。单片机的内部逻辑结构如下图(3.1)所示: 图(3.1)1.中央处理器CPU 中央处理器简称CPU(Central Processing Unit),是单片机的核心,用于完成运算和控制操作。中央处理器包括运算器和控制器两部分电路。(1)运算电路运算电路是单片机的运算部件,用于实现算术和逻辑运算。图(3.1)中的算术逻辑单元ALU(Arithmetic Logic Unit)、累加器(ACC)、B寄存器、程序状态字和两个暂寄存器等都属于运算电路。运算电路以ALU为核心,基本的算术运算和逻辑运算均在其中进行,包括加、减、乘、除、增量、减量、十进制调整、比较等逻辑运算,“与”、“或”、“异或”等逻辑运算,左、右移位和半字节交换等操作。操作结果的状态由程序状态字(PSW)保存。(2)控制电路控制电路是单片机的指挥控制部件,保证单片机各部分能自动而协调地工作。图(3.1)的程序计数器(PC)、PC加1寄存器、指令寄存器、指令译码器、定时控制电路以及振荡电路等均属于控制电路。单片机执行程序就是在控制电路的控制下进行的。首先从程序寄存器中读出指令,送指令寄存器保存;然后送指令译码器进行译码,译码结果送定时控制电路,由定时控制逻辑产生各种定时信号和控制信号;再送到系统的各个部件去控制相应的操作。这就是执行一条指令的全过程,而执行程序就是不断重复这一过程。2. 内部数据存储器内部数据存储器包括RAM(128×8)和RAM地址寄存器,用于存放可读/写的数据。实际上8051芯片中共有256个RAM单元,但其中后128个单元为专用寄存器,能作为普通RAM存储器供用户使用的只是前128个单元。因此,通常所说的内部数据存储器是指前128个单元,简称“内部RAM”。3. 内部程序存储器内部程序存储器包括ROM(4K×8)和程序地址寄存器等。8051共有4KB掩膜ROM,用于存放程序和原始数据,因此,称之为程序存储器,简称“内部ROM”。4. 定时/计数器由于控制应用的需要,8051共有两个16位的定时器/计数器,用定时器/计数器0和定时器/计数器1表示,用于实现定时或计数功能,并以其定时或计数结果对单片机进行控制。5. 并行I/O口8051共有4个8位并行I/O(P0、P1、P2、P3)。以实现数据的并行输入/输出。6. 串行口8051单片机有一个全双工串行口,以实现单片机和其他数据设备之间的串行数据传送。该串行口功能较强,既可作为全双工异步通信收发器使用,也可以作为同步移位器使用。7. 中断控制电路8051单片机的中断功能较强,以满足控制应用的需要。它共有5个中断源,即外中断2个,定时/计数中断2个,串行中断1个。全部中断分为高级和低级共两个优先级别。8. 时钟电路8051芯片内部有时钟电路,但石英晶体和微调电容需外接。时钟电路为单片机产生时钟脉冲序列。9. 位处理器单片机主要用于控制,需要有较强的位处理能力,因此,位处理器是它的必要组成部分,有些书中也把位处理器称为布尔处理器。10. 内部总线上述这些部件通过总线连接起来,才能构成一个完整的计算机系统。芯片内的地址信号、数据信号和控制信号都是通过总线传送的。总线结构减少了单片机的连线和引脚,提高了集成度和可靠性。3.2 8051单片机的封装与信号引脚1. 芯片封装形式8051有40引脚双列直插式DIP(Dual In Line Package)和44引脚方形扁平式QFP(Quad Flat Package)共两种封装形式。其中双列直插式封装芯片的引脚排列及芯片逻辑符号参见图(3.2) 图(3.2)2. 芯片引脚介绍● 输入/输出口线P0.0~P0.7 P0口8位双向口线P1.0~P1.7 P1口8位双向口线P2.0~P2.7 P2口8位双向口线P3.0~P3.7 P3口8位双向口线● 地址锁存控制信号ALE在系统扩展时,ALE用于控制把P0口输出的低8位地址送入锁存器锁存起来,以实现低位地址在和数据的时分传送。此外由于ALE是以1/6晶振频率的固定频率输出的正脉冲,因此,可以为外部时钟或外部定时脉冲使用。● 外部程序存储器读选通信号 在外部ROM时 低电平有效,以实现外部ROM单元的读操作。● 访问程序存储器控制信号 当 (External Access)信号为低电平时,对ROM的读操作是针对外部程序存储器的;而当 信号为高电平时,对ROM的读操作是从内部程序存储器开始,并可延续至外部程序存储器。● 复位信号REST当输入的复位信号延续2个机器周期以上高电平时即位有效,用于完成单片机的复位操作。● 外接晶体引线XTAL1和XTAL2当使用芯片内部时钟时,XTAL1和XTAL2用于外接石英晶体谐振器和微调电容;当使用外部时钟时,用于接入外部时钟脉冲信号。● 地线VSS● +5V电源VCC3. 芯片引脚第二功能随着单片机功能的增强,对芯片引脚的需求不断增加,但由于简化、工艺或标准化等原因,芯片引脚的数目总是有限的。因此,“引脚复用”现象在单片机中十分常见,即给一个引脚赋予两种甚至两种以上的功能。(1)8051的引脚 复用8051的引脚复用主要集中在P3口线上。如果把口线固有的I/O功能作为引脚第一功能,那么再定义的信号就是它的第二功能。P3的8条口线都定义有第二功能,其详细介绍如表3.1。对于有内部EPROM的单片机芯片,为写入程序必须提供专门的编程脉冲和编程电源。它们也由引脚第二功能的形式提供:编程脉冲 30脚(第一功能为ALE/ )编程电压(25V) 31脚(第一功能为 /VPP) 表3.1 P3口线的第二功能口线 第二功能信号 第二功能信号名称P3.0 RXD 串行数据接收P3.1 TXD 串行数据发送P3.2 INT0 外部中断0申请P3.3 INT1 外部中断1申请P3.4 T0 定时间/计数器0计数输入P3.5 T1 定时间/计数器1计数输入P3.6 WR RAM写选通P3.7 RD RAM读选通(2)引脚复用不会引起混乱 一个引脚有多种功能,会不会在使用时引起混乱和造成错误呢?不会的,因为第一功能信号与第二功能信号是不同工作方式,因此不会发生使用上的矛盾。例如30和31引脚。另外,P3口线的第二功能信号都是重要的控制信号,在实际使用时总是先按需要优先选用第二功能,剩下不用的才作为口线使用。 引脚表现出单片机的外部特性或硬件特性。硬件设计时用户只能使用引脚,即通过引脚连接组建系统。3.3 单片机的内部存储器一般来说,单片机的内部存储器包括数据存储器和程序存储器。80C51单片机的数据存储器共有256个单元,按照功能又把256个单元的数据存储器划分为两部分:低128单元区和高128单元区,如图(3.3)所示3.3.1 内部数据存储器低128单元区80C51的内部数据存储器低128单元区,称为内部RAM,地址为00H~7FH。它们是单片机供用户使用的数据存储单元,按用途可划分为如下3个区域。1. 寄存器区内部RAM的前32个单元是作为寄存器使用的,共分为4组,组号依次为0、1、2、3。每组有8个寄存器,在组建中按R7~R0编号。这些寄存器用于存放操作数及中间结果等,因此,称为通用寄存器,有时也叫工作寄存器。4组通用寄存器内部RAM的00H~1FH单元地址。在任一时刻,CPU只能使用其中的一组寄存器,并且把正在使用的那组寄存器称为当前寄存器组。至于是哪一组,则由程序状态字寄存器PSW中RS1、RS0位的状态组合来决定。在单片机中,凡是能称为寄存器的都有两个特点:一是可用8位地址直接寻址,使寄存器的读/写操作十分快捷,有利于提高单片机的运行速度;二是在指令中使用寄存器时,既可用其名称表示,也可用其单元地址表示,为使用带来方便。此外,通用寄存器还能提高程序编制的灵活性,因此,在单片机的应用编程中应充分利用这些寄存器,以简化程序设计,提高程序运行速度。 图(3.3)80C51内部数据存储器配置图2. 位寻址区 内部RAM的20H~2FH单元,既可作为一般RAM单元使用,进行字节操作,也可对单元中的每一个位进行操作,因此,把该区称为位寻址区。位寻址区共有16个RAM单元,总计128个可直接寻址位,位地址为00H~7FH。位寻址区是为位操作而准备的,是80C51位处理器的位数据存储区。在通常的使用中,“位”有两中表示方式。一种是以位地址的形式,例如,位寻址区的最后一位是7FH。另一种是以存储单元地址加位的形式表示。例如,同样的最后位表示为27H.7,即27H单元的第7位。3. 用户RAM区 在内部RAM低128单元中,通用寄存器占去32个单元,位寻址区占去16个单元,剩余的80个单元就是供用户使用一般RAM区,其单元地址为30H~7FH。对于用户RAM区,只能以存储单元的形式来使用,此处再没有任何其他规定或限制。第四章. RLC测量电路设计4.1 RLC测量系统的总体系统该测量系统的总统框图如图(4.1)所示:图(4.1)该系统主要包括测量电路、通道选择和测控三大模块。1. 测量电路测量电路是将通过被测量的电量转换成电流信号。电阻测量是根据RC振荡电路原理,将单片机P0.0~P0.3端口的脉冲电流和电源经LM555定时器,产生脉冲信号u01920,如图(4.2)所示。图(4.2) 图(4.3)定时器输出的电信号频率 电阻表达式 电感测量是通过电感与电容形成的三点式振荡电路,将电源直接转换成振荡的脉冲信号u01920,因此,电感的测量不需单片机提供脉冲电流,如图(4.3)所示。振荡电路输出的电信号频率 电感表达式 电容测量和电阻测量一样,都是根据RC振荡电路,将单片机P0.4~P0.6端口的脉冲电流和电源经LM555定时器,产生脉冲信号u01920,如图(4.4)所示。 图(4.4) 定时器输出的电信号频率 电容表达式 2. 通道选择通道选择是通过多路选择开关CD4025来选择测量的量。CD4025检测输入电信号,其输出端接单片机的RD,INTR1和INTR0口,单片机根据这三个端口输入电信号的频率特性,判断测量的量是电阻、电容还是电感。如图(4.5)所示。 图(4.5)3. 测控部分测控部分电路由单片机控制电路和数字显示电路组成。单片机对整个系统起着控制的作用,它是通过12MHz晶振对电路起着振荡作用,优如人体的心脏一样在不停的跳动,完成各个机器周期。数字显示电路是通过数码管显示的,它显示该测量量的实际大小值。4.2 局部电路分析1. 电源电路电源电路是将220V交流电通过降压器,将电压降低到9V的交流电,降低后的交流电通过桥式整流二极管,将交流电下半电流调整到上半部分,所得的交流电经过滤波电容,得到较为平整的直流电,由于所得的直流电为近似9V电压,比单片机工作电压和其他IC工作电压要高许多,因此,需要稳压集成电路78L05对该电压进行调整,调整后的电压约为5V的直流电压,满足单片机和其他IC的工作要求电压,所得电压再次经过滤波电容滤波,得到很平整的5V直流电。2.显示电路显示电路是由4个七段数码显示,该电路是将A/D转换芯片转换的数字信号显示出来,数字信号的高低电平控制数码管每一段的亮灭。75452集成芯片作为反向器,为数管提供低电平,驱动数码管点亮。4.3 相关的子程序由于水平有限,整电路的程序难度较大,选择显示电路作该设计代表程序:DIS: MOV R0, #30H ; R0指向显缓 MOV R2, #20H ; R2存位选码DIS1: MOV A, @R0 ; 取数进行译码 MOV DPTR, #SEG MOVC A, @A+DPTR ;取段码 MOV DPTR, #0FD01H MOVX @DPTR, A ;段码送A口 MOV A, R2 INC DPTR MOVX @DPTR, A ;位选码送B口 ACALL DIMS ;延时3~5ms MOV A, R2 JB ACC.0, DIS2 ;是否显示完毕 INC R0 ;未完,取下位 MOV A, R2 RR A ;下位位选码 MOV R2, A AJMP DIS1 DIS2: RET DIMS: MOV R3, #70H ;延时子程序 DL1: NOP NOP DJNZ RETSEG: DB 3FH, 06H, 5BH, 4FH ; DB 66H, 6DH, 7DH, 07H ; DB 7FH, 6FH, 77H, 7CH ; DB 39H, 5EH, 79H, 71H ;在静态显示方式下,LED显示器各显示段的工作电流是恒定的,在动态显示方式下,LED显示器各显示段的工作电流是脉动的。因此,脉动工作电流的幅值应远大于恒定工作电流的幅值。对于位驱动电路来说,它必须能负载一个数字显示器各个显示段工作电流的总和。所以它的最大位驱动脉动负载电流应约为300mA。但由于位驱动是分时多路工作,所以它的最大平均负载电流为50mA。在动态显示系统中,一位数字的显示持久时间不允许超过其额定值,更不允许系统长久地停止扫描刷新,否则,某一个数字显示器和位驱动电路将因长时间流过较大的恒定电流而被损坏。同时,动态显示方式所能允许的显示数字的个数是有限的,这是由于显示系统所能允许最大脉动工作电流是有限的。结 论 在高新技术的推动下,随着工业自动化程度的不断提高,在工业中使用的仪表日趋数字化、智能化、多功能化、小型化。本文介绍了用80C51单片机设计智能仪表主控电路,其硬件电路设计采用80C51单片机为核心,再配以外围程序存储器、数据存储器、I/O接口、A/D转换器可实现多路模拟量、数字量、开关量的输入输出。可靠性、安全性、电磁兼容都达到了更高的要求,从而使仪表装置的功能更强、效率更高、适用性更好。大大提高了运行的稳定性和可靠性。本文利用了80C51单片机进行了最小系统设计,包括随机存储器62128,只读存储器27128。地址分配用74LS139译码器来进行选择,地址/数据线是通过74LS373锁存器进行锁存;外围键盘接口和显示接口采用可编程并行接口芯片8255为中心器件来设计接口扩展电路;8通道模拟量输入采用了A/D转换器ADC0809芯片,由ADC0809实现模拟信号的数字化,使系统成为一个简单的智能仪表的主控电路。通过这次毕业设计,使我在综合使用专业知识、专业技能分析和解决问题方面得到了一次全面系统的锻炼。由于时间仓促,再加上我的理论知识水平有限,实践能力和设计经验不足,在设计的过程中难免还存在一些问题甚至是错误,今后在实际工作中有待进一步得到升华。参考文献[1] 张幽彤,陈宝江.MCS 8098系统实用大全.北京.清华大学出版社.1993-9[2] 张毅刚,乔景渌.8098单片机应用设计.北京.电子工业出版社.1993-5[3] 卢胜利.智能仪器设计与实现.重庆大学出版社.2003-6[4] 王辛之.8051/8098单片机原理及接口设计.兵器工业出版社.1998-1[5] 王小华.MCS-96系列单片机硬件软件技术. 陕西电子杂志社.1993-3 [6] 李新民,李勋.8098单片微型计算机应用技术.北京航空航天大学出版社.1995-9[7] 王培东,李兰英等.8098单片机原理及应用.哈尔滨工业大学出版社.1996-1[8] 闵华清.8098单片机原理与应用系统设计.华东理工大学出版社.1995-1[9] 戴文进,章卫国.自动化专业英语.武汉理工大学出版社.2002-7[10] 王宏文等.自动化专业英语教程.北京机械工业出版社.1998[11] 王忠民等.新编计算机英语.西安电子科技大学出版社.1999[12] Intel. Microcontroller Handbook. 1998[13] Intel. MCS-96 Architechtural Overview[14] Douglas E.Comer. Computer Networks and Internets.清华大学出版社.1998[15] 林月芳,吉海彦.智能仪器及其发展趋势.仪器仪表分析监测.2003年(1):37~39[16] 宋晓风.热电厂微机管理系统 .自动化仪器仪表.2003年(5):29~30[17] 陈祯.基于8031单片机的土壤含水量自动测试仪.仪表技术2001年(2): 39~40[18] Winn L, Rosch. Hardware Bible, Third Edition. Brady Publishing, 1992:12~18[19] Microprocessors. Volume I. Intel Crop. 19922023-08-17 09:32:303
求多路彩灯控制器的设计(完整的毕业设计有内容摘要 关键词 参考文献 字数在5000左右)
兄弟同求,你的毕业设计还有吗?2023-08-17 09:32:402
单片机汇编语言总结{越完整越好}
我建议你看看计算机英语方面的东西。CPU:Central Processing Unit,中央处理单元,又叫中央处理器或微处理器,被喻为电脑的心脏。 RAM:Random Access Memory,随机存储器,即人们常说的“内存”。 ROM:Read-Only Memory,只读存储器。 EDO:Extended Data Output,扩充数据输出。当CPU的处理速度不断提高时,也相应地要求不断提高DRAM传送数据速度,一般来说,FPM(Fast Page Model)DRAM传送数据速度在60-70ns,而EDO DRAM比FPM快3倍,达20ns。目前最快的是SDRAM(Synchronous DRAM,同步动态存储器),其存取速度高达10ns。 SDRAM:Synchronous Dynamic Random Access Memory,同步动态随机存储器,又称同步DRAM,为新一代动态存储器。它可以与CPU总线使用同一个时钟,因此,SDRAM存储器较EDO存储器能使计算机的性能大大提高。 Cache:英文含义为“(勘探人员等贮藏粮食、器材等的)地窖;藏物处”。电脑中为高速缓冲存储器,是位于CPU和主存储器DRAM(Dynamic Randon Access Memory)之间,规模较小,但速度很高的存储器,通常由SRAM(Static Random Access Memory静态存储器)组成。 CMOS:是Complementary Metal Oxide Semiconductor的缩写,含义为互补金属氧化物半导体(指互补金属氧化物半导体存储器)。CMOS是目前绝大多数电脑中都使用的一种用电池供电的存储器(RAM)。它是确定系统的硬件配置,优化微机整体性能,进行系统维护的重要工具。它保存一些有关系统硬件设置等方面的信息,在关机以后,这些信息也继续存在(这一点与RAM完全不同)。开机时,电脑需要用这些信息来启动系统。如果不慎或发生意外而弄乱 了CMOS中保留的信息,电脑系统将不能正常启动。 PCI:Peripheral Component Interconnection,局部总线( 总线是计算机用于把信息从一个设备传送到另一个设备的高速通道)。PCI总线是目前较为先进的一种总线结构,其功能比其他总线有很大的提高,可支持突发读写操作,最高传输率可达132Mbps,是数据传输最快的总线之一,可同时支持多组外围设备。PCI不受制于CPU处理器,并能兼容现有的各种总线,其主板插槽体积小,因此成本低,利于推广。 Seagate:美国希捷硬盘生产商。Seagate英文意思为“通往海洋的门户”,常指通海的运河等。 Quantum:英文含意为“定量,总量”。著名硬盘商标,美国昆腾硬盘生产商(Quantum Corporation)。 Maxtor:“水晶”,美国Maxtor硬盘公司。 LD:Laser Disk,镭射光盘,又称激光视盘。 CD:Compact Disc,压缩光盘,又称激光唱盘。 CD-ROM:Compact Disc-Read Only Memory,压缩光盘-只读记忆(存储),又叫“只读光盘”。 VCD:Video Compact Disc,视频压缩光盘,即人们通常所说的“小影碟”。 DVD:至今有许多人把DVD视为Digital Video Disc(数字视频光盘)的缩写,事实上,从1995年9月,索尼/飞利浦和东芝/时代华纳两大DVD开发集团达成DVD统一标准后,DVD的内涵有了很大的变化,它已成了数字通用光盘,即Digital Versatile Disc的英文缩写。Versatile“通用”的含义表明了DVD用途的多元化,它不仅可用于影视娱乐,还可用于多媒体计算机等领域。目前按其用途可分为5种类型:1计算机用只读光盘——DVD-ROM;2家用型影音光盘——DVD-Movie;3专供音乐欣赏的DVD Audio;4只写一次的光盘——DVD-R;5可读写多次的光盘——DVD-RAM。 Modem:调制解调器,家用电脑上Internet(国际互联网)网的必备工具,在一般英汉字典中是查不到Modem这个词的,它是调制器(MOdulator)与解调器(DEModulator)的缩写形式。Modem是实现计算机通信的一种必不可少的外部设备。因为计算机的数据是数字信号,欲将其通过传输线路(例如电话线)传送到远距离处的另一台计算机或其它终端(如电传打字机等),必须将数字信号转换成适合于传输的模拟信号(调制信号)。在接收端又要将接收到的模拟信号恢复成原来的数字信号,这就需要利用调制解调器。 UPS:为Uninterruptible Power Supply(不间断电源)的英文缩写。它是伴随着计算机的诞生而出现的,是电脑的重要外围设备之一。UPS是一种含有储能装置,以逆变器为主要组成的恒压恒频的不间断电源,用以保护电脑在突然断电时不会丢失重要的数据。 TFT:有源矩阵彩色显示器,简称TFT显示器,专用于笔记本电脑。TFT显示器具有刷新速度快、色彩逼真、亮度鲜明等优点。此外,它还具有无闪烁、无辐射、无静电等“绿色电脑”所必需的特点。 参考:里面当然比我上面粘贴的多哈,免费下载,很管用的2023-08-17 09:32:502
学会单片机得多长时间呢
因人而异,也要看个人的天分,有人很快,有人学了一辈子都只是皮毛而已2023-08-17 09:33:016
单片机的原理
1、单片机原理是指一种在线式实时控制计算机的原理方式。在线式就是现场控制,需要的是有较强的抗干扰能力,较低的成本,这也是和离线式计算机(比如家用PC)的主要区别。2、单片机就是一个微型电脑,它是靠程序工作的,并且可以修改。通过不同的程序实现不同的功能。2023-08-17 09:33:191
应该怎样学好单片机以及汇编语言啊?
机的学习,首先具备基础的电路知识,分析问题的能力,然后具备C语言基础,另外就是多做实验可以,前期可以用仿真,建议你去电子论坛看吴鉴鹰单片机实战精讲,里面源程序,原理图,proteus仿真图都有,可以自己慢慢学,然后自己多做实物。2023-08-17 09:33:434
焊了个单片机最小系统,不能用,问题出在哪?
晶振位置是不是没放好。。。查查2023-08-17 09:33:555
用89C51单片机设计多功能低频函数信号发生器,能产生方波、正弦波、三角波等信号波形,
这些其实都不难,学学原理,看看网上其它人的作品就有眉目了,其实这些自己作出来才锻炼人,不要老想着找人要程序,要原理2023-08-17 09:34:274
用单片机设计一个函数发生器的思路
传统的是用一个DAC,不过简单的话用一个射随+电容+电阻即可2023-08-17 09:34:364
哪位有用单片机制作的显示器信号发生器电路及其程序?
波形发生器是一种常用的信号源,广泛地应用于电子电路、自动控制系统和教学实验等领域。本次课程设计使用的AT89S51 单片机构成的发生器可产生锯齿波、三角波、正弦波等多种波形,波形的周期可以用程序改变,并可根据需要选择单极性输出或双极性输出,具有线路简单、结构紧凑等优点。在本设计的基础上,加上按钮控制和LED显示器,则可通过按钮设定所需要的波形频率,并在LED上显示频率、幅值电压,波形可用示波器显示。二、系统设计波形发生器原理方框图如下所示。波形的产生是通过AT89S51 执行某一波形发生程序,向D/A转换器的输入端按一定的规律发生数据,从而在D/A转换电路的输出端得到相应的电压波形。在AT89S51的P2口接5个按扭,通过软件编程来选择各种波形、幅值电压和频率,另有3个P2口管脚接TEC6122芯片,以驱动数码管显示电压幅值和频率,每种波形对应一个按钮。此方案的有点是电路原理比较简单,实现起来比较容易。缺点是,采样频率由单片机内部产生故使整个系统的频率降低。1、波形发生器技术指标1)波形:方波、正弦波、锯齿波;2)幅值电压:1V、2V、3V、4V、5V;3)频率:10HZ、20HZ、50HZ、100HZ、200HZ、500HZ、1KHZ;2、操作设计1)上电后,系统初始化,数码显示6个‘-",等待输入设置命令。2)按钮分别控制“幅值”、“频率”、“方波”、“正弦波”、“锯齿波”。3)“幅值“键初始值是1V,随后再次按下依次增长1V,到达5V后在按就回到1V。4)“频率“键初始值是10HZ,随后在按下依次为20HZ、50HZ、100HZ、200HZ、500HZ、1000HZ循环。三、硬件设计本系统由单片机、显示接口电路,波形转换(D/A)电路和电源等四部分构成。电路图2附在后1、单片机电路功能:形成扫描码,键值识别、键处理、参数设置;形成显示段码;产生定时中断;形成波形的数字编码,并输出到D/A接口电路和显示驱动电路。AT89S51外接12M晶振作为时钟频率。并采用电源复位设计。复位电路采用上电复位,它的工作原理是,通电时,电容两端相当于短路,于是RST引脚上为高电平,然后电源通过对电容充电。RST端电压慢慢下降,降到一定程序,即为低电平,单片机开始工作。AT89S51的P2口作为功能按钮和TEC6122的接口。P1口做为D/A转换芯片0832的接口。用定时/计数器作为中断源。不同的频率值对应不同的定时初值,允许定时器溢出中断。定时器中断的特殊功能寄存器设置如下:定时控制寄存器TCON=20H;工作方式选择寄存器TMOD=01H;中断允许控制寄存器IE=82H。2、显示电路功能:驱动6位数码管显示,扫描按钮。由集成驱动芯片TEC6122、6位共阴极数码管和5个按钮组成。当某一按钮按下时,扫描程序扫描到之后,通过P2口将数字信号发送到 TEC6122芯片。TEC6122是一款数字集成芯片。它的外接电压也是+5V,并且由于数码管的载压较小,为了保护数码管,必须在两者间接电阻,大约是560欧。扫描利用软件程序实现,当某一按键按下时,扫描程序立即检测到,随后调用子程序,执行相应的功能。3、D/A电路功能:将波形样值的编码转换成模拟值,完成双极性的波形输出。由一片0832和两块LM358运放组成。DAC0832是一个具有两个输入数据寄存器的8位DAC。目前生产的DAC芯片分为两类,一类芯片内部设置有数据寄存器,不需要外加电路就可以直接与微型计算机接口。另一类芯片内部没有数据寄存器,输出信号随数据输入线的状态变化而变化,因此不能直接与微型计算机接口,必须通过并行接口与微型计算机接口。DAC0832是具有20条引线的双列直插式CMOS器件,它内部具有两级数据寄存器,完成8位电流D/A转换,故不需要外加电路。0832是电流输出型,示波器上显示波形,通常需要电压信号,电流信号到电压信号的转换可以由运算放大器LM358实现,用两片LM358可以实现双极性输出。单片机向0832发送数字编码,产生不同的输出。先利用采样定理对各波形进行抽样,然后把各采样值进行编码,的到的数字量存入各个波形表,执行程序时通过查表方法依次取出,经过D/A转换后输出就可以得到波形。假如N个点构成波形的一个周期,则0832输出N个样值点后,样值点形成运动轨迹,即一个周期。重复输出N个点,成为第二个周期。利用单片机的晶振控制输出周期的速度,也就是控制了输出的波形的频率。这样就控制了输出的波形及其幅值和频率。四、 软件设计 主程序和子程序都存放在AT89S51单片机中。主程序的功能是:开机以后负责查键,即做键盘扫描及显示工作,然后根据用户所按的键转到相应的子程序进行处理,主程序框图如图1所示。 子程序的功能有:幅值输入处理、频率输入处理、正弦波输出、锯齿波输出、方波输出、显示等。下面是程序include <reg51.h>#define uchar unsigned char#define uint unsigned intsbit LCP=P2^2;sbit SCP=P2^1;sbit SI=P2^0;sbit S1=P2^3;sbit S2=P2^4;sbit S3=P2^5;sbit S4=P2^6;sbit S5=P2^7;sbit DA0832=P3^3;sbit DA0832_ON=P3^2;uchar fun=0,b=0,c=0,d=0,tl,th;uchar code tab[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};uchar code tosin[256]={0x80,0x83,0x86,0x89,0x8d,0x90,0x93,0x96,0x99,0x9c,0x9f,0xa2,0xa5,0xa8,0xab,0xae,0xb1,0xb4,0xb7,0xba,0xbc,0xbf,0xc2,0xc5,0xc7,0xca,0xcc,0xcf,0xd1,0xd4,0xd6,0xd8,0xda,0xdd,0xdf,0xe1,0xe3,0xe5,0xe7,0xe9,0xea,0xec,0xee,0xef,0xf1,0xf2,0xf4,0xf5,0xf6,0xf7,0xf8,0xf9,0xfa,0xfb,0xfc,0xfd,0xfd,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfd,0xfd,0xfc,0xfb,0xfa,0xf9,0xf8,0xf7,0xf6,0xf5,0xf4,0xf2,0xf1,0xef,0xee,0xec,0xea,0xe9,0xe7,0xe5,0xe3,0xe1,0xde,0xdd,0xda,0xd8,0xd6,0xd4,0xd1,0xcf,0xcc,0xca,0xc7,0xc5,0xc2,0xbf,0xbc,0xba,0xb7,0xb4,0xb1,0xae,0xab,0xa8,0xa5,0xa2,0x9f,0x9c,0x99,0x96,0x93,0x90,0x8d,0x89,0x86,0x83,0x80,0x80,0x7c,0x79,0x76,0x72,0x6f,0x6c,0x69,0x66,0x63,0x60,0x5d,0x5a,0x57,0x55,0x51,0x4e,0x4c,0x48,0x45,0x43,0x40,0x3d,0x3a,0x38,0x35,0x33,0x30,0x2e,0x2b,0x29,0x27,0x25,0x22,0x20,0x1e,0x1c,0x1a,0x18,0x16,0x15,0x13,0x11,0x10,0x0e,0x0d,0x0b,0x0a,0x09,0x08,0x07,0x06,0x05,0x04,0x03,0x02,0x02,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x02 ,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0a,0x0b,0x0d,0x0e,0x10,0x11,0x13,0x15,0x16,0x18,0x1a,0x1c,0x1e,0x20,0x22,0x25,0x27,0x29,0x2b,0x2e,0x30,0x33,0x35,0x38,0x3a,0x3d,0x40,0x43,0x45,0x48,0x4c,0x4e,0x51,0x55,0x57,0x5a,0x5d,0x60,0x63,0x66 ,0x69,0x6c,0x6f,0x72,0x76,0x79,0x7c,0x80 };void display(unsigned char command){ unsigned char i; LCP=0; for(i=8;i>0;i--) { SCP=0; if((command & 0x80)==0) { SI=0; } else { SI=1; } command<<=1; SCP=1; } LCP=1;}void key1(void) { fun++; if(fun==4) fun=0x00;}void key2(void) { tl++; if(tl==0x1f) th++;}void key3(void) { tl--; if(tl==0x00) th--;}void key4(void) { double t; int f; TR0=0; t=(65535-th*256-tl)*0.4; f=(int)(1000/t); S3=tab[f%10]; f=f/10; S2=tab[f%10]; f=f/10; if(f==0) S1=0; else S1=tab[f]; TR0=1;}void key5(void) { tl--; if(tl==0x00) th++;} void judge(void){ uchar line,row,de1,de2,keym; P1=0x0f; keym=P1; if(keym==0x0f)return; for(de1=0;de1<200;de1++) for(de2=0;de2<125;de2++){;} P1=0x0f; keym=P1; if(keym==0x0f)return; P1=0x0f; line=P1; P1=0xf0; row=P1; line=line+row; /*存放特征键值*/ if(line==0xde)key1(); if(line==0x7e)key2(); if(line==0xbd)key3(); if(line==0x7d)key4();}void time0_int(void) interrupt 1 //中断服务程序{ TR0=0; if(fun==1) { DA0832=tosin[b]; //正弦波 b++; } else if(fun==2) //锯齿波 { if(c<128) DA0832=c; else DA0832=255-c; c++; } else if(fun==3) // 方波 { d++; if(d<=128) DA0832=0x00; else DA0832=0xff; } TH0=th; TL0=tl; TR0=1;}void main(void){ TMOD=0X01; TR0=1; th=0xff; tl=0xd0; TH0=th; TL0=tl; ET0=1; EA=1; while(1) { display(); judge(); }}五、心得体会 开始的时候由于没有经验,不知如何下手,所以就去图书管找了一些书看,尽管有许多的设计方案,可是总感觉自己还是有许多的东西弄不太清楚,于是就请教同学。他常做一些设计,有一些经验。经过他的解释分析各方案之后,决定用查表的方法来做。这样可以降低一些硬件设计的难度,初次设计应切合自己的水平。用8031需要扩展ROM,这样还要进行存储器扩展。而且现在8031实际中已经基本上不再使用,实际用的AT89S51芯片有ROM,这样把经过采样得到的数值制成表,利用查表来做就简单了。我认为程序应该不大,片内ROM应该够用的。用LED显示频率和幅值,现有集成的接口驱动芯片,波形可通过示波器进行显示,单片机接上D/A转换芯片即可,这样硬件很快就搭好了。我以为这些做好了,构思也有了,写程序应该是相对容易的。谁知道,写起程序来,才想到功能键要有扫描程序才行呀,我真的感到很难。那时真的有点想放弃?于是就去请教了老师,老师帮忙分析了一下,自己又查阅了一些资料,终于明白了扫描程序怎么写。于是在自己的努力下,程序很快就写好了。这次是我的第一个设计器件,尽管经历了不少的艰辛,但给我积累了一点设计的经验,最后也有点小小的成就感。后面的路还很长,我还的努力!参考文献[1] 童诗白,华成英.模拟电子技术基础〔M〕.北京:高等教育出版社,2003.345-362[2] 潘永雄,沙河,刘向阳.电子线路CAD实用教程〔M〕.西安:西安电子科技大学出版社,2001.13-118.[3] 张毅刚,彭喜源,谭晓昀,曲春波.MCS-51单片机应用设计[M].哈尔滨:哈尔滨工业大学出版社,1997.53-612023-08-17 09:34:471
单片机设计简易正弦波发生器
楼上引用的原文链接在这,里面有电路图,保证让你更满意!以上信号发生器设计的原文地址http://wenku.baidu.com/view/8165bf2d7375a417866f8f56.html 满意请把分给我,哈哈更多电子问题请关注我,zhidao_ceo竭诚为您解答2023-08-17 09:35:122