单片机问题

作者&投稿:芷贡 (若有异议请与网页底部的电邮联系)
单片机问题~

对于ROM,是只可以读而不能写的(烧程序时除外)。只要你接好了外扩,用MOVC就可以对外部程序存储进行读操作了(记得要有16位地址哦)
这个是对程序存储(内外都是的)的操作,片外的也可以。MOVX是对数据存储器。
有什么不理解可以追问

1。“code”是单片机C语言特有的关键字
在单片机中RAM的空间特别小,特别珍贵。RAM空间,存放变量。而一些常量,比如码表等常量放在ROM中。所以单片机中code就是告诉单片机这个数据放入ROM中。
本例中dispbit[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdF,0xbF,0x7F}; 数组内容为常量,故加上code,以节约RAM的空间。
其实code放在unsigned char 前也可以,比如code unsigned char dispbit[8]效果一样。
2.关于void T1zd(void) interrupt 3
“interrupt ”是单片机c语言中断关键字,至于后面的0,1,2,3,4,5,分别表示
0-外部中断0
1-定时器0
2-外部中断1
3-定时器1
4-串口中断
5-定时器2
“interrupt ”是单片机c语言中断关键字,是c51 语言在单片机中规定的,在程序编译时指明中断的类型。当相应的中断发生时,并执行这个中断函数。
本例中当定时器计数时间一到(即 TH1和TL1全部计满,并溢出 ),便执行下面程序,将0x1c放到 TH1中 0x18放到TL1 中,再开始重新计数(不断加1),每计满一次 LedNumVal值 加1。如此下去。。。

