基于單DSP的VoIP模擬電話適配器研究與實現:提出和實現了一種新穎的基于單個通用數字信號處理器(DSP)的VoIP模擬電話適配器方案。DSP的I/O和存儲資源非常有限,通常適于運算密集型應用,不適宜控制密集型應用[5]。該系統高效利用單DSP的I/O和片內外存儲器資源,采用μC/OS-II嵌入式實時操作系統,支持SIP和TCP-UDP/IP協議,通過LAN或者寬帶接入,使普通電話機成為Internet終端,實現IP電話。該系統軟硬件結構緊湊高效,運行穩定,成本低,具有廣闊的應用前景。關鍵詞:模擬電話適配器;IP電話;數字信號處理器;μC/OS-II 【Abstract】This paper presents a VoIP ATA solution based on a single digital signal processor (DSP). DSPs are suitable for arithmetic-intensiveapplication and unsuitable for control-intensive application because of the limitation of I/O and memory resources. This solution is based on a 16-bitfixed-point DSP and μC/OS-II embedded real-time operating system. It makes good use of the limited resources, supports SIP and TCP-UDP/IPprotocol. It can connect the analog telephone to Internet and realize the VoIP application. This system has a great future for its high efficiency andlow cost.【Key words】Analog telephone adapter (ATA); Voice over Internet protocol (VoIP); Digital signal processor (DSP); μC/OS-II Research and Implementation of VoIPATA Based on Single DSP
上傳時間: 2013-11-20
上傳用戶:Wwill
狀態機設計:8.1.1 數據類型定義語句TYPE語句的用法如下:TYPE 數據類型名IS 數據類型定義OF 基本數據類型;或TYPE 數據類型名IS 數據類型定義;TYPE st1 IS ARRAY ( 0 TO 15 ) OF STD_LOGIC ;TYPE week IS (sun,mon,tue,wed,thu,fri,sat) ; 8.1.1 數據類型定義語句TYPE m_state IS ( st0,st1,st2,st3,st4,st5 ) ;SIGNAL present_state,next_state : m_state ;TYPE BOOLEAN IS (FALSE,TRUE) ;TYPE my_logic IS ( '1' ,'Z' ,'U' ,'0' ) ;SIGNAL s1 : my_logic ;s1 <= 'Z' ;SUBTYPE 子類型名IS 基本數據類型RANGE 約束范圍;SUBTYPE digits IS INTEGER RANGE 0 to 9 ;
標簽: 狀態
上傳時間: 2013-11-05
上傳用戶:nem567397
基于PIC單片機的低功耗讀卡器硬件設計:本文提出了一個完整的基于串口的智能讀卡器子系統設計方案并將其實現。讀卡器的設計突出了小型化的要求,全部器件使用貼片封裝。為了減小讀卡器的體積,設計中還使用了串口竊電的技術,使用串口信號線直接給讀卡器供電。為此,讀卡器使用了省電的設計,采用了省電的集成電路,并大膽簡化了許多傳統的設計電路。關鍵字: 讀卡器, 單片機, 串口竊電 Abstract: This paper aims to put forward a complete design of Smart IC card reader based onSerial Port and propose the way of realizing it for the purpose of Network Security. SMD isadopted to make Smart IC reader smaller in this design. To reduce the volume of Smart ICreader, Serial Port powered technology is employed to get power from the signal line of Serial Port. For this reason, low-power consumption components are adopted in the design and some traditional designs are simplified to reduce the power consumption.Keywords: Card Reader; Single-chip Computer; Serial Port Powered IC 卡系統保存了加密算法所需要的工作密鑰,供加密算法對網絡上傳輸的數據加密使用,是整個系統網絡安全的核心。在IC 卡子系統中,讀卡器是一個重要的部分。它起著管理IC卡、在IC 卡和PC或網絡計算機間傳遞數據的重要作用。本文以一片PIC單片機為核心完成了基于RS232 串口的讀卡器的硬件設計。
上傳時間: 2014-04-14
上傳用戶:wanghui2438
SPCE061A采用的內核 SPCE061A采用的內核(CPU)為μ‘nSP。 μ‘nSP(讀做micro-n-S-P)是凌陽科技推出的16位微處理器,它的突出特點是較高的處理速度,這就使其有能力進行復雜的數字信號處理(DSP,Digital Signal Processing)。 μ‘nSP內核由凌陽自主開發,因而也具備它自己的指令系統。 指令系統.61 3.1 指令系統的概述及符號約定.61 3.2 數據傳送指令62 3.3 算術運算..66 3.3.1 加法運算..67 3.3.2 減法運算..68 3.3.3 帶進位的加減運算.70 3.3.4 取補運算..70 3.3.5 SPCE061A的乘法指令.71 3.3.6 SPCE061A的n項內積運算指令.71 3.3.7 比較運算(影響標志位N,Z,S,C)..73 3.4 SPCE061A的邏輯運算.74 3.4.1 邏輯與..74 3.4.2 邏輯或..75 3.4.3 邏輯異或..76 3.4.4 測試(TEST).78 3.4.5 SPCE061A的移位操作.80 3.5 SPCE061A的控制轉移類指令..83 3.6 偽指令86 3.6.1 偽指令的語法格式及特點..87 3.6.2 偽指令符號約定..87 3.6.3 標準偽指令.87 3.6.4 宏定義與調用98 3.6.5 段的定義與調用101 3.6.6 結構的定義與調用..102 3.6.7 過程的定義與調用..106 3.6.8 偽指令的應用舉例..106
上傳時間: 2013-10-31
上傳用戶:xuanchangri
一種實用的微機自動配料秤系統:介紹一種由單片機構成的配料秤。敘述了秤的傳感器、變送器、信號的變換、硬件原理、軟件流程以及和DCS 系統構成的單回路調節系統,此系統可廣泛地應用于各行業的配料控制中。關鍵詞:配料秤 單片機 單回路調節系統 DCS 系統 Abstract :A proportioning weigher based on single chip computer is introduced. Sensors , transmitters , signal converting , principle of hardware ,software flowchart of proportioning weigher and single loop control system composed with DCS system are emphasized ,this system can be used in proportioning control of various trades extensively.Key Words :Proportioning Weigher ,Single Chip Computer ,Single Loop Control System ,Distributed Control System
上傳時間: 2013-10-12
上傳用戶:zwei41
本章將介紹μ’nSP™系列單片機的應用領域,具體講述SPCE061A單片機在通訊、語音領域里的應用,并詳細給出了有關系統的電路原理圖、程序流程圖以及程序代碼,供讀者參考。 μ’nSP™家族產品具有電源電壓范圍和工作速率范圍較寬、集成度高、性能價格比高以及功耗低等特點,故其有非常廣泛的應用領域。μ’nSP™家族系列產品,涵蓋了非常廣泛的應用。包括:發音與語音識別的微控制器(SPCE系列)、通信來電辯識應用的微控制器(SPT660x系列)、以及通用型微控制器等等,主要體現在以下幾個方面: 用于數字信號處理 用于開發研制便攜式移動終端 用于開發嵌入式計算機應用系統 用于數字信號處理1. 數字濾波器 (Digital Filter)數字濾波器是一種計算處理或算法。借助于此,可以將輸入的一種數字信號或序列變換為另一種序列輸出。數字濾波器已被廣泛地應用于數字語音、數字圖像處理以及模式識別和頻譜分析。數字信號處理器(DSP,Digital Signal Processor)的作用是通過一系列數字來表示信號及其信息,并借助數字計算方法變換和處理這些信號。為了構成DSP,必須有一種部件能夠快速地完成兩個數值的乘法運算并將乘積累加于寄存器。“快速”意味著乘和累加(MAC,Multiply & ACcumulate)較高的運算速度。若以16位數值進行乘和累加,其結果應為32位。顯然,μ’nSP™的硬件結構與其指令系統的結合足以構成DSP應用的硬件MAC單元,因而很適用于一些DSP方面的應用。
上傳時間: 2014-01-26
上傳用戶:qb1993225
Internal Interrupts are used to respond to asynchronous requests from a certain part of themicrocontroller that needs to be serviced. Each peripheral in the TriCore as well as theBus Control Unit, the Debug Unit, the Peripheral Control Processor (PCP) and the CPUitself can generate an Interrupt Request.So what is an external Interrupt?An external Interrupt is something alike as the internal Interrupt. The difference is that anexternal Interrupt request is caused by an external event. Normally this would be a pulseon Port0 or Port1, but it can be even a signal from the input buffer of the SSC, indicatingthat a service is requested.The User’s Manual does not explain this aspect in detail so this ApNote will explain themost common form of an external Interrupt request. This ApNote will show that there is aneasy way to react on a pulse on Port0 or Port1 and to create with this impulse an InterruptService Request. Later in the second part of the document, you can find hints on how todebounce impulses to enable the use of a simple switch as the input device.Note: You will find additional information on how to setup the Interrupt System in theApNote “First steps through the TriCore Interrupt System” (AP3222xx)1. It would gobeyond the scope of this document to explain this here, but you will find selfexplanatoryexamples later on.
上傳時間: 2013-10-27
上傳用戶:zhangyigenius
All inputs of the C16x family have Schmitt-Trigger input characteristics. These Schmitt-Triggers are intended to always provide proper internal low and high levels, even if anundefined voltage level (between TTL-VIL and TTL-VIH) is externally applied to the pin.The hysteresis of these inputs, however, is very small, and can not be properly used in anapplication to suppress signal noise, and to shape slow rising/falling input transitions.Thus, it must be taken care that rising/falling input signals pass the undefined area of theTTL-specification between VIL and VIH with a sufficient rise/fall time, as generally usualand specified for TTL components (e.g. 74LS series: gates 1V/us, clock inputs 20V/us).The effect of the implemented Schmitt-Trigger is that even if the input signal remains inthe undefined area, well defined low/high levels are generated internally. Note that allinput signals are evaluated at specific sample points (depending on the input and theperipheral function connected to it), at that signal transitions are detected if twoconsecutive samples show different levels. Thus, only the current level of an input signalat these sample points is relevant, that means, the necessary rise/fall times of the inputsignal is only dependant on the sample rate, that is the distance in time between twoconsecutive evaluation time points. If an input signal, for instance, is sampled throughsoftware every 10us, it is irrelevant, which input level would be seen between thesamples. Thus, it would be allowable for the signal to take 10us to pass through theundefined area. Due to the sample rate of 10us, it is assured that only one sample canoccur while the signal is within the undefined area, and no incorrect transition will bedetected. For inputs which are connected to a peripheral function, e.g. capture inputs, thesample rate is determined by the clock cycle of the peripheral unit. In the case of theCAPCOM unit this means a sample rate of 400ns @ 20MHz CPU clock. This requiresinput signals to pass through the undefined area within these 400ns in order to avoidmultiple capture events.
上傳時間: 2014-04-02
上傳用戶:han_zh
The 87C576 includes two separate methods of programming theEPROM array, the traditional modified Quick-Pulse method, and anew On-Board Programming technique (OBP).Quick Pulse programming is a method using a number of devicepins in parallel (see Figure 1) and is the traditional way in which87C51 family members have been programmed. The Quick-Pulsemethod supports the following programming functions:– program USER EPROM– verify USER EPROM– program KEY EPROM– program security bits– verify security bits– read signature bytesThe Quick-Pulse method is quite easily suited to standardprogramming equipment as evidenced by the numerous vendors of87C51 compatible programmers on the market today. Onedisadvantage is that this method is not well suited to programming inthe embedded application because of the large number of signallines that must be isolated from the application. In addition, parallelsignals from a programmer would need to be cabled to theapplication’s circuit board, or the application circuit board wouldneed to have logic built-in to perform the programming functions.These requirements have generally made in-circuit programmingusing the modified Quick Pulse method impractical in almost all87C51 family applications.
上傳時間: 2013-10-21
上傳用戶:xiaozhiqban
//芯片資料請到www.elecfans.com查找 //DS1820 C51 子程序//這里以11.0592M晶體為例,不同的晶體速度可能需要調整延時的時間//sbit DQ =P2^1;//根據實際情況定義端口 typedef unsigned char byte;typedef unsigned int word; //延時void delay(word useconds){ for(;useconds>0;useconds--);} //復位byte ow_reset(void){ byte presence; DQ = 0; //pull DQ line low delay(29); // leave it low for 480us DQ = 1; // allow line to return high delay(3); // wait for presence presence = DQ; // get presence signal delay(25); // wait for end of timeslot return(presence); // presence signal returned} // 0=presence, 1 = no part //從 1-wire 總線上讀取一個字節byte read_byte(void){ byte i; byte value = 0; for (i=8;i>0;i--) { value>>=1; DQ = 0; // pull DQ low to start timeslot DQ = 1; // then return high delay(1); //for (i=0; i<3; i++); if(DQ)value|=0x80; delay(6); // wait for rest of timeslot } return(value);} //向 1-WIRE 總線上寫一個字節void write_byte(char val){ byte i; for (i=8; i>0; i--) // writes byte, one bit at a time { DQ = 0; // pull DQ low to start timeslot DQ = val&0x01; delay(5); // hold value for remainder of timeslot DQ = 1; val=val/2; } delay(5);} //讀取溫度char Read_Temperature(void){ union{ byte c[2]; int x; }temp; ow_reset(); write_byte(0xCC); // Skip ROM write_byte(0xBE); // Read Scratch Pad temp.c[1]=read_byte(); temp.c[0]=read_byte(); ow_reset(); write_byte(0xCC); //Skip ROM write_byte(0x44); // Start Conversion return temp.x/2;}
上傳時間: 2013-11-03
上傳用戶:hongmo