電子發燒友訊: 飛思卡爾是全球嵌入式處理解決方案、高級汽車電子、消費電子、工業控制和網絡市場的領導者。從微處理器和微控制器到傳感器、模擬集成電路(IC)和連接,我們的技術為創新奠定基礎,構建更加環保、安全、健康和互連的世界 MC9S12XHY系列是飛思卡爾公司的經過優化的,汽車16位微控制器產品系列,具有低成本,高性能的特點。該系列是聯接低端16位微控制器(如:MC9S12HY系列),和高性能32位解決方案的橋梁。MC9S12XHY系列定位于低端汽車儀器群集應用,它包括支持CAN和LIN/J2602通信,并傳送典型的群集請求,如步進失速檢測(SSD)和LCD驅動器的步進電機控制。 MC9S12XHY系列具有16位微控制器的所有優點和效率,同時又保持了飛思卡爾公司現有的8位和16位MCU系列的優勢,即低成本、低功耗、EMC和代碼尺寸效率等優點。與MC9S12HY系列相同,MC9S12XHY系列可以運行16位寬的訪問,而不會出現外設和存儲器的等待狀態。MC9S12XHY系列為100引腳LQFP和112引腳LQFP封裝,旨在最大限度地與100LQFP,MC9S12HY系列兼容。除了每個模塊具有I/O端口外,還可提供更多的,具有中斷功能的I/O端口,具有從停止或等待模式喚醒功能。 圖1 MC9S12XHY系列方框圖截圖
上傳時間: 2014-12-31
上傳用戶:66666
該電路集包括了從業界享有盛名的公司搜集到的大量最新電路,體現了豐富的設計思想。為便于讀者理解和應用這些電路,本書幾乎對每個電路都附有簡要說明。$ C' I" t% P5 l3 V. l0 K, B 本書可供電子技術工作者、高等院校和中等專科學校師生、電子愛好者閱讀和參考。( H& s, \, z6 ~% D: @
上傳時間: 2013-10-19
上傳用戶:songnanhua
//------------------------------------------------------------------------------------//此程序為ADC轉換程序,可以選擇向ADC0BUSY寫1或用定時器0,1,2,3作為ADC的啟動信號。////------------------------------------------------------------------------------------//頭文件定義//------------------------------------------------------------------------------------//#include <c8051f330.h> #include <stdio.h> //-----------------------------------------------------------------------------// 定義16位特殊功能寄存器//----------------------------------------------------------------------------- sfr16 ADC0 = 0xbd; sfr16 TMR0RL = 0xca; sfr16 TMR1RL = 0xca; sfr16 TMR2RL =0xca; sfr16 TMR3RL =0xca; sfr16 TMR0 = 0xCC; sfr16 TMR1 = 0xCC; sfr16 TMR2 = 0xcc; sfr16 TMR3 = 0xcc; //-----------------------------------------------------------------------------// 全局變量定義//-----------------------------------------------------------------------------char i;int result; //-----------------------------------------------------------------------------//定義常量//-----------------------------------------------------------------------------#define SYSCLK 49000000 #define SAMPLE_RATE 50000 //------------------------------------------------------------------------------------// 定義函數//------------------------------------------------------------------------------------void SYSCLK_Init (void);void PORT_Init (void);void Timer0_Init (int counts);void Timer1_Init (int counts);void Timer2_Init (int counts);void Timer3_Init (int counts);void ADC0_Init(void);void ADC0_ISR (void);void ADC0_CNVS_ADC0h(void);//------------------------------------------------------------------------------------// 主程序//------------------------------------------------------------------------------------ void main (void) { int ADCRESULT[50] ; int k; PCA0MD &= ~0x40; // 禁止看門狗 SYSCLK_Init (); PORT_Init (); Timer0_Init (SYSCLK/SAMPLE_RATE); //Timer1_Init (SYSCLK/SAMPLE_RATE); //選擇相應的啟動方式 //Timer2_Init (SYSCLK/SAMPLE_RATE); //Timer3_Init (SYSCLK/SAMPLE_RATE); ADC0_Init(); EA=1; while(1) { //ADC0_CNVS_ADC0h(); k=ADC0; ADCRESULT[i]=result; //此處設斷點,觀察ADCRESULT的結果 } }
上傳時間: 2013-10-13
上傳用戶:SimonQQ
注:1.這篇文章斷斷續續寫了很久,畫圖技術也不精,難免錯漏,大家湊合看.有問題可以留言. 2.論壇排版把我的代碼縮進全弄沒了,大家將代碼粘貼到arduino編譯器,然后按ctrl+T重新格式化代碼格式即可看的舒服. 一、什么是PWM PWM 即Pulse Wavelength Modulation 脈寬調制波,通過調整輸出信號占空比,從而達到改 變輸出平均電壓的目的。相信Arduino 的PWM 大家都不陌生,在Arduino Duemilanove 2009 中,有6 個8 位精度PWM 引腳,分別是3, 5, 6, 9, 10, 11 腳。我們可以使用analogWrite()控 制PWM 腳輸出頻率大概在500Hz 的左右的PWM 調制波。分辨率8 位即2 的8 次方等于 256 級精度。但是有時候我們會覺得6 個PWM 引腳不夠用。比如我們做一個10 路燈調光, 就需要有10 個PWM 腳。Arduino Duemilanove 2009 有13 個數字輸出腳,如果它們都可以 PWM 的話,就能滿足條件了。于是本文介紹用軟件模擬PWM。 二、Arduino 軟件模擬PWM Arduino PWM 調壓原理:PWM 有好幾種方法。而Arduino 因為電源和實現難度限制,一般 使用周期恒定,占空比變化的單極性PWM。 通過調整一個周期里面輸出腳高/低電平的時間比(即是占空比)去獲得給一個用電器不同 的平均功率。 如圖所示,假設PWM 波形周期1ms(即1kHz),分辨率1000 級。那么需要一個信號時間 精度1ms/1000=1us 的信號源,即1MHz。所以說,PWM 的實現難點在于需要使用很高頻的 信號源,才能獲得快速與高精度。下面先由一個簡單的PWM 程序開始: const int PWMPin = 13; int bright = 0; void setup() { pinMode(PWMPin, OUTPUT); } void loop() { if((bright++) == 255) bright = 0; for(int i = 0; i < 255; i++) { if(i < bright) { digitalWrite(PWMPin, HIGH); delayMicroseconds(30); } else { digitalWrite(PWMPin, LOW); delayMicroseconds(30); } } } 這是一個軟件PWM 控制Arduino D13 引腳的例子。只需要一塊Arduino 即可測試此代碼。 程序解析:由for 循環可以看出,完成一個PWM 周期,共循環255 次。 假設bright=100 時候,在第0~100 次循環中,i 等于1 到99 均小于bright,于是輸出PWMPin 高電平; 然后第100 到255 次循環里面,i 等于100~255 大于bright,于是輸出PWMPin 低電平。無 論輸出高低電平都保持30us。 那么說,如果bright=100 的話,就有100 次循環是高電平,155 次循環是低電平。 如果忽略指令執行時間的話,這次的PWM 波形占空比為100/255,如果調整bright 的值, 就能改變接在D13 的LED 的亮度。 這里設置了每次for 循環之后,將bright 加一,并且當bright 加到255 時歸0。所以,我們 看到的最終效果就是LED 慢慢變亮,到頂之后然后突然暗回去重新變亮。 這是最基本的PWM 方法,也應該是大家想的比較多的想法。 然后介紹一個簡單一點的。思維風格完全不同。不過對于驅動一個LED 來說,效果與上面 的程序一樣。 const int PWMPin = 13; int bright = 0; void setup() { pinMode(PWMPin, OUTPUT); } void loop() { digitalWrite(PWMPin, HIGH); delayMicroseconds(bright*30); digitalWrite(PWMPin, LOW); delayMicroseconds((255 - bright)*30); if((bright++) == 255) bright = 0; } 可以看出,這段代碼少了一個For 循環。它先輸出一個高電平,然后維持(bright*30)us。然 后輸出一個低電平,維持時間((255-bright)*30)us。這樣兩次高低就能完成一個PWM 周期。 分辨率也是255。 三、多引腳PWM Arduino 本身已有PWM 引腳并且運行起來不占CPU 時間,所以軟件模擬一個引腳的PWM 完全沒有實用意義。我們軟件模擬的價值在于:他能將任意的數字IO 口變成PWM 引腳。 當一片Arduino 要同時控制多個PWM,并且沒有其他重任務的時候,就要用軟件PWM 了。 多引腳PWM 有一種下面的方式: int brights[14] = {0}; //定義14個引腳的初始亮度,可以隨意設置 int StartPWMPin = 0, EndPWMPin = 13; //設置D0~D13為PWM 引腳 int PWMResolution = 255; //設置PWM 占空比分辨率 void setup() { //定義所有IO 端輸出 for(int i = StartPWMPin; i <= EndPWMPin; i++) { pinMode(i, OUTPUT); //隨便定義個初始亮度,便于觀察 brights[ i ] = random(0, 255); } } void loop() { //這for 循環是為14盞燈做漸亮的。每次Arduino loop()循環, //brights 自增一次。直到brights=255時候,將brights 置零重新計數。 for(int i = StartPWMPin; i <= EndPWMPin; i++) { if((brights[i]++) == PWMResolution) brights[i] = 0; } for(int i = 0; i <= PWMResolution; i++) //i 是計數一個PWM 周期 { for(int j = StartPWMPin; j <= EndPWMPin; j++) //每個PWM 周期均遍歷所有引腳 { if(i < brights[j])\ 所以我們要更改PWM 周期的話,我們將精度(代碼里面的變量:PWMResolution)降低就行,比如一般調整LED 亮度的話,我們用64 級精度就行。這樣速度就是2x32x64=4ms。就不會閃了。
上傳時間: 2013-10-08
上傳用戶:dingdingcandy
USB Anaslyst-I分析儀軟件 安裝程序
標簽: Anaslyst-I USB 分析儀 軟件
上傳時間: 2013-10-09
上傳用戶:qijian11056
USB Anaslyst-I分析儀軟件 安裝程序
標簽: Anaslyst-I USB 分析儀 軟件
上傳時間: 2013-11-17
上傳用戶:yczrl
可編程邏輯器件(PLD)是嵌入式工業設計的關鍵元器件。在工業設計中,PLD已經從提供簡單的膠合邏輯發展到使用FPGA作為協處理器。該技術在通信、電機控制、I/O模塊以及圖像處理等應用中支持 I/O 擴展,替代基本的微控制器 (MCU) 或者數字信號處理器 (DSP)。 隨著系統復雜度的提高,FPGA還能夠集成整個芯片系統(SoC),與分立的 MCU、DSP、ASSP,以及 ASIC解決方案相比,大幅度降低了成本。不論是用作協處理器還是SoC,Altera FPGA在您的工業應用中都具有以下優點: 1. 設計集成——使用FPGA作為協處理器或者SoC,在一個器件平臺上集成 IP和軟件堆棧,從而降低成本。 2. 可重新編程能力——在一個公共開發平臺的一片 FPGA中,使工業設計能夠適應協議、IP以及新硬件功能的發展變化。 3. 性能調整——通過FPGA中的嵌入式處理器、定制指令和IP模塊,增強性能,滿足系統要求。 4. 過時保護——較長的 FPGA 產品生命周期,通過 FPGA 新系列的器件移植,延長工業產品的生命周期,保護硬件不會過時。 5. 熟悉的工具——使用熟悉的、功能強大的集成工具,簡化設計和軟件開發、IP集成以及調試。
上傳時間: 2013-11-18
上傳用戶:tb_6877751
PCB線寬和電流關系公式 先計算Track的截面積,大部分PCB的銅箔厚度為35um(即 1oz)它乘上線寬就是截面積,注意換算成平方毫米。 有一個電流密度經驗值,為15~25安培/平方毫米。把它稱上截面積就得到通流容量。 I=KT(0.44)A(0.75), 括號里面是指數, K為修正系數,一般覆銅線在內層時取0.024,在外層時取0.048 T為最大溫升,單位為攝氏度(銅的熔點是1060℃) A為覆銅截面積,單位為square mil. I為容許的最大電流,單位為安培。 一般 10mil=0.010inch=0.254mm 1A , 250mil=6.35mm 8.3A ?倍數關系,與公式不符 ?
上傳時間: 2013-11-12
上傳用戶:ljd123456
Arduino,是一塊基于開放源代碼的USB接口Simple i/o接口板(包括12通道數字GPIO,4通道PWM輸出,6-8通道10bit ADC輸入通道),并且具有使用類似Java,C語言的IDE集成開發環境。 讓您可以快速使用Arduino語言與Flash或Processing…等軟件,作出互動作品。 Arduino可以使用開發完成的電子元件例如Switch或sensors或其他控制器、LED、步進馬達或其他輸出裝置。Arduino也可以獨立運作成為一個可以跟軟件溝通的接口,例如說:flash、processing、Max/MSP、VVVV 或其他互動軟件…。Arduino開發IDE接口基于開放源代碼原,可以讓您免費下載使用開發出更多令人驚艷的互動作品。 特色: 1、開放源代碼的電路圖設計,程序開發接口免費下載,也可依需求自己修改。 2、使用低價格的微處理控制器(ATMEGA8或ATmega128)。可以采用USB接口供電,不需外接電源。也可以使用外部9VDC輸入 3、Arduino支持ISP在線燒,可以將新的“bootloader”固件燒入ATmega8或ATmega128芯片。有了bootloader之后,可以通過串口或者USB to Rs232線更新固件。 4、可依據官方提供的Eagle格式PCB和SCH電路圖,簡化Arduino模組,完成獨立運作的微處理控制。可簡單地與傳感器,各式各樣的電子元件連接(EX:紅外線,超音波,熱敏電阻,光敏電阻,伺服馬達,…等) 5、支持多種互動程序,如:Flash、Max/Msp、VVVV、PD、C、Processing……等 6、應用方面,利用Arduino,突破以往只能使用鼠標,鍵盤,CCD等輸入的裝置的互動內容,可以更簡單地達成單人或多人游戲互動。
標簽: Arduino
上傳時間: 2013-10-17
上傳用戶:cuiyashuo
Arduino 是一塊基于開放原始代碼的Simple i/o 平臺,并且具有使用類似java,C 語言的開發環境。讓您可以快速 使用Arduino 語言與Flash 或Processing…等軟件,作出互動作品。Arduino 可以使用開發完成的電子元件例如Switch 或Sensors 或其他控制器、LED、步進電機或其他輸出裝置。Arduino 也可以獨立運作成為一個可以跟軟件溝通的平臺,例如說:flash processing Max/MSP VVVV 或其他互動軟件… Arduino 開發IDE界面基于開放原始碼原則,可以讓您免費下載使用開發出更多令人驚奇的互動作品。 什么是Roboduino? DFRduino 與Arduino 完全兼容,只是在原來的基礎上作了些改進。Arduino 的IO 使用的孔座,做互動作品需要面包板和針線搭配才能進行,而DFRduino 的IO 使用針座,使用我們的杜邦線就可以直接把各種傳感器連接到DFRduino 上。 特色描述 1. 開放原始碼的電路圖設計,程式開發界面免費下載,也可依需求自己修改!! 2. DFRduino 可使用ISP 下載線,自我將新的IC 程序燒入「bootloader」; 3. 可依據官方電路圖,簡化DFRduino 模組,完成獨立云作的微處理控制器; 4. 可簡單地與傳感器、各式各樣的電子元件連接(如:紅外線,超聲波,熱敏電阻,光敏電阻,伺服電機等); 5. 支援多樣的互動程式 如: Flash,Max/Msp,VVVV,PD,C,Processing 等; 6. 使用低價格的微處理控制器(ATMEGA168V-10PI); 7. USB 接口,不需外接電源,另外有提供9VDC 輸入接口; 8. 應用方面,利用DFRduino,突破以往只能使用滑鼠,鍵盤,CCD 等輸入的裝置的互動內容,可以更簡單地達成單人或多人游戲互動。 性能描述 1. Digital I/O 數字輸入/輸出端共 0~13。 2. Analog I/O 模擬輸入/輸出端共 0~5。 3. 支持USB 接口協議及供電(不需外接電源)。 4. 支持ISP 下載功能。 5. 支持單片機TX/RX 端子。 6. 支持USB TX/RX 端子。 7. 支持AREF 端子。 8. 支持六組PWM 端子(Pin11,Pin10,Pin9,Pin6,Pin5,Pin3)。 9. 輸入電壓:接上USB 時無須外部供電或外部5V~9V DC 輸入。 10.輸出電壓:5V DC 輸出和3.3V DC 輸出 和外部電源輸入。 11.采用Atmel Atmega168V-10PI 單片機。 12.DFRduino 大小尺寸:寬70mm X 高54mm。 Arduino開發板圖片
上傳時間: 2013-10-30
上傳用戶:wangzhen1990