当前位置: 首页 > news >正文

网站建设具体工作图片在线制作水印

网站建设具体工作,图片在线制作水印,如何将自己做的网站导入淘宝,网站图片如何优化在上述at24c02de 基础上#xff0c;添加三个函数 一个是读取通道1光敏电阻的数据#xff1b; 一个是读取通道3的电压#xff1b; 一个是输出DA的数据。。 5V的AD DA。 如果读入的电压是5V#xff0c;输入AD#xff0c;就是255#xff1b; 如果是0V#xff0c;就是00000… 在上述at24c02de 基础上添加三个函数 一个是读取通道1光敏电阻的数据 一个是读取通道3的电压 一个是输出DA的数据。。 5V的AD DA。 如果读入的电压是5V输入AD就是255 如果是0V就是00000000 如果是2.5V就是125. 有个比例。 步骤注意是 pcf8591A/D转换时可以将连接在芯片上的AIN0,AIN1,AIN3,AIN2通道等的模拟量转换为数字量。 而且PCF8591芯片是一个8位的通道上的电压取值范围是0-5v相当于0-255一共256个刻度把5v平均分成了255份那么1v电压对应的数字量就是51。所以我们在进行ad转换的时候不能简单的把读取到的量显示在数码管显示上比如现在某个通道是3.1v的那么它通过pcf8591芯片读取转换之后我们实际上读取到的是3.1*51158.1但是如果题目要求显示电压值的话我们就需要再把读取出来的数字量给处理一下比如除以一个51.0。 从机等待应答部分的代码即留下空格的部分可省略。 PCF8591芯片D/A转换时即把数字量转换为模拟量在这里插入代码片 unsigned char read_in1() {unsigned char dat;IIC_Start(); //总线起始信号IIC_SendByte(0x90); //字节写地址IIC_WaitAck(); //等待应答IIC_SendByte(0x01); //发送控制字IIC_WaitAck();IIC_Start(); IIC_SendByte(0x91); //字节读地址IIC_WaitAck();datIIC_RecByte();IIC_SendAck(1); IIC_Stop(); return dat; //处理读到的AIN的量 } unsigned char read_in3() {unsigned char dat;IIC_Start(); //总线起始信号IIC_SendByte(0x90); //字节写地址IIC_WaitAck(); //等待应答IIC_SendByte(0x03); //发送控制字IIC_WaitAck();IIC_Start(); IIC_SendByte(0x91); //字节读地址IIC_WaitAck();datIIC_RecByte();IIC_SendAck(1); IIC_Stop(); return dat; //处理读到的AIN的量 }void write_dac(unsigned int dat) {IIC_Start();IIC_SendByte(0x90); //pcf8591写操作地址IIC_SendByte(0x40); //选择dac输出通道第6位为1打开D/AIIC_SendByte(dat); //选择要给pcf8591芯片的数字量IIC_WaitAck(); IIC_Stop(); //停止通讯 } 全部代码啊 主函数的代码 #include stc15.h #include intrins.h #include iic.h//接口 sbit S7P3^0; sbit S6P3^1; sbit S5P3^2; sbit S4P3^3; //宏定义 #define LED 4 //定义主时钟 #define ULN 5 //定义主时钟 #define COM 6 //定义主时钟 #define ABC 7 //定义主时钟 typedef unsigned char u8; typedef unsigned int u16; typedef unsigned long u32; //-----------------------------------------------#define FOSC 11059200L#define T1MS (65536-FOSC/1000) //1T模式 //#define T1MS (65536-FOSC/12/1000) //12T模式//全局变量 u8 LEDbuf0xFF; u8 ULNbuf0x00; u8 SMGbuf[20]; u8 SMGdat[8];//8个数码管所以8个元素u32 tim1ms0;//u32类型几十天才溢出 /************* 本地常量声明 ,这是共阴的 **************/ u8 code table[]{ //标准字库 // 0 1 2 3 4 5 6 7 8 9 A B C D E F0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71, //black - H J K L N o P U t G Q r M y0x00,0x40,0x76,0x1E,0x70,0x38,0x37,0x5C,0x73,0x3E,0x78,0x3d,0x67,0x50,0x37,0x6e,0xBF,0x86,0xDB,0xCF,0xE6,0xED,0xFD,0x87,0xFF,0xEF,0x46}; //0. 1. 2. 3. 4. 5. 6. 7. 8. 9. -1u8 code T_COM[]{0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80}; //位码 //函数声明 void delayms(u16 tms); void Delay1ms(); //11.0592MHz void sel(u8 x); //选择四个分支哪一个 void sysinit();//系统初始化关闭所有的外部设备 void disp(); //主函数 void main() {//main局部变量u8 num125;u8 num20;int num31289;int num40;int num4H,num4L;//低位和高位u8 in1dat;u8 in3dat;//外设初始化sysinit();//系统定时器初始化AUXR | 0x40; //定时器1为1T模式TMOD 0x00; //设置定时器为模式0(16位自动重装载)TL1 T1MS; //初始化计时值TH1 T1MS 8;TR1 1; //定时器1开始计时ET1 1; //使能定时器0中断EA 1;//大循环//这里可以加一点测试代码测试是不是每个外设都成功SMGdat[0]0x77;SMGdat[1] table[num1/10];SMGdat[2] table[num1%10];SMGdat[3]0x40;SMGdat[4]0x40;SMGdat[5] 0x7C; SMGdat[6] table[0];SMGdat[7] table[0];while(1){if(S70){delayms(10);if(S70){write24byte(0x00,num1);delayms(5); //等待5ms,等待写入完成}while(S70);}else if(S60){delayms(10);if(S60){num2read24byte(0x00)20;delayms(5);}while(S60);SMGdat[0]0x77;SMGdat[1] table[num1/10];SMGdat[2] table[num1%10];SMGdat[3]0x40;SMGdat[4]0x40;SMGdat[5] 0x7C; SMGdat[6] table[num2/10];SMGdat[7] table[num2%10];}if(S50){delayms(10);if(S50){write24byte(0x03,num38); //写高8位到0x03delayms(5); //等待5ms,等待写入完成write24byte(0x04,num3);//写低八位到0x04delayms(5); //等待5ms,等待写入完成}while(S50);//松开按键}else if(S40){delayms(10);if(S40){//读取int类型数据读取高位乘以256再读取低位 num4Hread24byte(0x03);delayms(5);num4Lread24byte(0x04);delayms(5);num4num4H*256num4L;//将低位和高位合并起来}while(S40);//松开按键//分解出个位十位百位千位的方法SMGdat[0] table[num3/1000%10];SMGdat[1] table[num3/100%10];SMGdat[2] table[num3/10%10];SMGdat[3]table[num3%10];SMGdat[4]table[num4/1000%10];;SMGdat[5]table[num4/100%10];;SMGdat[6] table[num4/10%10];;SMGdat[7] table[num4%10];} if(tim1ms%5000) //500ms读取一次数据刷新数据{in1datread_in1();in3datread_in3();}SMGdat[0] 0x00;SMGdat[1] table[in1dat/100%10];SMGdat[2] table[in1dat/10%10];SMGdat[3]table[in1dat%10];SMGdat[4]0x00;SMGdat[5]table[in3dat/100%10];SMGdat[6] table[in3dat/10%10];SMGdat[7] table[in3dat%10];}}//函数定义 //-----------------------------------------------/* Timer1 interrupt routine */ void tm1_isr() interrupt 3 using 1 {tim1ms;disp();//1ms显示一次数码管 } void Delay1ms() //11.0592MHz {unsigned char i, j;_nop_();_nop_();_nop_();i 11;j 190;do{while (--j);} while (--i); }void delayms(u16 tms) {u16 i0;for(i0;itms;i){Delay1ms();} }void sel(u8 x) //选择四个分支哪一个 {//背下来了吗switch(x){case 0:P2P20x1F;break;case LED:P2P20x1F|0x80;break;case ULN:P2P20x1F|0xA0;break;case COM:P2P20x1F|0xC0;break;case ABC:P2P20x1F|0xE0;break;} } void sysinit()//系统初始化关闭所有的外部设备 {sel(LED);LEDbuf0xFF;P0LEDbuf;sel(0);sel(ULN);ULNbuf0x00;P0ULNbuf;sel(0);sel(COM);P00x00;sel(0);sel(ABC);P00xFF;sel(0); }void disp() {//背下来static u8 i0;//消隐sel(COM);P00x00;sel(0);sel(ABC);P00xFF;sel(0); //显示sel(COM);P0T_COM[i];sel(0);sel(ABC);P0~SMGdat[i];sel(0);i;if(i8)i0; } iic.c /*程序说明: IIC总线驱动程序软件环境: Keil uVision 4.10 硬件环境: CT107单片机综合实训平台 805112MHz日 期: 2011-8-9 */#include stc15.h #include intrins.h #include iic.h#define DELAY_TIME 5#define SlaveAddrW 0xA0 #define SlaveAddrR 0xA1//总线引脚定义 sbit SDA P2^1; /* 数据线 */ sbit SCL P2^0; /* 时钟线 */void IIC_Delay(unsigned char i) {do{_nop_();}while(i--); } //总线启动条件 void IIC_Start(void) {SDA 1;SCL 1;IIC_Delay(DELAY_TIME);SDA 0;IIC_Delay(DELAY_TIME);SCL 0; }//总线停止条件 void IIC_Stop(void) {SDA 0;SCL 1;IIC_Delay(DELAY_TIME);SDA 1;IIC_Delay(DELAY_TIME); }//发送应答 void IIC_SendAck(bit ackbit) {SCL 0;SDA ackbit; // 0应答1非应答IIC_Delay(DELAY_TIME);SCL 1;IIC_Delay(DELAY_TIME);SCL 0; SDA 1;IIC_Delay(DELAY_TIME); }//等待应答 bit IIC_WaitAck(void) {bit ackbit;SCL 1;IIC_Delay(DELAY_TIME);ackbit SDA;SCL 0;IIC_Delay(DELAY_TIME);return ackbit; }//通过I2C总线发送数据 void IIC_SendByte(unsigned char byt) {unsigned char i;for(i0; i8; i){SCL 0;IIC_Delay(DELAY_TIME);if(byt 0x80) SDA 1;else SDA 0;IIC_Delay(DELAY_TIME);SCL 1;byt 1;IIC_Delay(DELAY_TIME);}SCL 0; }//从I2C总线上接收数据 unsigned char IIC_RecByte(void) {unsigned char i, da;for(i0; i8; i){ SCL 1;IIC_Delay(DELAY_TIME);da 1;if(SDA) da | 1;SCL 0;IIC_Delay(DELAY_TIME);}return da; }unsigned char read24byte(unsigned char addrtemp) {unsigned char temp;IIC_Start();IIC_SendByte(SlaveAddrW); //是地址IIC_WaitAck();IIC_SendByte(addrtemp);IIC_WaitAck();IIC_Start();IIC_SendByte(SlaveAddrR); //读地址IIC_WaitAck();temp IIC_RecByte();IIC_SendAck(1); //send no ACKIIC_Stop();return temp; } void write24byte(unsigned char addrtemp,unsigned char datatemp) {IIC_Start();IIC_SendByte(SlaveAddrW);IIC_WaitAck();IIC_SendByte(addrtemp);IIC_WaitAck();IIC_SendByte(datatemp); IIC_WaitAck();IIC_Stop(); }unsigned char read_in1() {unsigned char dat;IIC_Start(); //总线起始信号IIC_SendByte(0x90); //字节写地址IIC_WaitAck(); //等待应答IIC_SendByte(0x01); //发送控制字IIC_WaitAck();IIC_Start(); IIC_SendByte(0x91); //字节读地址IIC_WaitAck();datIIC_RecByte();IIC_SendAck(1); IIC_Stop(); return dat; //处理读到的AIN的量 } unsigned char read_in3() {unsigned char dat;IIC_Start(); //总线起始信号IIC_SendByte(0x90); //字节写地址IIC_WaitAck(); //等待应答IIC_SendByte(0x03); //发送控制字IIC_WaitAck();IIC_Start(); IIC_SendByte(0x91); //字节读地址IIC_WaitAck();datIIC_RecByte();IIC_SendAck(1); IIC_Stop(); return dat; //处理读到的AIN的量 }void write_dac(unsigned int dat) {IIC_Start();IIC_SendByte(0x90); //pcf8591写操作地址IIC_SendByte(0x40); //选择dac输出通道第6位为1打开D/AIIC_SendByte(dat); //选择要给pcf8591芯片的数字量IIC_WaitAck(); IIC_Stop(); //停止通讯 } iic.h #define __IIC_Hvoid IIC_Start(void); void IIC_Stop(void); bit IIC_WaitAck(void); void IIC_SendAck(bit ackbit); void IIC_SendByte(unsigned char byt); unsigned char IIC_RecByte(void); unsigned char read24byte(unsigned char addrtemp); void write24byte(unsigned char addrtemp,unsigned char datatemp);unsigned char read_in1(); unsigned char read_in3(); void write_dac(unsigned int dat);#endif
http://www.hkea.cn/news/14396933/

