|
看门狗具体使用方法如下: 在程序初始化中向看门狗寄存器(WDTRST地址是0A6H)中先写入01EH,再写入0E1H。即可激活看门狗。 程序代码 org 0000 Ljmp begin Begin: Mov 0A6H,#01EH ;先送1E Mov 0A6H,#0E1H ;后送E1 ;在程序初始化中激活看门狗。 …… …… For: …… Mov 0A6H, (06月09日) [查看全文] 本人做的毕业设计发上来大家共享 有需要改进的地方大哥们尽管提哈!! 图在上传的文件里 程序在下面 源程序: 单路采集程序: MOV DPTR,#0F8FFH MOV R0,#00H ;将存储器的首地址存在R0,R1两个寄存器中 MOV R1,#00H MOV R2,#200D ;设置循环 MOV R3,#4 MOV (08/12/2006 17:12:29) [查看全文] 单片机本身没有开发编程能力,所以要把单片机变成一种应用产品,必须借助于硬件开发和软件开发两种工具。在进行软件开发时,首先利用相关的编辑软件,按照相应的格式建立PIC单片机的源程序(助记符程序),然后对源程序进行汇编。在完成汇编之后,用户可以利用模拟调试软件(价位低)或者硬件在线仿真器(价位高)对其目标程序(机器代码)进行运行调试,以发现其错误并修改之。在经过调试、修改、再汇编之后,即可将修改后的目标程序用硬件(工具)编程器将目标代码烧写到用户的PIC芯片中。最后将烧写后(即固化)的芯片插入到用户板(实验板)脱机运行,如还有问题(通常是多条程序的条件下),就检查硬件电路和软件的设计,找出错误并修改、再汇编、调试直到脱机运行正常为止。 Microc (08/12/2006 16:59:29) [查看全文] 阅读一些PIC单片机的源程序开始段,会发现有一些特殊指令助记符,这些助记符与指令系统的助记不同,没有相对应的操作码,通常称这些特殊指令助记符为伪指令。 伪指令在源程序中的作用是为完成汇编程序作各种准备工作的(实际上是给PC机汇编的注释),这些伪指令仅在汇编过程中起作用,一旦汇编结束,伪指令的使命就完成。 在汇编程序MPASM中,有四类伪指令:数据伪指令、列表伪指令、控制伪指令和宏汇编指令。 现在,我们将对前两类中的常用伪指令予以说明,后两类伪指令等到在具体程序中出现时,再加以说明。 (1)ORG存放单元起始地址 格式:<标号>ORG<地址表达式> 说明:ORG用于指定该伪 (08/12/2006 16:28:08) [查看全文] PIC系列单片机的源程序是指PIC的助记符指令编写的程序(汇编语言程序)。这里将对PIC源程序的格式要求和其源程序的建立或书写作简要的介绍。 一般来说对PIC的源程序格式并没有要求统一的编写形式,用户可以根据习惯来编写,当然编写时应遵守汇编的一些规范。下面以PIC16F84芯片点亮一支发光二极管的汇编程序实例,介绍一种源程序编写的方法(格式),以供实际应用时参考。 源程序清单 1File TURNON.ASM 2Assembly code for PIC16F84microcontroller 3Turns on an LEDconnected to B0 4Uses RCoscillator,abou (08/12/2006 16:26:15) [查看全文] 各大类单片机的指令系统是没有通用性的,它是由单片机生产厂家规定的,所以用户必须遵循厂家规定的标准,才能达到应用单片机的目的。 PIC 8位单片机共有三个级别,有相对应的指令集。基本级PIC系列芯片共有指令33条,每条指令是12位字长;中级PIC系列芯片共有指令35条,每条指令是14位字长;高级PIC系列芯片共有指令58条,每条指令是16位字长。其指令向下兼容。 在这里笔者介绍PIC8位单片机汇编语言指令的组成及指令中符号的功能,以供初学者阅读相关书籍和资料时快速入门。 一、PIC汇编语言指令格式 PIC系列微控制器汇编语言指令与MCS-51系列单片机汇编语言一样,每条汇编语言指令由4个部分组成,其书写格式如下: (08/12/2006 14:29:29) [查看全文] 上一节我们讲述了单只LED与单片机的接口电路及编程实例,目的在于让初学者了解LED在单片机中的应用原理,单只LED显示在实际应用中并无多大用途,一般都是多位的LED显示。现在我们作进一步学习,我们要讲解的是8位LED的显示原理及实际的编程方法。这里我们没有采用多I/O口的8051系列单片机,而是采用了完全兼容C51指令系统的质优价廉的AT89C2051单片机,它的软件编程与C51完全一致。 在多数的应用场合中,我们并不希望使用多I/O端口的单片机,原则上是使用尽量少引脚的器件。在没有富余端口的情况下,怎样通过扩展电路达到预期的目的呢?我们希望通过此例使设计人员在实际应用中了解一点电路扩展的原理,对实际 (08/10/2006 23:43:07) [查看全文] 单片机I/O的应用最典型的是通过I/O口与7段LED数码管构成显示电路,我们从常用的LED显示原理开始,详尽讲解利用单片机驱动LED数码管的电路及编程原理,目的在于通过这一编程范例,让初学者了解I/O口的编程原理,意在起举一反三,抛砖引玉的作用。 LED的发光原理,稍有电子技术基础的人士都很清楚,我们不想作过多的介绍,7段LED数码管,则在一定形状的绝缘材料上,利用单只LED组合排列成“8”字型的数码管,分别引出它们的电极,点亮相应的点划来显示出0-9的数字。 (08/10/2006 23:23:05) [查看全文] 我们以一个实际的时钟电路来说明定时器的软件编程方法,时钟就是我们最为常见的显示时、分、秒为单位的计时工具,它是典型的应用代表。 时钟的最小计时单位是秒,但使用单片机定时器来进行计时,若使用6.0MHz的晶振,即使按工作方式1工作,最大的计时时间也只能到131ms,所以我们可把每个定时时间取125ms,这样定时器溢出8次(125ms╳8=1000ms)就得到最小的计时单位秒。而要实现8次计数用软件方法实现是轻而易举的。 我们使用定时器1,以工作方式1工作,定时器进行125ms定时。采用中断方法进行溢出次数的累计,当计满8次即得到1秒的 (08/10/2006 22:46:07) [查看全文] 大家都知道,PIC单片机的大多数寄存器,包括RAM数据存储器的每个存储单元都能实现移位、清位、位测试等系列复杂操作功能。然而,协调它们运行的(应用最广泛的基本级、中级)精简指令集中,却没有对寄存器的某“位”进行“取反”运作的现成指令,而在实际应用中对某些“位”进行取反运作是很需要的。如下图所示。单片机PIC16C622的端口RB作为输出端口的8个引脚,分别控制着8个不同的电器设备。按动按钮AN一下,继电器J吸合,再按一下J释放,即按动AN一下,端口RB3引脚的输出状态改变一下,而RB口的其它7个引脚输出保持原有状态不变。在这种情况下最好的方法是按动一下AN,对PORTB(3)“取反一次”——这对于MCS-51系列单片机来讲是极容易的。只要写一条(如CPL (07/31/2006 08:37:16) [查看全文] ;Copyright (c)1998,MICROCHIP Technology Inc
;************************************************* TITLE"PS7219TEST";标题 LIST P=16C711;处理器为PIC16C711 #INCLUDE P16c711.INC TIMER1EQU H'000C';定义延时寄存器 TIMER2EQU H'000D' SENT_ADDRESS EQU H'000E';定义发送地址寄存器 SENT_DATA EQU H'000F';定义发送数据寄 (07/27/2006 18:56:50) [查看全文] 摘要:探讨了在使用Visual C++编程时利用Microsoft Communications Control控件编写串行通信程序的方法,并给出了例程,具有一定的实用意义。
关键词:Visual C++串行通信ActiveX 在开发微机控制系统的过程中,我们经常需要通过RS-232串行接口与外部设备进行通信。例如分级控制 (07/27/2006 06:51:39) [查看全文] #include <reg51.h> sbit BT_SND =P1^0; sbit BT_REC =P1^1; /********************************************** IO 口模拟232通讯程序 使用两种方式的C程序 占用定时器0 **********************************************/ #define MODE_QUICK #define F_TM F0 #define T (07/22/2006 13:57:28) [查看全文] /*============================================================ 功能:使用12232液晶显示图片演示 作者: Mingtree ycxms88@163.com http://www.mcu123.com ============================================================== 硬件:TG12232B (122*32)模拟口线接线方式 连接线图: --------------------------------------------------| (07/22/2006 13:49:04) [查看全文] 液晶显示1602与遥控程序演示! //遥控带液晶显示程序,已经调试完毕2002/10/30 //并可显示时钟 //若遥控接收不到,修改脉宽值即可 // //----------------------------------------------- //http://www.mcu123.com //Email:ycxms88@163.com //作者:Mingtree //----------------------------------------------- #include <reg51.h> #include<intrins.h> #include<absacc.h (07/22/2006 13:44:18) [查看全文] 摘 要 介绍利用VB6串行通信编程的方法,对采用了RS-232接口的仪器进行串行通信的计算机测控软件开发,以及实现仪器功能和指标的验收。
关键词 串行通信 测控 软件开发 (07/22/2006 11:01:01) [查看全文] 摘 要 详细介绍了在Windows环境下应用VC++实现PC机与单片机的几种串行通信方法,给出了用Visual C++6.0编写的PC机程序和用C51编写的单片机通信程序。经实际应用系统运行稳定可靠。 关键词 Visual C++ 类 串行通信 (07/22/2006 10:51:18) [查看全文] ---- Windows下串行通信 ---- 与以往DOS下串行通信程序不同的是,Windows不提倡应用程序直接控制硬件,而是通过Windows操作系统提供的设备驱动程序来进行数据传递。串行口在Win 32中是作为文件来进行处理的,而不是直接对端口进行操作,对于串行通信,Win 32 提供了相应的文件I/O函数与通信函数,通过了解这些函数的使用,可以编制出符合不同需要的通信程序。与通信设备相关的结构有COMMCONFIG ,COMMPROP,COMMTIMEOUTS,COMSTAT,DCB,MODEMDEVCAPS,MODEMSETTINGS共7个,与通信有关的Windows API函数共有26个,详细说明可参考MSDN帮助文件。以下将结合实例,给出实现串行通信的三种方法。 (07/22/2006 10:49:59) [查看全文] -- Highest Priority Encoder - LIBRARY ieee; USE ieee.std_logic_1164.ALL; entity priority is port(I : in bit_vector(7 downto 0); --inputs to be prioritised A : out bit_vector(2 downto 0); --encoded output (07/19/2006 21:59:45) [查看全文] -- Three-input Majority Voter -- The entity declaration is followed by three alternative architectures which achieve the same functionality in different ways. ENTITY maj IS PORT(a,b,c : IN BIT; m : OUT BIT); END maj; --Dataflow style architecture ARCHITECTURE concurrent OF maj IS BEG (07/19/2006 21:59:45) [查看全文] -- Multiplexer 16-to-4 using if-then-elsif-else Statement
use ieee.std_logi (07/19/2006 21:59:45) [查看全文] ------------------------------------------------------------------------------------ -- DESCRIPTION : (07/19/2006 21:59:44) [查看全文] -- A Variety of Adder Styles ------------------------------------------------------------------------ (07/19/2006 21:59:44) [查看全文] (07/19/2006 21:59:44) [查看全文] |
内容分类
|