51单片机 ADC0809模数转换与显示+Proteus仿真 51单片机 ADC0809模数转换与显示+Proteus仿真
Proteus仿真
实例代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 /\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*\*/ #include <reg52.h> #include <absacc.h> #define uint unsigned int #define uchar unsigned char #define DAC0832 XBYTE[0xfffe] void DelayMS(uint ms) { uchar i; while(ms--) { for(i=0;i<120;i++); } } void main() { uchar i; while(1) { for(i=0;i<256;i++) DAC0832 = i; DelayMS(1); } }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 /\*-------------------------------------------------------------------------- ABSACC.H Direct access to 8051, extended 8051 and NXP 8051MX memory areas. Copyright (c) 1988-2010 Keil Elektronik GmbH and ARM Germany GmbH All rights reserved. --------------------------------------------------------------------------\*/ #ifndef \_\_ABSACC\_H\_\_ #define \_\_ABSACC\_H\_\_ #define CBYTE ((unsigned char volatile code \*) 0) #define DBYTE ((unsigned char volatile data \*) 0) #if !defined (\_\_CX2\_\_) #define PBYTE ((unsigned char volatile pdata \*) 0) #endif #define XBYTE ((unsigned char volatile xdata \*) 0) #define CWORD ((unsigned int volatile code \*) 0) #define DWORD ((unsigned int volatile data \*) 0) #if !defined (\_\_CX2\_\_) #define PWORD ((unsigned int volatile pdata \*) 0) #endif #define XWORD ((unsigned int volatile xdata \*) 0) #if defined (\_\_CX51\_\_) || defined (\_\_CX2\_\_) #define FVAR(object, addr) (\*((object volatile far \*) (addr))) #define FARRAY(object, base) ((object volatile far \*) (base)) #define FCVAR(object, addr) (\*((object const far \*) (addr))) #define FCARRAY(object, base) ((object const far \*) (base)) #else #define FVAR(object, addr) (\*((object volatile far \*) ((addr)+0x10000L))) #define FCVAR(object, addr) (\*((object const far \*) ((addr)+0x810000L))) #define FARRAY(object, base) ((object volatile far \*) ((base)+0x10000L)) #define FCARRAY(object, base) ((object const far \*) ((base)+0x810000L)) #endif #if defined (\_\_CX2\_\_) #define HBYTE ((unsigned char volatile huge \*) 0) #define HWORD ((unsigned int volatile huge \*) 0) #define HVAR(object, addr) (\*((object volatile huge \*) (addr))) #define HARRAY(object, base) ((object volatile huge \*) (base)) #endif #define CVAR(object, addr) (\*((object volatile code \*) (addr))) #define CARRAY(object, base) ((object volatile code \*) (base)) #define DVAR(object, addr) (\*((object volatile data \*) (addr))) #define DARRAY(object, base) ((object volatile data \*) (base)) #define XVAR(object, addr) (\*((object volatile xdata \*) (addr))) #define XARRAY(object, base) ((object volatile xdata \*) (base)) #endif
程序源码和仿真资源 1 2 3 链接:https://pan.baidu.com/s/1eR_JjlTdg53v0UyBAcRs3Q 提取码:34f2
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!