相关文章:

  • 手机介绍网站wordpress写书typecho主题
  • 怎么做自己下单的网站php开源网站 网上商城
  • 国外手机网站企业网站备案需要什么资料
  • 到那里找做网站的兼职欧美设计网站
  • 做社交网站长春网站推广网诚传媒
  • 网站建设需要哪些技术wordpress字体加载慢
  • 旅游网站设计背景网站更新内容
  • 房屋设计在线设计网站二维码在线生成制作
  • 网站营销网网页设计是网站建设与管理的内容吗
  • 做鞋子有什么好网站好抚顺地区网站建设
  • 国内做化妆刷的比较好的网站青岛seo代理计费
  • 邹平网站建设优化公司织梦多语言网站
  • 做电商网站需要多少时间企业网站有哪些平台
  • 网站备案授权书怎么填写大庆网站设计
  • 北京建网站公司价格百度排行榜明星
  • 移动端网站优秀案例大网站的二级域名
  • 合肥网站建设新闻营销正规网站建设推荐
  • 市政工程建设规范免费下载网站网站建设项目进度表
  • 桂林象鼻山水月洞优化营商环境条例心得体会
  • 国外免费搭建网站做网站asp
  • 安徽做手机网站北京工程建设交易平台
  • 视觉设计软件优化网站排名软件
  • 苏州seo网站推广哪家好电子商务主要学什么专业课程
  • 如何建设公司门户网站如何用ftp上传文件到网站
  • 免费做外贸的网站专业企业网站开发公司
  • 网站开发项目流程图网站建设费用申请
  • 南京 推广 网站建设wordpress dreamwear
  • 建设银行官方网站登录网址惠州企业网站建设选哪家
  • 网站的配色方案小米路由HD可以做网站吗
  • 哪里的网站建设做信誉认证对网站有什么好处