单片机P1口是有内部上拉电阻的,如果电源都正常并且单片机的程序运行也正常的话,应该是外部接口的问题。有可能地话,将引脚与外部电路断开后测一下引脚电压试试,如果正常就可以确定是外部电路的问题单片机是一门实践性很强的课程(是半软半硬的东西),所以必须是理论联系实践,我试过很多种教学法,还是觉得平凡老师创立的任务教学法的效果最好。因此本人的课程也将按找这个思路来写。 个人认为平凡单片机教程有些不足的地方,所以我也是改革的写教程了,完全按照人的认知规律来写,和平凡老师的教程在很大程度上不同。 好,下面我们开始学习了!请大家认真看! 一、什么是单片机呢? 1、和我们的计算机(电脑)差不多,大家都知道,我们的计算机(电脑)里面有 (1)CPU (2)硬盘 (3)内存 (4)主板 (5)等等。 这些东西是装在一个叫主机的里面的。好大!一个CPU大概要400块,硬盘也要500左右,内存200左右,主板500左右,这些东西加在一起大概要1600块左右。如果配上其他的,一台电脑要3000到4000左右吧。 2、但是如果把这些东西(CPU,硬盘,内存,主板)用集成块做好后,如下图所视: http://bbs.21ic.com/upfiles/img/200611/20061119213818365.jpg 3、请大家想想看这个集成块值多少钱?它可是具备了计算机的功能啊。是不是很贵啊? 不,价格并不高,从几元人民币到几十元人民币,体积也不大,一般用40脚封装,当然功能多一些单片机也有引脚比较多的,如68引脚,功能少的只有10多个或20多个引脚,有的甚至只8只引脚。 4、当然,在单片机机内部,CPU,硬盘,内存,主板等等东西要改个名字了。 (1)CPU,它的名字没有改,还是叫CPU(Central Processing Unit)。它是单片机的核心部件,包括运算器和控制器。运算器既是算术逻辑单元ALU(Arithmetic logic Unit),其功能是进行算术运算和逻辑运算。控制器一般由指令寄存器、指令译码器、时序电路和控制电路组成。起作用是完成取指令、将指令译码形成各种微操作并执行指令,同时控制计算机的各个部件有条不紊地工作。 (2)“硬盘”,改了名字,叫程序存储器,也叫只读存储器。用ROM(Read only memery)表示。其作用和硬盘差不多,用来存放用户程序。特点是:掉电后不会丢失数据。 (3)“内存”,也改了名字,在单片机里叫数据存储器,也叫随机存储器。用RAM(Random Access Memery)表示。其作用是用于存放运算的中间结果,数据暂村和缓冲,标志位等。特点是:掉电后会丢失数据。 (4)“主板”,也改了名字,叫做I/O(输入输出设备)当然也包含了串行口,并行口,定时器,记时器等等。 5、以上谈到的这些东西都在哪个集成块里面。我们把集成了这些东西的集成块叫做单片机。有些外国人叫微控制单元MCU(Micro Controller Unit),也有人叫嵌入式控制器(Embedded Controller)。现在明白了什么是单片机吗? 6、我总结一下:将CPU、程序存储器、数据存储器、I/O接口电路、定时器/计数器等计算机部件集成在一块芯片上,具有独特功能的单片微型计算机称着单片机。现在总明白了什么是单片机吧! 请大家用自己的话阐述一遍什么是单片机?? 二、当我们明白了什么是单片机后,再来猜猜一般的单片机的价格吧? (1)Intel公司1980年推出的标准MCS-51内核8051现在要7到10块钱。 (2)Atmel公司的AT89c51,AT89s51,AT89c52,AT89s52一般在7块钱左右。 三、我想大家会想一个“电脑”竟然是10块钱以内?功能怎么样?有什么用啊? 我可以告诉大家,它的功能很强大,是以后电子产品的发展方向。只要具有了智能的电子产品,就少不了弹片机技术。非常有用,就业前景非常之好。那么大家一定很想学了,于是去买了本书看。 哈哈,看不懂吧,感觉好难吧?那是因为你没有掌握好学习单片机的方法。学单片机光看书是不够的,也是学不会的。学单片机是需要一些条件的了! 下一页是学习单片机需要的条件. 随着社会的发展,电子行业出现了新的技术之一单片机技术,单片机技术在各行各业都得到了广泛的应用,如果说学电子的人不学单片机技术就像我们读书不读外语一样,被人认为是老土啊。 所以我们学电子的一定要学单片机技术。那么如何学习这门技术呢?到底是难还是容易呢?这就要看你的学习方法了。 如果你闭门造车试的学习方法,肯定很难学好的。我根据我这几年的教学经验,我总结出了学单片机的相关教学方法,现在我将把我的教学过程写出来。 学单片机第一步是:建立自己的学习条件。 四、学习单片机需要什么条件? (1)一台电脑——用于编程和学习。(3000到4000块钱) (2)编程器——用于把编写好的程序写到芯片中。(100到1000快钱) (3)仿真器——主要是为了调试程序的正确性。(1000到2000块钱) (4)如果没有编程器和仿真器,也可以买个便宜的单片机实验板。如电子之城的AZ系统。也就300块钱左右。 或者是电子之城的AS系统,大概是400块钱。它集合了编程器和仿真器的所有功能。推荐买单片机实验板! (5)还要多买几块单片机芯片,如:AT89C51,AT89S51,AT89S52等等。 五、有了这些东西,如果你已经学了一点单片机知识的话,就可以做搞开发了。 下面我来谈谈单片机开发的过程,以做流水灯为例进行讲解。 (1)设计好硬件电路图 按下图把单片机的各个脚和元器件连接起来: http://bbs.21ic.com/upfiles/img/200611/20061119213942329.gif (2)在电脑上用软件(如keil c51)编写程序。 ORG 0000H LJMP START ORG 0030H START:MOV A,#0FEH LOOP:MOV P1,A LCALL DELAY RL A LJMP LOOP DELAY:MOV R7,#0FFH D1:MOV R6,#0FFH D2:DJNZ R6,D2 DJNZ R7,D1 RET END

