ADS1100 应用程序Word文档下载推荐.docx
- 文档编号:17053670
- 上传时间:2022-11-28
- 格式:DOCX
- 页数:15
- 大小:17.88KB
ADS1100 应用程序Word文档下载推荐.docx
《ADS1100 应用程序Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《ADS1100 应用程序Word文档下载推荐.docx(15页珍藏版)》请在冰豆网上搜索。
{
cErrTime--;
if(cErrTime==0)
{
I2CStop();
return1;
}
}
return0;
//发送ACK
voidI2CSendAck(void)
//发送NOTACK
voidI2CSendNotAck(void)
//发送一个字节
voidI2CSendChar(ucharcSendByte)
uchardatai=8;
while(i--)
SCL=0;
SDA=(bit)(cSendByte&
0x80);
//高位在先
cSendByte<
<
=1;
SCL=1;
_nop_();
//接收一个字节
ucharI2CReceiveByte(void)
uchardatacR_Byte=0;
cR_Byte<
cR_Byte|=(uchar)SDA;
returncR_Byte;
voidWr_Ads1100_Cfg(void)
I2CStart();
I2CSendChar(0x90);
//写地址:
10010000固定码1001,地址为000,写命令为0
I2CWaitAck();
//等应答
I2CSendChar(0x8c);
//写配置字:
连续转换,转换速率为8SPS,增益为1
I2CStop();
//结束
uintRd_Ads1100_Data(void)
uintresult;
ucharTMR1H;
//输出高8位
ucharTMR1L;
//输出低8位
ucharTMR2;
//控制寄存器
I2CSendChar(0x91);
10010001固定码1001,地址为000,读命令为1
TMR1H=I2CReceiveByte();
I2CSendAck();
TMR1L=I2CReceiveByte();
TMR2=I2CReceiveByte();
I2CSendNotAck();
result=TMR1H*256+TMR1L;
returnresult;
/*-------------------------------------------------
主函数
-------------------------------------------------*/
voidmain(void)
uintadvalue;
doubleVin;
N5110_init();
while
(1)
Wr_Ads1100_Cfg();
advalue=Rd_Ads1100_Data();
//读数据
Vin=(advalue/32768.0)*4.98;
N5110_add_xy(3,3);
N5110_led_ASCALLS("
VOL:
"
);
N5110_led_double(3,4,Vin);
}
附录:
”N5110.h”
#defineucharunsignedchar
#defineuintunsignedint
/*******************N5110的端口定义********************/
#defineN5110_RST5//5110复位脚
#defineN5110_CE4//使能
#defineN5110_DC3//数据和命令切换脚
#defineN5110_DIN2//数据输入
#defineN5110_CLK1//时钟引脚
#defineN5110_BL0//背光
/*******************N5110的端口数字量定义********************/
#defineN5110_DC_1()P0|=(1<
N5110_DC)//数据
#defineN5110_DC_0()P0&
=~(1<
N5110_DC)//命令
#defineN5110_RST_1()P0|=(1<
N5110_RST)
#defineN5110_RST_0()P0&
N5110_RST)//低电平复位
#defineN5110_CE_1()P0|=(1<
N5110_CE)
#defineN5110_CE_0()P0&
N5110_CE)//输入使能
#defineN5110_DIN_0()P0&
N5110_DIN)
#defineN5110_DIN_1()P0|=(1<
#defineN5110_CLK_0()P0&
N5110_CLK)
#defineN5110_CLK_1()P0|=(1<
#defineN5110_BL_0()P0&
N5110_BL)
#defineN5110_BL_1()P0|=(1<
#defineN5110_LIGHT_ON()N5110_BL_1()
#defineN5110_LIGHT_OFF()N5110_BL_0()
/*******************N5110的指令集**********************/
#defineN5110_Display_Blank0x08//白屏
#defineN5110_Display_Normal0x0C//正常显示
#defineN5110_Display_Whole0x09//全显
#defineN5110_Display_Image0x0D//翻转
#defineN5110_Address_Y0x40//设置Y地址
#defineN5110_Address_X0x80//设置X地址
#defineN5110_Temperature_00x04//温度系数1
#defineN5110_Temperature_10x05//温度系数2
#defineN5110_Temperature_20x06//温度系数3
#defineN5110_Temperature_30x07//温度系数4
#defineN5110_Bisic_Commond0x20//基本指令集
#defineN5110_Expend_Commond0x21//扩展指令集(用来设置工作电压)
#defineN5110_Low_Power0x24//节能模式
#defineN5110_Level_Addressing0x20//水平寻址
#defineN5110_Verti_Addressing0x22//垂直寻址
#defineN5110_Work_Voltage0x80//工作电压(在扩展指令集模式下)
voidN5110_init(void);
//液晶初始化
voidN5110_sent_8bit(ucharnum);
//写8位数据到N5110
voidN5110_sent_oder(ucharnum);
//写一个命令字节到N5110
voidN5110_sent_data(ucharnum);
//写一个数据字节到N5110
voidN5110_add_xy(ucharx,uchary);
//设置将写入数据写入N5110的地址
voidN5110_clear_screen(void);
//清屏
voidN5110_display_image(void);
//黑白倒置
voidN5110_led_ASCALL(ucharc);
//显示一个字符
voidN5110_led_ASCALLS(char*string);
//显示字符串
voidN5110_led_int(intdat);
//显示数字
voidN5110_led_double(ucharx,uchary,doubledat);
//显示double类型
externcodeconstucharASCALL[];
codeconstucharASCALL[]=//ASCII
0x00,0x00,0x00,0x00,0x00,//--
0x00,0x00,0x5F,0x00,0x00,//-!
-
0x00,0x07,0x00,0x07,0x00,//-"
0x14,0x7F,0x14,0x7F,0x14,//-#-
0x24,0x2E,0x7B,0x2A,0x12,//-$-
0x23,0x13,0x08,0x64,0x62,//-%-
0x36,0x49,0x56,0x20,0x50,//-&
0x00,0x04,0x03,0x01,0x00,//-'
0x00,0x1C,0x22,0x41,0x00,//-(-
0x00,0x41,0x22,0x1C,0x00,//-)-
0x22,0x14,0x7F,0x14,0x22,//-*-
0x08,0x08,0x7F,0x08,0x08,//-+-
0x40,0x30,0x10,0x00,0x00,//-,-
0x08,0x08,0x08,0x08,0x08,//---
0x00,0x60,0x60,0x00,0x00,//-.-
0x20,0x10,0x08,0x04,0x02,//-/-
0x3E,0x51,0x49,0x45,0x3E,//-0-
0x00,0x42,0x7F,0x40,0x00,//-1-
0x62,0x51,0x49,0x49,0x46,//-2-
0x21,0x41,0x49,0x4D,0x33,//-3-
0x18,0x14,0x12,0x7F,0x10,//-4-
0x27,0x45,0x45,0x45,0x39,//-5-
0x3C,0x4A,0x49,0x49,0x31,//-6-
0x01,0x71,0x09,0x05,0x03,//-7-
0x36,0x49,0x49,0x49,0x36,//-8-
0x46,0x49,0x49,0x29,0x1E,//-9-
0x00,0x36,0x36,0x00,0x00,//-:
0x40,0x36,0x36,0x00,0x00,//-;
0x08,0x14,0x22,0x41,0x00,//-<
0x14,0x14,0x14,0x14,0x14,//-=-
0x00,0x41,0x22,0x14,0x08,//->
0x02,0x01,0x59,0x05,0x02,//-?
0x3E,0x41,0x5D,0x55,0x5E,//-@-
0x7C,0x12,0x11,0x12,0x7C,//-A-
0x7F,0x49,0x49,0x49,0x36,//-B-
0x3E,0x41,0x41,0x41,0x22,//-C-
0x7F,0x41,0x41,0x41,0x3E,//-D-
0x7F,0x49,0x49,0x49,0x41,//-E-
0x7F,0x09,0x09,0x09,0x01,//-F-
0x3E,0x41,0x51,0x51,0x72,//-G-
0x7F,0x08,0x08,0x08,0x7F,//-H-
0x00,0x41,0x7F,0x41,0x00,//-I-
0x20,0x40,0x41,0x3F,0x01,//-J-
0x7F,0x08,0x14,0x22,0x41,//-K-
0x7F,0x40,0x40,0x40,0x40,//-L-
0x7F,0x02,0x0C,0x02,0x7F,//-M-
0x7F,0x04,0x08,0x10,0x7F,//-N-
0x3E,0x41,0x41,0x41,0x3E,//-O-
0x7F,0x09,0x09,0x09,0x06,//-P-
0x3E,0x41,0x51,0x21,0x5E,//-Q-
0x7F,0x09,0x19,0x29,0x46,//-R-
0x26,0x49,0x49,0x49,0x32,//-S-
0x01,0x01,0x7F,0x01,0x01,//-T-
0x3F,0x40,0x40,0x40,0x3F,//-U-
0x1F,0x20,0x40,0x20,0x1F,//-V-
0x7F,0x20,0x18,0x20,0x7F,//-W-
0x63,0x14,0x08,0x14,0x63,//-X-
0x03,0x04,0x78,0x04,0x03,//-Y-
0x61,0x51,0x49,0x45,0x43,//-Z-
0x7F,0x7F,0x41,0x41,0x00,//-[-
0x02,0x04,0x08,0x10,0x20,//-\-
0x00,0x41,0x41,0x7F,0x7F,//-]-
0x04,0x02,0x7F,0x02,0x04,//-^-
0x08,0x1C,0x2A,0x08,0x08,//-_-
0x00,0x00,0x01,0x02,0x04,//-`-
0x24,0x54,0x54,0x38,0x40,//-a-
0x7F,0x28,0x44,0x44,0x38,//-b-
0x38,0x44,0x44,0x44,0x08,//-c-
0x38,0x44,0x44,0x28,0x7F,//-d-
0x38,0x54,0x54,0x54,0x08,//-e-
0x08,0x7E,0x09,0x09,0x02,//-f-
0x98,0xA4,0xA4,0xA4,0x78,//-g-
0x7F,0x08,0x04,0x04,0x78,//-h-
0x00,0x00,0x79,0x00,0x00,//-i-
0x00,0x80,0x88,0x79,0x00,//-j-
0x7F,0x10,0x28,0x44,0x40,//-k-
0x00,0x41,0x7F,0x40,0x00,//-l-
0x78,0x04,0x78,0x04,0x78,//-m-
0x04,0x78,0x04,0x04,0x78,//-n-
0x38,0x44,0x44,0x44,0x38,//-o-
0xFC,0x24,0x24,0x24,0x18,//-p-
0x18,0x24,0x24,0x24,0xFC,//-q-
0x04,0x78,0x04,0x04,0x08,//-r-
0x48,0x54,0x54,0x54,0x24,//-s-
0x04,0x3F,0x44,0x44,0x24,//-t-
0x3C,0x40,0x40,0x3C,0x40,//-u-
0x1C,0x20,0x40,0x20,0x1C,//-v-
0x3C,0x40,0x3C,0x40,0x3C,//-w-
0x44,0x28,0x10,0x28,0x44,//-x-
0x9C,0xA0,0xA0,0x90,0x7C,//-y-
0x44,0x64,0x54,0x4C,0x44,//-z-
0x08,0x36,0x41,0x00,0x00,//-{-
0x00,0x00,0x77,0x00,0x00,//-|-
0x00,0x00,0x41,0x36,0x08,//-}-
0x08,0x04,0x08,0x10,0x08,//-~-
0x55,0x2A,0x55,0x2A,0x55,//--
};
voidN5110_sent_8bit(ucharnum)
ucharn;
for(n=0;
n<
8;
n++)
{
N5110_CLK_0();
if(num&
0X80)
N5110_DIN_1();
else
N5110_DIN_0();
N5110_CLK_1();
num=num<
1;
voidN5110_sent_oder(ucharcom)
N5110_RST_1();
N5110_CE_1();
N5110_CLK_0();
N5110_CE_0();
N5110_DC_0();
N5110_sent_8bit(com);
voidN5110_sent_data(ucharnum)
N5110_DC_1();
N5110_sent_8bit(num);
voidN5110_add_xy(ucharx,uchary)
if(x>
83)x=83;
if(y>
5)y=5;
N5110_sent_oder(N5110_Address_Y|y);
N5110_sent_oder(N5110_Address_X|x);
voidN5110_clear_screen(void)
intn;
N5110_sent_oder(N5110_Address_Y);
N5110_sent_oder(N5110_Address_X);
504;
N5110_sent_data(0x00);
voidN5110_init(void)
N5110_RST_0();
N5110_sent_oder(N5110_Expend_Commond);
N5110_sent_oder(0x98);
N5110_sent_oder(N5110_Bisic_Commond);
N5110_clear_screen();
N5110_sent_oder(N5110_Display_Normal);
N5110_LIGHT_ON();
/*
voidN5110_display_image(void)
N5110_sent_oder(N5110_Display_Image);
}*/
voidN5110_led_ASCALLS(char*string)
unsignedchari=0;
while(*(string+i))
N5110_led_ASCALL(*(string+i));
i++;
voidN5110_led_ASCALL(ucharc)//single
charn;
5;
N5110_sent_data(*(ASCALL+5*(c-'
'
)+n));
voidN5110_led_int(intdat)
charstring[10]={0};
for(i=0;
dat>
0;
i++)
string[i]=dat%10;
dat/=10;
if(i==0)
N5110_led_ASCALL('
0'
return;
else
for(i--;
;
)
N5110_led_ASCALL('
+string[i]);
if(i>
0)
i--;
else
return;
voidN5110_led_double(ucharx,uchary,doubl
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ADS1100 应用程序