按关键词阅读: 直流 数字 程序 电路图 设计 电压表
1、数字直流电压表的设计实验报告要求:设计一个能测量直流电压并显示的数字电压表 。
直流电压输入范围:0V5V , 最小分辨率0.5V , 准确率80 , 偏差 /包含头文件 , 一般情况不需要改动 , 头文件包含特殊功能寄存器的定义#include /包含NOP空指令函数_nop_();
#include#define AddWr 0x90 /写数据地址#define AddRd 0x91 /读数据地址sbitSda=P12;
/定义总线连接端口sbitScl=P11;
bit ADFlag;
/定义AD采样标志位/unsigned char code Datatab=0x3f,0x06,0x5b,0x4f,0x66,0x 。
2、6d,0x7d,0x07,0x7f,0x6f;
/7段数共阴码管段码表/data unsigned char Display8;
/定义临时存放数码管数值/*-延时程序-*/voidmDelay(unsigned char j)unsignedinti;
for(;
j0;
j-)for(i=0;
i#include#includesbit RS = P20;
/Pin4sbit RW = P21;
/Pin5sbit E = P22;
/Pin6#define Data P0 /数据端口unsigned char TempData8;
unsigned char SecondLine= ;
unsigned c 。
【数字|数字直流电压表的设计(附程序及电路图)】3、har FirstLine = ;
/*/* 函数声明 */*/voidDelayUs(unsigned char us)/delay usunsigned char uscnt;
uscnt=us1;
/* Crystal frequency in 12MHz*/while(-uscnt);
/*/voidDelayMs(unsigned char ms)/delay Mswhile(-ms)DelayUs(250);
DelayUs(250);
DelayUs(250);
DelayUs(250);
voidWriteCommand(unsigned char c)DelayMs(5);
/short de 。
4、lay before operationE=0;
RS=0;
RW=0;
_nop_();
E=1;
Data=https://www.renrendoc.com/paper/c;
E=0;
/*/voidWriteData(unsigned char c)DelayMs(5);
/short delay before operationE=0;
RS=1;
RW=0;
_nop_();
E=1;
Data=https://www.renrendoc.com/paper/c;
E=0;
RS=0;
/*/voidShowChar(unsigned char pos,unsigned char c)unsigned char p;
if (pos=0x10)p=pos+0xb0;
/是第二行则命令代码高4位为0xcelsep=pos+0x80;
/是第 。
5、二行则命令代码高4位为0x8WriteCommand (p);
/write commandWriteData (c);
/write data/*/voidShowString (unsigned char line,char *ptr)unsigned char l,i;
l=line4;
for (i=0;
i16;
i+)ShowChar (l+,*(ptr+i);
/循环显示16个字符/*/voidInitLcd()DelayMs(15);
WriteCommand(0x38);
/display modeWriteCommand(0x38);
/display modeWriteCommand( 。
6、0x38);
/display modeWriteCommand(0x06);
/显示光标移动位置WriteCommand(0x0c);
/显示开及光标设置WriteCommand(0x01);
/显示清屏/voiddisp(void)FirstLine2=0+TempData0;
FirstLine4=0+TempData1;
FirstLine3=.;
FirstLine6=V;
FirstLine9=0+TempData2;
FirstLine11=0+TempData3;
FirstLine10=.;
FirstLine13=V;
SecondLine2=0+TempData4;
SecondLine4=0+TempData5;
SecondLine3=.;
SecondLine6=V;
SecondLine9=0+TempData6;
SecondLine11=0+TempData7;
SecondLine10=.;
SecondLine13=V;
ShowString(0,FirstLine);
ShowString(1,SecondLine);
11 。

稿源:(未知)
【傻大方】网址:/a/2021/0821/0023881977.html
标题:数字|数字直流电压表的设计(附程序及电路图)