在許多程序设计的場合,我們時常会利用到时间延迟子程序,接下来就介紹一个可以控制延迟时间的延迟子程序。开下面是利用发工具E8-ICE来演示的一个精确的控制延迟时间的程序,选择使用石英振荡器,可以精
在EM78X56系列的IC中有三种中断信号,分別是:TCC溢位中断。PORT6Change中断。外部信号中断。在说明中断使用方式之前,用户要了解中断寄存器,及与中断息息相关的控制寄存器(ControlRegister),另外在芯
在一个沒有規则性的内容转换中,查表程序是相当有用的,用户可以使用查表程序很快速的得到相关内容的转换。例:设计一个程序,將如下图所示中的PORT5读到的一个数值,将输入内容做转换,然后输出到PORT
本例为单字节二进制数(0X20)转换为非压缩BCD 码,存在0X25,0X24,0X23 中,0X25 为百位,0X23 为个位。main: MOV a,@0xa4 ;赋值MOV 0x20,aMOV 0x21,aMOV 0x22,aMOV a,@0x0 ;0x23,0x24,0x25 单元清0MOV 0x23
两字节压缩BCD 码转换为两字节二进制数。算法如下:BCD 码abcd=1000a+100b+10c+d=10{10[10a+b]+c}+d,将各位BCD 码分离出之后,即可根据此式转换为二进制数。涉及到乘法运算和多字节加法运算。0X20,0X
多字节二进制除法被除数为3 个字节,在0x20、0x21、0x22 单元中,0x22.7 为最高位,0x20.0 为最低位。除数为2 个字节,在0x30、0x31 中。算法:EM78单片机没有除法指令,而且本例中除法为多字节除法,可
EM78单片机没有乘法指令,所以乘法运算需要转化为加法运算。0X20 单元数据乘以0X21 单元数据,结果放在0X22,0X23 中。main: MOV a,@0x0 ;0x22,0x23 单元清0MOV 0x22,aMOV 0x23,aMOV a,@0x3f ;赋值MOV 0
三 多字节二进制减法0x20,0x21 中的二进制无符号数减0x22,0x23 中的二进制无符号数, 低地址中放低字节数据。假设被减数大于减数。注意:(1)sub 指令减出结果为正时,c 标志置1。(2)sub 指令减出结果
二 多字节二进制加法0X20,0X21 中的二进制无符号数与0X22,0X23 中的二进制无符号数相加,结果放在0X24,0X25,0X26 中,低地址中放低字节数据。Main: MOV a,@0x78 ;赋值MOV 0x20,aMOV a,@0xc6MOV 0x21,aM
将一个字节的二进制数转换为两位16 进制数的ASCⅡ码main: mov a,@0x9f ;二进制数为0x9fmov 0x30,a ;二进制数存入0x30mov a,@0x02mov 0x10,a ;0x10 中存放转换次数mov a,@0x31mov 0x04,a ;0x04 中为转换
本程序已经稳定使用很长一段时间了,如果非要追根求源,应该追溹到1998年,由于本系统是基于IICEEPROM的,故对2401的读写采用了阻塞的方式,读不到数据或写不入数据就不退出。本程序是基于447的,也在1
应用义隆单片机编程时应注意以下几点:1.当程序多于1K时,将出现跳页情况,这时如果有开中断处理程序,在进入中断后,一定要把STATUS的PS0、PS1位复位为0(即回到第0页ROM),否则当遇到有JMP或CALL等跳
EMC的基本指令语法,其实也就57/58条,如何变化折腾,就看各位的修行造化了。但是,新手上路总容易进入一些误区,而老鸟们的一些技巧也值得借鉴。废话少说,言归正传,且看匠人娓娓道来……1.减法指令的
/********************************************************* Description: 468N RC temperature ** Company: HANTA (suzhou) LTD. ** Author: Sunli ** Date: 03/09/2007* 最后更新日期:13/09/200
芯片为EM78P153;P64,P65接晶振,振荡模式为4MHz晶振;看门狗关,指令周期为2个CLOCK,P63为复位脚;*******************IO口的定义*********************PORT6EQU0X06IOC60EQU0X06;**************特殊功能寄