首页 单片机AD转换c 语言程序

单片机AD转换c 语言程序

举报
开通vip

单片机AD转换c 语言程序单片机AD转换c 语言程序 AD转换c 语言程序 #include 〈c8051f020.h〉 #include #include #define ad0809 XBYTE[0x2f80] //A/D地址 /********函数声明********/ void Send7279Byte(unsigned char ch); //发送一个命令字 void Delay1us(unsigned char us) ; //延时1μ void Delay1ms(unsigned char T) ; //延时...

单片机AD转换c 语言程序
单片机AD转换c 语言程序 AD转换c 语言程序 #include 〈c8051f020.h〉 #include #include #define ad0809 XBYTE[0x2f80] //A/D地址 /********函数声明********/ void Send7279Byte(unsigned char ch); //发送一个命令字 void Delay1us(unsigned char us) ; //延时1μ void Delay1ms(unsigned char T) ; //延时1ms void delay10ms(unsigned char time); void SYSCLK_Init (void); //**** 变量及I/O口定义 ********* unsigned char adx1,adx10,adx100,m,n; unsigned char n31=4,n01,sure,k,mm; unsigned int set,tmr, he; sbit CLK = P1^6; // HD7279 sbit DAT = P1^7; // HD7279 #define NOSELECT7279 P5 |= 0x80 //SPICS4(P57)=1 #define SELECT7279 P5 &= ~(0x80) //SPICS4(P57)=0 //***********延时N * 1μ*****************************// void Delay1us(unsigned char us) //延时1μ { while (us) { _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); --us; } } //*********发送一个命令字****************// void Send7279Byte(unsigned char ch) //发送一个命令字 { char i; SELECT7279; //置CS低电平 Delay1us(100); //延时50μ for (i=0;i<0x8;i++) { if (ch&0x80) //输出7位到HD7279A的DATA端 { DAT=1; } else { DAT=0; } CLK=1; //置CLK高电平 ch=ch<<1; //待发数据左移 Delay1us(20); //延时8μ CLK=0; //置CLK低电平 Delay1us(20); //延时50μ } DAT=0; //发送完毕,DATA端置低,返回 } /************* 显示时钟 ************/ void displaytime() //显示时钟 { Send7279Byte(0xcd) ; Send7279Byte(0xa) ; ////显示 “A” Send7279Byte(0xcc) ; Send7279Byte(0xd) ; // //显示 “D” Send7279Byte(0x83) ; Send7279Byte(0xa) ; // //显示 “,” Send7279Byte(0x82) ; Send7279Byte( adx100) ; //显示百位 Send7279Byte(0x81) ; Send7279Byte( adx10); //显示 十位 Send7279Byte(0x80); Send7279Byte(adx1); //显示 个位 } //*********单片机时钟初始化***********// void SYSCLK_Init (void) { int i; // delay counter OSCXCN = 0x65; // start external oscillator with // 18.432MHz crystal for (i=0; i < 256; i++) ; // Wait for osc. to start up while (!(OSCXCN & 0x80)) ; // Wait for crystal osc. to settle OSCICN = 0x88; // select external oscillator as SYSCLK // source and enable missing clock // detector } //***************//初始化IO口*************************// void PORT_Init (void) { //XBR0 = 0x07; // Enable SMBus, SPI0, and UART0 XBR1= 0x02; //交叉开关允许 XBR2 = 0x40; // Enable crossbar and weak pull-ups EMI0CF=0x2F ; //复用方式,高4端口。 EMI0TC=0x265 ; //时序控制, P74OUT=0x20FF ; //P4-7口推挽输出 } // ************ 延时 n*10ms ******************** void delay10ms(unsigned char time) { unsigned char i; unsigned int j; for (i=0;i
本文档为【单片机AD转换c 语言程序】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_562397
暂无简介~
格式:doc
大小:19KB
软件:Word
页数:0
分类:生活休闲
上传时间:2017-10-22
浏览量:15