想学习单片机应该首先学会这些东东:1>IAP(In Application Program)在应用编程 ISP(In System Program)在系统编程根本区别: IAP: 动态的,CPU CORE已经运行,自己从外面读数据,完成写入自身FLASH IAP: 静态的,实质上是由外部实现串行编程写入待.<2>答:具备在应用中编程IAP功能的单片机,其程序存储器必须是可以重复烧写编程的版本(比如FLASH)。可以用于具备远程遥控软件版本升级或者参数修改的产品项目之中(比如远程抄表、用户端电话计费等系统的远程费率参数和算法程序修改);也可以应用于具备自编程功能(免用微机和烧写器)的单片机学习机、单片机单板机、实验板、演示板、教学模块等各种学习和实验工具之中。对于处在同一个存储器空间的FLASH程序存储器,不能同时扮演“被烧写存储器”和“取指令存储器”的双重角色。为了解决这个矛盾,不同厂家的单片机采用了不同的解决方案,比如: ① 可以将FLASH程序存储器分成地址有映射关系的两个区,分别由各自的电荷泵提供烧写电压。当烧写一个区时,该区的电荷泵工作,同时执行存放在另一个区的指令。例如,SST(Silicon Storage Technology)公司利用他的SuperFlash技术研制的FlashFlex51单片机系列,各个型号片内分别带有20KB、36KB或68KB可多次编程的程序存储器。该存储器又分为主存储区和次存储区。各个型号的主存储区分别为16KB、32KB或64KB,次存储区则统一为4KB。 ② 可以将单片机的程序存储器地址空间分为ROM区和FLASH区,ROM区在出厂之前就已经固化有烧写专用程序,FLASH区作用户程序存放区,这样一来,即使在烧写FLASH的同时,也不会影响对于ROM中程序的执行。MOTOROLA公司推出的MC68HC908系列单片机中采用的就是这种解决方案。 ③ PIC16F87X系列单片机中,采用了不同的解决方案。FLASH程序存储器并不分区,在对其进行烧写并且电源自动切换到电荷泵供电时,CPU自动停顿而等待。在一个单元烧写操作完毕,FLASH工作电压自动切换到正常值时,CPU才继续执行FLASH中的烧写专用程序或用户程序。 ④ 在数据存储器RAM和程序存储器FLASH两种存储器统一编址的单片机中,还可以采用的另一种方案是,在准备修改FLASH区中的用户程序之前,先把烧写专用程序拷贝到RAM区,然后跳转到RAM区去执行该程序,实现对FLASH程序存储器的烧写操作。在烧写完成之后再跳回到FLASH存储器执行正常的用户程序。微芯公司新近推出的高性能PIC18C601/801单片机采用的就是这种解决方案。MOTOROLA公司推出的MC68HC908系列单片机的某些型号,也可以采用这种解决方案。SST89C54/58(简称89C54/58)是美国SST公司推出的多用途51系列单片机,片内集成了20 kB/36 kB的SuperFlashE'PROM程序存储器,分为BLOCK0(16kB/32kB)和BLOCKl(4kB)两块。其中,BLOCKl可以映射(Mapping)到64kB存储空间的最高端或最低端,而且,对于程序计数器来说可以是不可见的,

不知道是否能帮助你,希望你给予采纳

楼上的这种人简直就是人渣。
蹭分的那种,鄙视。

说实话,你真的比较菜,没用过单片机吧,用用你就知道了,一般定时不会用死循环数指令的方式来定时的,是用单片机的定时器来定时的;如果你非要数指令来定时,那你要知道你C语言反汇编之后的数数循环体里面的总的指令周期,然后看你的单片机CPU时钟是多少,每种单片机的CPU从晶振的分频是不一样的;

这个函数有问题
1.uchar 是unsigned char
最大值为255,而i=2000 执行结果是 i=0xD0 (keil仿真)
2.通过keil的仿真,测试实际延时为400us左右
所以不要这样延时

可以用如下的方法近似延时1ms

void d1ms(void)
{
uchar a,b;

for(a=23;a>0;a--)
{
for(b=20;b>0;b--)
{
}
}
}
后面一个问题不清楚哈。。。。。。

