- 6
- 0
- 约1.44万字
- 约 100页
- 2019-11-06 发布于广东
- 举报
AMUX0通道选择寄存器(AMX0SL) 位7-4:未使用。读=0000b;写=忽略。 位3-0:AMX0AD3-0:AMUXO地址位。 0000-1111b:根据书表4.2选择ADC输入。 2. ADC 的工作方式 ADC0的最高转换速度为100ksps,其转换时钟来源于系统时钟分频,分频值保存在寄存器ADC0CF 的ADCSC位(4位)。 主要由控制寄存器ADC0CN设置ADC0工作方式 R/W R/W R/W R/W R/W R/W R/W R/W 复位值 AD0EN AD0TM AD0INT AD0BUSY AD0CM1 AD0CM0 AD0WINT AD0LJST 位7 使能位 位6 跟踪方式 位5 转换结束中断 位4 忙标志 位3 启动方式 位2 启动方式 位1 窗口比较中断 位0 对齐方式 SFR地址: 0xE8(可位寻址) 1)启动转换 4种转换启动方式,由ADC0CN 中的ADC0启动转换方式位(AD0CM1,AD0CM0)的状态决定: (1)向ADC0CN的AD0BUSY 位写1; (2)定时器3溢出(即定时的连续转换); (3)外部ADC转换启动信号的上升沿,CNVSTR; (4)定时器2溢出(即定时的连续转换)。 AD0BUSY位在转换期间被置‘1’,转换结束后复‘0’。 AD0BUSY位的下降沿触发一个中断并将中断标志AD0INT(ADC0CN.5)置‘1’。转换数据被保存在ADC数据字的MSB和LSB寄存器:ADC0H和ADC0L。 转换数据在寄存器对ADC0H:ADC0L中的存储方式可以是左对齐或右对齐,由ADC0CN寄存器中AD0LJST位的编程状态决定。 当通过向AD0BUSY 写‘1’启动数据转换时,应查询AD0INT 位以确定转换何时结束(也可以使用ADC0 中断)。 建议的查询步骤如下: (1) 写‘0’到AD0INT; (2) 向AD0BUSY写‘1’; (3) 查询并等待AD0INT变‘1’; (4) 处理ADC0数据 举例: AD0INT=0; AD0BUSY=1; //启动ADC0转换 while (!AD0INT); //等待ADC0采集完成 ad_dat[k++] = ADC0L; ad_dat[k++] = ADC0H; 中断允许寄存器IE各位的定义 例如:可以采用字节传送指令来开放定时器T0的溢出中断: MOV IE,#82H 也可以用位寻址指令: SETB EA SETB ET0 R/W R/W R/W R/W R/W R/W R/W R/W 复位值 EA IEGF0 ET2 ES0 ET1 EX1 ET0 EX0 位7 位6 位5 位4 位3 位2 位1 位0 (可位寻址) SFR地址: 0xA8 中断允许寄存器EIE1各位的定义如下: R/W R/W R/W R/W R/W R/W R/W R/W 复位值 ECP1R ECP1F ECP0R ECP0F EPCA0 EWADC0 ESMB0 ESPI0 位7 位6 位5 位4 位3 位2 位1 位0 ? SFR地址: 0xE6 中断允许寄存器 EIE2各位的定义如下: R/W R/W R/W R/W R/W R/W R/W R/W 复位值 EXVLD ES1 EX7 EX6 EADC1 ET4 EADC0 ET3 位7 位6 位5 位4 位3 位2 位1 位0 ? SFR地址: 0xE7 优先级管理 中断系统对中断源的优先级处理遵循两条基本原则: 低优先级中断可以被高优先级中断所中断,反之不能。 一种中断(不管是什么优先级)一旦得到响应,与它同级的中断不能再中断它。 自然优先级由硬件形成 中断源 自然优先级 外部中断0 最高 定时器0中断 外部中断1 定时器1中断 串行口0中断 定时器2中断 ? . .
您可能关注的文档
最近下载
- 河道整治工程施工质量创优计划的实施效果评估与改进策略.docx VIP
- 水利工程质量创优方案(3篇).docx VIP
- 110kv变电站的设计毕业设计(论文).docx VIP
- 华中师范大学《C++程序设计》2020-2021学年第一学期期末试卷.pdf VIP
- 电力系统仿真:电力系统暂态仿真all.docx VIP
- 电力系统暂态稳定性仿真研究毕业设计(论文).docx VIP
- 3 浮力——液面升降问题(原卷版).docx VIP
- 核心素养视域下的初中数学单元作业设计研究.docx VIP
- 纪念红军长征90周年演讲稿(2025年最新版).pptx VIP
- 2002-2012 十年北京卷高考语文试卷深度解析.pdf VIP
原创力文档

文档评论(0)