- 1、本文档被系统程序自动判定探测到侵权嫌疑,本站暂时做下架处理。
- 2、如果您确认为侵权,可联系本站左侧在线QQ客服请求删除。我们会保证在24小时内做出处理,应急电话:400-050-0827。
- 3、此文档由网友上传,因疑似侵权的原因,本站不提供该文档下载,只提供部分内容试读。如果您是出版社/作者,看到后可认领文档,您也可以联系本站进行批量认领。
查看更多
ADC0804模数转换与显示.
ADC数模转换与现实 (扩展用1602带电阻值显示)实验目的:掌握ADC的使用控制方法。?实验内容:?基本要求:设计一程序采集ADC0809第3通道的电压值,将其转换为数字量,并在数码管上显示;5V显示为255,?0V显示为000。?扩展要求:将转换结果以用1602表现出当前电阻值。C程序:#includereg52.h//52系列单片机头文件#includeintrins.h //包含_nop_函数所在的头文件#define uint unsigned int //宏定义#define uchar unsigned charsbit CS=P2^1; //ADC0804 CS 端sbit wr=P2^4; //ADC0804 WR 端sbit rd=P2^5; //ADC0804 RD 端sbit lcd1=P2^3; //lcd锁存器sbit lcden=P2^2; //lcd1602 EN 端sbit lcdrs=P2^0; //lcd1602 RS 端sbit dula=P2^7; //段选端sbit wela=P2^6; //位选端// float r;uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};void delay(uint xms) //延时函数{ uint i,j; for(i=xms;i0;i--) for(j=110;j0;j--);}void display(uchar bai,uchar shi,uchar ge) //数码管显示函数{ dula=1; //打开段选 P0=table[bai]; //送入百位 dula=0; //关闭段选 P0=0xff; //消隐 wela=1; //打开位选 P0=0x7e; //选择第一位 wela=0; //关闭位选 P0=0; //消隐 delay(5); //延时 dula=1; P0=table[shi]; dula=0; P0=0xff; wela=1; P0=0x7d; wela=0; P0=0; delay(5); dula=1; P0=table[ge]; dula=0; P0=0xff; wela=1; P0=0x7b; wela=0; P0=0; delay(5); } void write_com(uchar com) //1602写指令 { lcdrs=0; P0=com; delay(5); lcden=1; delay(5); lcden=0; }void write_data(uchar data1) //1602写数据{lcdrs=1; P0=data1; delay(5); lcden=1; delay(5); lcden=0; }void init() //1602初始化{dula=0; //关闭段选wela=0; //关闭位选lcden=0; //lcden置于低电平write_com(0x38); //设置16*2显示,5*7点阵,8位数据接口write_com(0x0c); //设置开显示,不显示光标write_com(0x06); //写一个字符后地址加1write_com(0x01); //显示清0,数据指针清0}void lcd_display(uint ge,F1,F2,F3,F4) //lcd_显示 (F1小数点后一位 F2小数点后两位 F3 F4){ wela=0; dula=0; lcden=1; lcd1=1; //打开lcd锁存器 // write_com(0x01); write_com(0x80); //选择在1602第一行显示 write_data(48+ge); //ascii码48 写入个位 delay(5); //延时 write_data(.); delay(5); write_data(48+F1); delay(5); write_data(48+F2); delay(5); write_data(48+F3); delay(5); write_data(48+F4); delay(5); write_data(K); delay(5); lcd1=0; //关闭锁存器 } void main()//主程序{ uchar a,A1,A2,A3,shu; uint ge,F1,F2,F3,F4; float r; init(); CS=0; while(1) { r=(255-shu)/256; //转换公式 wr=1;_nop_();wr=0; //启动A/D转换_nop_();wr=1; for(a
您可能关注的文档
最近下载
- 2024-2025学年初中信息技术(信息科技)七年级全一册义务教育版(2024)教学设计合集.docx
- 《眼耳鼻咽喉口腔科护理学》教案 第13课 耳鼻咽喉科常见疾病患者的护理(三).docx VIP
- 2025年江苏南京中考语文试卷(真题--含答案) .pdf VIP
- 统编版(2024)道德与法治七年级上册期末复习全册知识点提纲.docx VIP
- 建筑工程述标(鲁班奖项目超高层框架结构技术答辩).pptx VIP
- 混凝土结构通用规范GB55008-2021知识培训.pptx VIP
- 《电梯关键部件寿命评估技术规范》.pdf VIP
- 高压氧舱技术的进步与挑战.docx VIP
- 消防考试试题100题及答案.docx VIP
- 2025电力企业数字化转型成熟度评价指南.pdf VIP
文档评论(0)