如果想简单的话,不需要用单片机,直接一个语音芯片就可以搞定了,具体你可以先看看ISD系列的可录语音芯片,就是比较贵。如果是固定的引擎声,你问问卖语音芯片的厂家,应该有掩膜ROM的版本卖,会很便宜,你把芯片的触发端接在油门控制上,利用高低电平就可以了。如果纯用单片机实现比较麻烦,不是很实际。


我就想知道圆木分片机上下对不平怎么办
1、圆木多片锯整排出料板面都有台阶错位。这种情况是由于上下轴上对应的锯片没有在一个垂直线上,这时如果锯切木料就会错位。解决方法也比较简单,重新安装或调整锯片,锯片与锯片之间有垫套,检查中间有没有挤压木屑,如果有木屑会使垫套变厚,这样就会造成上下锯片对不齐。2、圆木多片锯锯片其中的单片...

胶片旁轴相机的一些问题
那么在这里就会有一个很有意思的问题了,倘若你的镜头是F2.8光圈的话,景深是可以覆盖到2.8米~ 3.2米的位置的,所以最后的照片出来也是清晰的,但实际上对焦是不准的。所以,测试旁轴相机的对焦,除非你是大光圈镜头(例如F1.4以上),在最近对焦1米左右时景深往往只有几厘米,这个时候拍照测试才能...

为什么傻瓜胶片机一直挂不上卷?
没卷到位,你的胶卷圈进去起码要一圈半左右,卷进去的部分绕一圈后要能被这个卡扣压紧,不然转轴转动时是带不动胶卷的。

工业洗片机洗出胶片有黑印微缺陷怎么回事?
机器不干净,建议清洗干净后重新配药,控制好温度。片子你是不是用手摸过?片子被有汗水的手或油污的手摸过也会影响冲洗效果,建议戴手套操作

羊肉片机切肉切下来的是碎片是什么毛病?
是肉的问题说明是几块肉拼的。

尼康fe2 胶片机 a档 问题
但就是这样。老式相机的感光元件,FE2等,动态范围比较有限,而且,它是通过五棱镜反射之后,在取景窗附近测光的。你把快门缩至F22,对于测光元件来说,入射光几乎等于黑夜了(在这么长的光路和小光圈之下)。测光当然是不准的…数码相机的光圈全开测光和新式测光系统,可以避免这个问题。(我知道你说两个...

三星n7000检测不到sim卡片机
尊敬的三星用户您好:您的型号未在大陆上市,我们无相关针对性的资料,您可参考国内机型类似问题相关设置方法:1.重新开关机,检查手机卡是否插入到位及插入方向是否正确2.取出SIM,用橡皮清洁SIM卡金属触点。(是否是sim卡接触不良)3.更换一张SIM卡试试(是否sim卡已老化或坏损)4.备份手机数据(电话簿...

长城胶片机,操作问题。
胶卷没放好,没上卷。图二那个键是倒片钮,拍完胶卷倒回暗盒里面。

胶片机的冲扫问题
2)一般的冲洗、扫描是将整个胶卷扫描并刻成一个盘,但该盘上的每张PP的像素不会太高,如果你觉得某几张PP要做大幅度放大则可以请店家单独另扫描,当然这几张PP要另外计费的。3)如果是彩色正片冲洗后不一定要扫描,因为可以用观片灯或幻灯机上直接看图像,选好图象请店家专门扫描几张也可以。负片...

中空玻璃合片机不吸片什么原因
控制吸气的电磁阀线圈可能烧了,也有可能是电磁阀不换向了,如果PC没问题的话

永定区17739896475: 关于单片机的几个问题! -
伯牙吾台费小儿: 1.分析单片机与通用计算机的相同和不同之处 单片机就是微型计算机,只是说单片机只包裹控制器、计数器、存储器、IO口; 2.单片机有哪些应用领域 自动控制的地方都用 3.归纳分析80c51单片机硬件结构特点 控制器+计数器+存储器+IO口 4.归纳分析80c51单片机定时器/计数器的特点 计时益处产生中断 5.归纳分析80c51单片机中断系统的特点 放下当前程序转跳到另一个地方 6.归纳分析80c51单片机指令系统的特点 运算+逻辑+控制转移 7.归纳分析80c51单片机串行口接受和发送数据的过程 写入寄存器+然后发送 8.简述在MCS-51单片机系统中,外接程序存储器和数据存储器、地址线、数据线、控制线的接法 这个你去看书

