/*--------- 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
設計了一種基于PIC16C71單片機的數字水溫配制閥。該配制閥采用NTC熱敏電阻作溫度傳感器,與固定電阻組成簡單分壓電路作為水溫測量電路,利用PIC16C71單片機內置的8位A/D轉換器把熱敏電阻上的模擬電壓轉換為數字量,PIC16C71單片機控制直流電機驅動混水閥調節冷熱水的混合比例實現水溫調節。給出了控制電路圖,對水溫測量電路的參數選擇和測溫精度作了詳細討論。實驗和分析表明,選用阻值較大的NTC熱敏電阻和分壓電阻可較好地解決熱敏電阻因功耗較大造成的熱擊穿問題。 Abstract: A digital valve for controlling water temperature based on PIC16C71 was presented in this paper.A bleeder circuit which consisted of a NTC thermistor as temperature sensor and a fixed resistance was designed as water temperature measuring circuit.The analog voltage on the thermistor was converted into digital signal by a 8-bit A/D converter embedded in PIC16C71. Based on the digital signal, the MCU PIC16C71 drived the valve by a DC motor to adjust the water temperature through adjusting the proportion of hot water and cold water.The circuit diagram of controller was given,the principle,the component parameters and the accuracy of measuring temperatures were also dissertated in detail. It was found by experiment and analysis that thermal breakdown of thermistor caused by high power could be solved by selecting thermistor and fixed resistance with high impedance value.
上傳時間: 2013-11-08
上傳用戶:Yue Zhong
在航電系統維護過程中,為解決定位故障的效率和降低維修成本等問題,提出了基于ICD(Interface Control Document,接口控制文件)的1553B總線的信息監控系統模型。該系統運用數據采集卡對總線中傳輸的信號有無失真、偏差等電氣特性進行檢測,并使用1553B通訊卡通過測控軟件LabWindows/CVI編程與ICD數據庫的動態鏈接,實現總線信息的解析和故障的判斷。與傳統的維護過程相比,這種模型能夠從信號的電氣特性以及信息的解析等全方位的去檢測判斷故障的來源,并且能夠廣泛在其他1553B總線系統內擴展應用。驗證表明該監控系統可以對總線信息進行快速有效地監測分析,能滿足應用需求。 Abstract: In the process of avionics system maintenance, to solve the problems such as improving the efficiency of fast orientation to troubles and reducing maintenance cost, system of 1553B bus information monitor model based on ICD was proposed. The system observed whether the data which transmitted on the bus appear distortion and deviation by using data acquisition card. And using 1553B communication card programming of the measure software LabWindows/CVI and the dynamic linking of ICD database, message analysis and fault estimation could be realized. Compared with traditional maintenance, this model can all-dimensionally detect and analyze the source of faults from both electrical characteristics of the signal and message analysis, and it can be widely applied in the other 1553B system. Experiment shown that this monitor system can effectively detect and analyze the bus message and can meet the application requirements.
上傳時間: 2013-11-23
上傳用戶:18752787361
為解決當前計算機串行通訊接口只有USB,難以滿足舊型號設備或某些單片機要求RS232通訊的問題,設計出兩款RS232/USB電路。采用CH341A與MAX223集成電路芯片構建標準9線RS232/USB通用接口轉換器,無需編程。采用CH341A與PIC16F877A構建單片機與計算機之間的USB通訊電路,軟件遵循RS232通訊協議,硬件進行電平轉換。實際使用表明,這兩款產品與計算機端Windows 操作系統下的串口應用程序完全兼容,且通訊過程中無握手失敗現象。 Abstract: To solve the problem that current computer serial communication only with USB interface can not satisfy with the old type equipments or MCU to communicate with RS232, two kinds of RS232/USB circuit were designed.CH341A and MAX223 integrated circuit chips were used to create a standard 9-line RS232/USB universal interface convertor without programme. CH341A and PIC16F877A chips were adopted to build the USB communication circuit between computers and MCU. The software follows RS232 communication protocol, and the hardware converts electrical levels. Actual practices indicate that the two manufactures are compatible with serial application program of Windows operation system completely,and get avoid of handshake lost.
上傳時間: 2013-11-03
上傳用戶:siying
為提高電容測量精度,針對電容式傳感器的工作原理設計了基于PIC16LF874單片機電容測量模塊。簡單闡述了電容測量電路的應用背景和國內外研究現狀,介紹了美國Microchip公司PIC16LF874單片機的特性。電容式傳感器輸出的動態微弱電容信號通過PS021型電容數字轉換器把模擬量數據轉換成數字量數據,所測數據由PIC16LF874單片機應用程序進行處理、顯示和保存。實驗結果表明,固定電容標稱值為10~20 pF 的測量值相對誤差在1%以內,同時也可知被測電容容值越大,測量值和標稱值相對誤差越小。 Abstract: To improve the accuracy of capacitance measurement,aimed at the principle of work of mercury capacitance acceleration transducer,the design of micro capacitance measurement circuit is based on the key PIC16LF874 chip. Briefly discusses the application of the capacitance measuring circuit for the background and status of foreign researchers,focusing on the United States PIC16LF874 microcontroller features. Capacitive sensor outputed signal through the dynamics of weak PS021-chip capacitors (capacitancedigital converter) to convert analog data into digital data,the measured data from the PIC16LF874 microcontroller application process, display and preservation. Experimental results show that the fixed capacitor 10pF ~ 20pF nominal value of the measured value of relative error is within 1%,but also it canbe seen the value of the measured capacitance larger,measuring value and the nominal value of relative error smaller.
上傳時間: 2013-10-29
上傳用戶:wojiaohs
生活中許多目標的高度和水平距離需要進行測量。目前主要的測量方法,仍以傳統的皮尺丈量為主,測量效率不高,有時還很不方便,沒有技術成熟的數字式測高測距產品。以基本的數學方法為理論依據,利用遙控小車做為載體,采用角度傳感器測量角度、霍爾傳感器測量水平距離等,通過單片機LM3S615進行數據計算,實現了對待測目標物體的高度、水平距離等數據的快速、精確和數字式的測量,高度測量精度可達99.06%,水平測量精度則可達98.06%。 Abstract: In our lives, the height and horizontal distance of some goals are needed to be measured. Because the currently used methods are still traditional tape-based measuring methods, and the measuring efficiency is low and inconvenient so some kinds of digital and portable measuring methods or instruments are needed. Based on the basic math theory, this paper designed and manufactured a portable, digital and remote controlled measuring mobile small vehicle, which assembled with angle measuring sensor for angle measurement and Hall sensor for horizontal distance measuring. MCU LM3S615 calculated the height and horizontal distance data gotten from these sensors. The measuring process is simple, the measuring results are more accurate and the measuring efficiency is higher than traditional measure instruments. The accuracy of height and distance measurement can reach 99.06% and 98.06%.
上傳時間: 2013-10-30
上傳用戶:jackandlee
提出一種基于凌陽單片機的步進電機加減速的控制方法。采用凌陽科技推出的16位結構工控單片機SPMC75F2413A為控制器,由Allegro公司生產的兩相步進電機專用驅動器件SLA7042M構成步進電機的驅動電路,在傳統的3段直線加減速控制算法基礎上增加至7段S形曲線加減速過程,控制步進電機的啟動和停止。實驗結果表明,該控制方法克服了直線加減速中不連續、易造成系統沖擊的問題,整個系統實現柔性控制,電機啟動、停止連續性能提高30%。 Abstract: The method of controlled stepping motor is referred based on SPMC75F2413A MCU, which adopts the 16 knots SPMC75F2413A MCU as the controller. The special-purpose actuation chip SLA7042M of two stepping motor produced by Allegro Corporation constituted to actuation electric circuit. The purpose of increasing to seven section of S shape curve based on the traditional three sections of straight line is to control the start and stop process of stepping motor. The experimental results show that the control method solves easy to pull-out and overshot problems. The overall system realizes flexible control, and the performance of motor start or stop continuity is increased 30%
上傳時間: 2013-12-08
上傳用戶:jiangfire
單片機作為一種微型計算機,其內部具有一定的存儲單元(8031除外),但由于其內部存儲單元及端口有限,很多情況下難以滿足實際需求。為此介紹一種新的擴展方法,將數據線與地址線合并使用,通過軟件控制的方法實現數據線與地址線功能的分時轉換,數據線不僅用于傳送數據信號,還可作為地址線、控制線,用于傳送地址信號和控制信號,從而實現單片機與存儲器件的有效連接。以單片機片外256KB數據存儲空間的擴展為例,通過該擴展方法,僅用10個I/O端口便可實現,與傳統的擴展方法相比,可節約8個I/O端口。 Abstract: As a micro-computer,the SCM internal memory has a certain units(except8031),but because of its internal storage units and the ports are limited,in many cases it can not meet the actual demand.So we introduced a new extension method,the data line and address lines combined through software-controlled approach to realize the time-conversion functions of data lines and address lines,so the data lines not only transmited data signals,but also served as address lines and control lines to transmit address signals and control signals,in order to achieve an effective connection of microcontroller and memory chips.Take microcontroller chip with256KB of data storage space expansion as example,through this extension method,with only10I/O ports it was achieved,compared with the traditional extension methods,this method saves8I/O ports.
上傳時間: 2014-12-26
上傳用戶:adada