可以找到文本中的设定好的关键字,采用C语言基础代码,对文件进行操作
标签: C语言
上传时间: 2020-10-18
上传用户:
聚乙烯(PE)管道系统在各个行业的应用越来越广泛,特别是PE管道在燃气输送和给水排水方面的快速发展,使得PE管道正在逐步的替代金属管道系统。PE管道的连接技术是PE管道系统应用中的关键技术之一,连接的质量对PE管道系统整体寿命有重大影响。热熔对接焊是一种经济、快速有效的连接方法,具有密封、均匀、牢固的优点,同时又有焊接过程复杂,工艺参数多的特点,对焊接机的自动化程度要求较高。然而,目前国内工程上还没有全自动化的热熔焊接机,焊接过程需要人工干预,管道焊接质量难以保证。因此,研究设计焊接过程全自动化的热熔对接焊机对提高焊接质量,保证PE管道系统的使用寿命有重要意义。 本文通过分析和研究热熔对接焊的焊接流程和工艺参数,提出了一种结合嵌入式技术,使焊接过程全自动化的热熔焊接机控制系统的实现方案。本文所设计的控制系统实现了热熔对接焊的焊接时序自动控制,操作纠错及错误信息管理,焊接数据的管理及追溯。课题研究的主要内容有: (1)通过分析全自动热熔对接焊机的整体需求,构建基于ARM7处理器和μC/OS-Ⅱ的嵌入式系统平台,包括设计硬件系统和移植操作系统; (2)实现热熔对接焊过程的全自动化,包括自动控制铣削管道端面;测量拖动压力以及自动补偿拖动力;自动控制热板插入后的所有焊接阶段即:加压、成边、降低压力、吸热、抽板、加压、保压、冷却的自动控制。焊接过程中各个阶段以曲线方式动态的显示给用户,焊接完成后焊接数据自动存储; (3)实现系统必须的功能模块,主要包括LCD图形用户界面、数据管理模块、USB移动存储器读写模块。硬件主要实现电源、复位和时钟电路;USB、SPI总线和UART接口电路;A/D和D/A转换接口电路;LCD接口和JTAG接口电路等。软件方面主要包括LCD控制芯片驱动程序、基本图形处理程序、图形用户界面、数据管理系统、USB控制芯片驱动程序、USB大规模存储器协议实现、FAT16/FAT32文件系统操作程序以及自动控制程序等。
上传时间: 2013-04-24
上传用户:ddddddos
随着计算机技术、半导体技术、微电子技术技术的不断融合,嵌入式系统的应用得到了迅猛发展。本文以嵌入式系统开发为背景,研究基于ARM和μC/OS-II的嵌入式系统及其在加密解密模块中的应用。 本文在介绍了嵌入式系统和硬件实现Rijndael算法的研究现状之后,简要概述了Rijndael加密算法的结构、轮变换、密钥扩展和该加密模块选用Rijndael算法的原因以及ARM系列微处理器选型和S3C44BOX芯片体系结构、开发板平台的选择和板上主体硬件电路等相关内容。 在深入地研究了Rijndael加密算法之后以及根据嵌入式系统的一般要求,本文设计了一个基于ARM和μC/OS-II的嵌入式加密模块。该加密模块采用了32位高性能ARM微处理器S3C44BOX为硬件核心,并以嵌入式实时操作系统μC/OS-II为软件平台,在ARM ADS1.2环境下进行系统软件开发。该加密模块充分地利用了ARM微处理器性能高、功耗低和成本低的优势以及发挥了μC/OS-II可移植性好、稳定性和可靠性高的优点。 本文重点论述了嵌入式加密模块BootLoader文件的装载、I/O端口初始化、基于S3C44BOX微处理器的μC/OS-II移植及应用软件部分中任务和模块的流程设计。在该加密模块应用软件设计部分中,对各个任务的创建、定义、优先级设置和事件的定义、对文件的操作进行了设计,并且按照系统软件设计的流程描述了模块所有任务和部分子模块的功能。
上传时间: 2013-05-24
上传用户:Alibabgu
特点: 精确度0.1%满刻度 可作各式數學演算式功能如:A+B/A-B/AxB/A/B/A&B(Hi or Lo)/|A|/ 16 BIT类比输出功能 输入与输出绝缘耐压2仟伏特/1分钟(input/output/power) 宽范围交直流兩用電源設計 尺寸小,穩定性高
上传时间: 2014-12-23
上传用户:ydd3625
.MS Access Database方式 设计过程中的全部文件都存储在单一的数据库中,同原来的Protel99文件方式。即所有的原理图、PCB文件、网络表、材料清单等等都存在一个.ddb文件中,在资源管理器中只能看到唯一的.ddb文件。 2. Windows File System方式 在对话框底部指定的硬盘位置建立一个设计数据库的文件夹,所有文件被自动保存的文件夹中。可以直接在资源管理器中对数据库中的设计文件如原理图、PCB等进行复制、粘贴等操作。 注:这种设计数据库的存储类型,方便在硬盘对数据库内部的文件进行操作,但不支持Design Team特性。 二、 方便的文件查找功能
上传时间: 2013-10-13
上传用户:fujiura
在Protel2004中进行PCB的完备的CAM输出。首先,我们可以输出的gerber文件, 操作如下:1:画好PCB后,在PCB 的文件环境中,左键点击File\Fabrication Outputs\Gerber Files,进入Gerber setup 界面
上传时间: 2013-10-14
上传用户:aeiouetla
特点(FEATURES) 精确度0.1%满刻度 (Accuracy 0.1%F.S.) 可作各式数学演算式功能如:A+B/A-B/AxB/A/B/A&B(Hi or Lo)/|A| (Math functioA+B/A-B/AxB/A/B/A&B(Hi&Lo)/|A|/etc.....) 16 BIT 类比输出功能(16 bit DAC isolating analog output function) 输入/输出1/输出2绝缘耐压2仟伏特/1分钟(Dielectric strength 2KVac/1min. (input/output1/output2/power)) 宽范围交直流两用电源设计(Wide input range for auxiliary power) 尺寸小,稳定性高(Dimension small and High stability)
上传时间: 2013-11-24
上传用户:541657925
/*--------- 8051内核特殊功能寄存器 -------------*/ sfr ACC = 0xE0; //累加器 sfr B = 0xF0; //B 寄存器 sfr PSW = 0xD0; //程序状态字寄存器 sbit CY = PSW^7; //进位标志位 sbit AC = PSW^6; //辅助进位标志位 sbit F0 = PSW^5; //用户标志位0 sbit RS1 = PSW^4; //工作寄存器组选择控制位 sbit RS0 = PSW^3; //工作寄存器组选择控制位 sbit OV = PSW^2; //溢出标志位 sbit F1 = PSW^1; //用户标志位1 sbit P = PSW^0; //奇偶标志位 sfr SP = 0x81; //堆栈指针寄存器 sfr DPL = 0x82; //数据指针0低字节 sfr DPH = 0x83; //数据指针0高字节 /*------------ 系统管理特殊功能寄存器 -------------*/ sfr PCON = 0x87; //电源控制寄存器 sfr AUXR = 0x8E; //辅助寄存器 sfr AUXR1 = 0xA2; //辅助寄存器1 sfr WAKE_CLKO = 0x8F; //时钟输出和唤醒控制寄存器 sfr CLK_DIV = 0x97; //时钟分频控制寄存器 sfr BUS_SPEED = 0xA1; //总线速度控制寄存器 /*----------- 中断控制特殊功能寄存器 --------------*/ sfr IE = 0xA8; //中断允许寄存器 sbit EA = IE^7; //总中断允许位 sbit ELVD = IE^6; //低电压检测中断控制位 8051
上传时间: 2013-10-30
上传用户:yxgi5
TLC2543是TI公司的12位串行模数转换器,使用开关电容逐次逼近技术完成A/D转换过程。由于是串行输入结构,能够节省51系列单片机I/O资源;且价格适中,分辨率较高,因此在仪器仪表中有较为广泛的应用。 TLC2543的特点 (1)12位分辩率A/D转换器; (2)在工作温度范围内10μs转换时间; (3)11个模拟输入通道; (4)3路内置自测试方式; (5)采样率为66kbps; (6)线性误差±1LSBmax; (7)有转换结束输出EOC; (8)具有单、双极性输出; (9)可编程的MSB或LSB前导; (10)可编程输出数据长度。 TLC2543的引脚排列及说明 TLC2543有两种封装形式:DB、DW或N封装以及FN封装,这两种封装的引脚排列如图1,引脚说明见表1 TLC2543电路图和程序欣赏 #include<reg52.h> #include<intrins.h> #define uchar unsigned char #define uint unsigned int sbit clock=P1^0; sbit d_in=P1^1; sbit d_out=P1^2; sbit _cs=P1^3; uchar a1,b1,c1,d1; float sum,sum1; double sum_final1; double sum_final; uchar duan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; uchar wei[]={0xf7,0xfb,0xfd,0xfe}; void delay(unsigned char b) //50us { unsigned char a; for(;b>0;b--) for(a=22;a>0;a--); } void display(uchar a,uchar b,uchar c,uchar d) { P0=duan[a]|0x80; P2=wei[0]; delay(5); P2=0xff; P0=duan[b]; P2=wei[1]; delay(5); P2=0xff; P0=duan[c]; P2=wei[2]; delay(5); P2=0xff; P0=duan[d]; P2=wei[3]; delay(5); P2=0xff; } uint read(uchar port) { uchar i,al=0,ah=0; unsigned long ad; clock=0; _cs=0; port<<=4; for(i=0;i<4;i++) { d_in=port&0x80; clock=1; clock=0; port<<=1; } d_in=0; for(i=0;i<8;i++) { clock=1; clock=0; } _cs=1; delay(5); _cs=0; for(i=0;i<4;i++) { clock=1; ah<<=1; if(d_out)ah|=0x01; clock=0; } for(i=0;i<8;i++) { clock=1; al<<=1; if(d_out) al|=0x01; clock=0; } _cs=1; ad=(uint)ah; ad<<=8; ad|=al; return(ad); } void main() { uchar j; sum=0;sum1=0; sum_final=0; sum_final1=0; while(1) { for(j=0;j<128;j++) { sum1+=read(1); display(a1,b1,c1,d1); } sum=sum1/128; sum1=0; sum_final1=(sum/4095)*5; sum_final=sum_final1*1000; a1=(int)sum_final/1000; b1=(int)sum_final%1000/100; c1=(int)sum_final%1000%100/10; d1=(int)sum_final%10; display(a1,b1,c1,d1); } }
上传时间: 2013-11-19
上传用户:shen1230
#include<iom16v.h> #include<macros.h> #define uint unsigned int #define uchar unsigned char uint a,b,c,d=0; void delay(c) { for for(a=0;a<c;a++) for(b=0;b<12;b++); }; uchar tab[]={ 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,
上传时间: 2013-10-21
上传用户:13788529953