永定区17739896475: 单片机的问题 -
伯牙吾台费小儿: 关于51单片机内存问题,一直是个疑惑大家的问题,因为51单片机是个很另类的单片机. 下面我给楼主讲解一下: 51单片机之所以另类,是因为,他寻址内存的空间,不是靠总线,是用指令的方式. 51单片机有以下几个内存模块组成: ROM...

永定区17739896475: 单片机基本问题 -
伯牙吾台费小儿: 1,不是,读回的是该引脚的电状态,基本可以说是0或1 2,单片机有4个中断口,在开放中断的情况下,要看中断初始化设置的内容,具体就是哪个中断开放,而不是看级别而定的

永定区17739896475: 跪求单片机问题 -
伯牙吾台费小儿: 1)5位 2^13 =8K 的地址 2) DIV 需要4个周期 6M的一个周期是2us 四个周期就是8us 3)原码:1010 0100 反码:1101 1011 补码:11011 100 4)你的问题我不是很白 JNC 为0跳 JC 为1跳 5)一次 6)你是不是写错了啊 或者还有东西没有写完 7)A=16H AC=1 OV=0 好好学汇编 现在用汇编 的人越来越少了

永定区17739896475: 简单的单片机问题 -
伯牙吾台费小儿: ;启动入口 ORG 0000H ;复位启动 LJMP START ; ORG 0100H ;主程序从0100H开始 ; ;主控程序START: MOV R0,#50H ;用R0间接寻址 MOV X,#0FFH ;预先存入一个字节所能装下的最大值LOOP: MOV...

永定区17739896475: 单片机方面的问题!? -
伯牙吾台费小儿: 具有ISP功能的单片机才能用在线下载电路给这个单片机进行烧写.但不是每个厂商的ISP电路都一样的,就拿51系列单片机而言,at89S51是用计算机的并口经行下载程序的,需要有一个244芯片经行驱动和隔离(如果敢保证单片机外围电路没问...

永定区17739896475: 单片机 简单问题 -
伯牙吾台费小儿: temp的值变为temp按位与16进制数0F.例:假设temp=00110011,temp=temptemp值变为:00000011."按位与"就是一位一位的取“与”,0与0是0,0与1是0,1与1是1....如果长期学单片机请...

永定区17739896475: 单片机问题 -
伯牙吾台费小儿: 应该不是单片机的问题,外接10K的上拉电阻,用万用表测量一下端口的电压,看一下是不是你程序设定高/低电平一样,单个端口也可能会烧坏,最简单的办法是你用另一个单片机去试,如果还不行的话,那就是你电路有问题了,我之前也出现过这程现像,是不小心把这个脚的引线与其它线接在一起了,检查一下吧,检查问题也是学习单片机的技能之一

永定区17739896475: 单片机问题 -
伯牙吾台费小儿: 每个RAM单元都能且只能存放一个八位二进制数.寄存器是RAM的一部分,当然只能存放一个八位的二进制数,不是八个二进制数.字节地址:P0-80H;P1-90H;P2-A0H;P3-B0H

永定区17739896475: 单片机最简单问题 -
伯牙吾台费小儿: (50H)是取50H地址的内容,带括号就是把括号内的数作为地址,取出这个地址里存放的数据的意思.RO是寄存器,它有地址,但编程时不用关心,你不会去操做R0的物理地址.50H不是R0的物理地址,只是把50H这个立即数存放在R0中,当你看到@这个符号时,就是地址操作的意思,相当于C语言里的指针.此例中,是吧#67H这个立即数送入以R0中的数据为地址的单元.

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