I2C總線高頻頭控制程序(Keil C51程序 基于芯片TSA5522系列) /*I2C總線高頻頭控制Keil C51程序(PLL芯片為TSA5522系列) *///--------------------------------------------------------------------------//// 源程序大公開 //// (c) Copyright 2001-2003 xuwenjun //// All Rights Reserved //// V1.00 ////--------------------------------------------------------------------------////標(biāo) 題: I2C總線高頻頭控制程序(PLL芯片為TSA5522系列) ////文件名: xwj_fi1256.c ////版 本: V1.00 ////修改人: 徐文軍 E-mail:xuwenjun@21cn.com ////日 期: 06-02-26 首次公開 ////描 述: I2C總線高頻頭控制程序(PLL芯片為TSA5522系列) ////聲 明: //// 以下代碼僅免費(fèi)提供給學(xué)習(xí)用途,但引用或修改后必須在文件中聲明出處. //// 如用于商業(yè)用途請與作者聯(lián)系. E-mail:xuwenjun@21cn.com //// 有問題請mailto xuwenjun@21cn.com 歡迎與我交流! ////--------------------------------------------------------------------------////老版本: 無 老版本文件名: ////創(chuàng)建人: 徐文軍 E-mail:xuwenjun@21cn.com ////日 期: 06-02-26 ////描 述: ////--------------------------------------------------------------------------// /* 頻率單位為KHz */#define FUENCY 38900 /* 中頻頻率 */#define PLLdataH(f) ((f+FUENCY)*16/1000/256) /* 頻率數(shù)據(jù)高 第1字節(jié)*/#define PLLdataL(f) ((f+FUENCY)*16/1000%256) /* 頻率數(shù)據(jù)低 第2字節(jié)*/#define PLLCON1 0x8e /* 控制字1 第3字節(jié)*/ /* 控制字2 第4字節(jié)*/#define PLLCON2(f) (((f)<(168000))?(0xa0):(((f)<(450000))?(0x90):(0x30)))#define PLLdata3(fchan) PLLdataH (fchan),PLLdataL (fchan),PLLCON2 (fchan)
上傳時間: 2013-11-10
上傳用戶:nanfeicui
51 單片機(jī)C 語言學(xué)習(xí)雜記學(xué)習(xí)單片機(jī)實(shí)在不是件易事,一來要購買高價格的編程器,仿真器,二來要學(xué)習(xí)編程語言,還有眾多種類的單片機(jī)選擇真是件讓人頭痛的事。在眾多單片機(jī)中51 架構(gòu)的芯片風(fēng)行很久,學(xué)習(xí)資料也相對很多,是初學(xué)的較好的選擇之一。51 的編程語言常用的有二種,一種是匯編語言,一種是C 語言。匯編語言的機(jī)器代碼生成效率很高但可讀性卻并不強(qiáng),復(fù)雜一點(diǎn)的程序就更是難讀懂,而C 語言在大多數(shù)情況下其機(jī)器代碼生成效率和匯編語言相當(dāng),但可讀性和可移植性卻遠(yuǎn)遠(yuǎn)超過匯編語言,而且C 語言還可以嵌入?yún)R編來解決高時效性的代碼編寫問題。對于開發(fā)周期來說,中大型的軟件編寫用C 語言的開發(fā)周期通常要小于匯編語言很多。綜合以上C 語言的優(yōu)點(diǎn),我在學(xué)習(xí)時選擇了C 語言。以后的教程也只是我在學(xué)習(xí)過程中的一些學(xué)習(xí)筆記和隨筆,在這里加以整理和修改,希望和大家一起分享,一起交流,一起學(xué)習(xí),一起進(jìn)步。*注:可以肯定的說這個教程只是為初學(xué)或入門者準(zhǔn)備的,筆者本人也只是菜鳥一只,第一課 建立您的第一個C 項目使用C 語言肯定要使用到C 編譯器,以便把寫好的C 程序編譯為機(jī)器碼,這樣單片機(jī)才能執(zhí)行編寫好的程序。KEIL uVISION2 是眾多單片機(jī)應(yīng)用開發(fā)軟件中優(yōu)秀的軟件之一,它支持眾多不同公司的MCS51 架構(gòu)的芯片,它集編輯,編譯,仿真等于一體,同時還支持,PLM,匯編和C 語言的程序設(shè)計,它的界面和常用的微軟VC++的界面相似,界面友好,易學(xué)易用,在調(diào)試程序,軟件仿真方面也有很強(qiáng)大的功能。因此很多開發(fā)51 應(yīng)用的工程師或普通的單片機(jī)愛好者,都對它十分喜歡。以上簡單介紹了KEIL51 軟件,要使用KEIL51 軟件,必需先要安裝它。KEIL51 是一個商業(yè)的軟件,對于我們這些普通愛好者可以到KEIL 中國代理周立功公司的網(wǎng)站上下載一份能編譯2K 的DEMO 版軟件,基本可以滿足一般的個人學(xué)習(xí)和小型應(yīng)用的開發(fā)。(安裝的方法和普通軟件相當(dāng)這里就不做介紹了)安裝好后,您是不是迫不及待的想建立自己的第一個C 程序項目呢?下面就讓我們一起來建立一個小程序項目吧。或許您手中還沒有一塊實(shí)驗板,甚至沒有一塊單片機(jī),不過沒有關(guān)系我們可以通過KEIL 軟件仿真看到程序運(yùn)行的結(jié)果。首先當(dāng)然是運(yùn)行KEIL51 軟件。怎么打開?噢,天!那您要從頭學(xué)電腦了。呵呵,開個玩笑,這個問題我想讀者們也不會提的了:P。運(yùn)行幾秒后,出現(xiàn)如圖1-1 的屏幕。
標(biāo)簽: 單片機(jī)c語言 入門教程
上傳時間: 2014-01-23
上傳用戶:yyyyyyyyyy
單片機(jī)的C 語言輕松入門隨著單片機(jī)開發(fā)技術(shù)的不斷發(fā)展,目前已有越來越多的人從普遍使用匯編語言到逐漸使用高級語言開發(fā),其中主要是以C 語言為主,市場上幾種常見的單片機(jī)均有其C 語言開發(fā)環(huán)境。這里以最為流行的80C51 單片機(jī)為例來學(xué)習(xí)單片機(jī)的C 語言編程技術(shù)。本書共分六章,每章一個專題,以一些待完成的任務(wù)為中心,圍繞該任務(wù)介紹C 語言的一些知識,每一個任務(wù)都是可以獨(dú)立完成的,每完成一個任務(wù),都能掌握一定的識,等到所有的任務(wù)都完成后,即可以完成C 語言的入門工作。C 語言概述及其開發(fā)環(huán)境的建立學(xué)習(xí)一種編程語言,最重要的是建立一個練習(xí)環(huán)境,邊學(xué)邊練才能學(xué)好。Keil 軟件是目前最流行開發(fā)80C51 系列單片機(jī)的軟件,Keil 提供了包括C 編譯器、宏匯編、連接器、庫管理和一個功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境(μVision)將這些部份組合在一起。在學(xué)會使用匯編語言后,學(xué)習(xí)C 語言編程是一件比較容易的事,我們將通過一系列的實(shí)例介紹C 語言編程的方法。圖1-1 所示電路圖使用89S52 單片機(jī)作為主芯片,這種單片機(jī)性屬于80C51 系列,其內(nèi)部有8K 的FLASH ROM,可以反復(fù)擦寫,并有ISP 功能,支持在線下載,非常適于做實(shí)驗。89S52 的P1 引腳上接8 個發(fā)光二極管,P3.2~P3.4 引腳上接4 個按鈕開關(guān),我們的任務(wù)是讓接在P1 引腳上的發(fā)光二極管按要求發(fā)光。
上傳時間: 2013-11-04
上傳用戶:467368609
這是一本關(guān)于Intel 80C51 以及廣大的51 系列單片機(jī)的書這本書介紹給讀者一些新的技術(shù)使你的8051 工程和開發(fā)過程變得簡單請注意這本書的目的可不是教你各種8051 嵌入式系統(tǒng)的解決方法為使問題討論更加清晰在適當(dāng)?shù)牡胤浇o出了程序代碼我們以討論項目的方法來說明每章碰到的問題所有的代碼都可在附帶的光盤上找到你必須熟系C 和8051 匯編因為本書不是一本C 和匯編的指導(dǎo)書你可以買到不少關(guān)于ANSI C 的書最佳選擇當(dāng)然是Intel的數(shù)據(jù)書可從你的芯片供應(yīng)商處免費(fèi)索取和隨編譯工具附送的手冊附送光盤中有我為這本書編寫和收集的程序這些程序已經(jīng)通過測試這并不意味著你可以隨時把這些程序加到你的應(yīng)用系統(tǒng)或工程中有些地方必須首先經(jīng)過修改才能結(jié)合到你的程序中這本書將教你充分使用你的工具如果你只有8051 的匯編程序你也可以學(xué)習(xí)該書和使用這些例子但是你必須把C 語言的程序裝入你的匯編程序中這對懂得C 語言和8051匯編程序指令的人來說并不是一件困難的事如果你有C 編譯器的話那恭喜你使用C 語言進(jìn)行開發(fā)是一個好的決定你會發(fā)現(xiàn)使用C 進(jìn)行開發(fā)將使你的工程開發(fā)和維護(hù)的時間大大減少如果你已經(jīng)擁有Keil C51 那你已經(jīng)選擇了一個非常好的開發(fā)工具我發(fā)現(xiàn)Keil 軟件包能夠提供最好的支持本書支持Keil C 的擴(kuò)展如果你有其它的開發(fā)工具像Archimedes 和Avocet 這本書也能很好地為你服務(wù)但你必須根據(jù)你所用的開發(fā)工具改變一些Keil 的特殊指令在書的一些地方有硬件圖實(shí)例程序在這些硬件上運(yùn)行這些圖繪制地不是很詳細(xì)主要是方框圖但足以使讀者明白軟件和硬件之間的接口讀者應(yīng)該把這本書看成工具書而不是用來學(xué)習(xí)各種系統(tǒng)設(shè)計通過本書你可以了解給定一定的硬件和軟件設(shè)計之后8051 的各種性能希望你能從本書中獲取靈感并有助于你的設(shè)計使你豁然開朗當(dāng)然我希望你也能夠從本書中學(xué)到有用的知識使之能夠提升你的設(shè)計 這本書向你展示了用8051進(jìn)行工程設(shè)計時的許多問題希望你讀完本書后對8051的認(rèn)識能有較大的提高如果你現(xiàn)在還沒有夠買C編譯器你應(yīng)該馬上去買一個采用C語言可是你的系統(tǒng)設(shè)計更簡單維護(hù)更方便這本書覆蓋面較大從C和匯編的代碼優(yōu)化到8051的網(wǎng)絡(luò)設(shè)計再到模糊控制希望你從本書中學(xué)到的知識對你今后的系統(tǒng)設(shè)計有所幫助
上傳時間: 2013-10-12
上傳用戶:ommshaggar
光盤內(nèi)容1.1例 程 “例程”文件夾中為各章節(jié)的程序代碼,均在作者的目標(biāo)板上(自行開發(fā))調(diào)試通過,以確保程序正確。n Keil C對中文文件、目錄以及空格等可能無法編譯連接,所以若要正確調(diào)試,須確保所有文件、目錄為連續(xù)英文名或數(shù)字。n 這些程序應(yīng)用到其他C8051Fxxx系列單片機(jī)時,要確保各個操作寄存器的名稱、地址與各個控制位相一致,否則需要修改。很多寄存器位的位置并不相同,所以移植程序時,使用者要參考F040寄存器和移植對象單片機(jī)的寄存器,以確保正確操作。1.2 原理圖及pcb封裝“原理圖及pcb封裝”文件夾里包含作者制作的C8051F040PCB封裝和原理圖引腳定義文件c8051f040.ddb。其中PCB封裝與Silicon Laboratories公司(原Cygnal公司)提供的TQ100封裝稍有不同(在cygnalpcb文件中): 作者所做引腳長為2.5 mm,而cygnalpcb文件中的引腳長為1.3 mm。加長引腳焊盤是為了方便手工焊芯片。用戶可根據(jù)需要和習(xí)慣選擇封裝。
標(biāo)簽: C8051F040 單片機(jī)開發(fā) C語言編程
上傳時間: 2013-11-19
上傳用戶:
第一章 51單片機(jī)c語言編程介紹這是一本關(guān)于 Intel 80C51 以及廣大的 51 系列單片機(jī)的書 這本書介紹給讀者一些新的技術(shù) 使你的 8051 工程和開發(fā)過程變得簡單 請注意 這本書的目的可不是教你各種8051 嵌入式系統(tǒng)的解決方法為使問題討論更加清晰 在適當(dāng)?shù)牡胤浇o出了程序代碼 我們以討論項目的方法來說明每章碰到的問題 所有的代碼都可在附帶的光盤上找到 你必須熟系 C 和 8051匯編 因為本書不是一本C和匯編的指導(dǎo)書 你可以買到不少關(guān)于ANSI C的書 最佳選擇當(dāng)然是Intel的數(shù)據(jù)書 可從你的芯片供應(yīng)商處免費(fèi)索取 和隨編譯工具附送的手冊附送光盤中有我為這本書編寫和收集的程序 這些程序已經(jīng)通過測試 這并不意味著你可以隨時把這些程序加到你的應(yīng)用系統(tǒng)或工程中 有些地方必須首先經(jīng)過修改才能結(jié)合到你的程序中這本書將教你充分使用你的工具 如果你只有 8051 的匯編程序 你也可以學(xué)習(xí)該書和使用這些例子 但是你必須把 C 語言的程序裝入你的匯編程序中 這對懂得 C 語言和 8051匯編程序指令的人來說并不是一件困難的事如果你有 C 編譯器的話 那恭喜你 使用 C 語言進(jìn)行開發(fā)是一個好的決定 你會發(fā)現(xiàn)使用 C 進(jìn)行開發(fā)將使你的工程開發(fā)和維護(hù)的時間大大減少 如果你已經(jīng)擁有 Keil C51 那你已經(jīng)選擇了一個非常好的開發(fā)工具 我發(fā)現(xiàn) Keil 軟件包能夠提供最好的支持 本書支持Keil C 的擴(kuò)展 如果你有其它的開發(fā)工具像 Archimedes 和 Avocet 這本書也能很好地為你服務(wù) 但你必須根據(jù)你所用的開發(fā)工具改變一些 Keil 的特殊指令在書的一些地方有硬件圖 實(shí)例程序在這些硬件上運(yùn)行 這些圖繪制地不是很詳細(xì)主要是方框圖 但足以使讀者明白軟件和硬件之間的接口讀者應(yīng)該把這本書看成工具書 而不是用來學(xué)習(xí)各種系統(tǒng)設(shè)計 通過本書 你可以了解給定一定的硬件和軟件設(shè)計之后 8051 的各種性能 希望你能從本書中獲取靈感 并有助于你的設(shè)計 使你豁然開朗 當(dāng)然 我希望你也能夠從本書中學(xué)到有用的知識 使之能夠提升你的設(shè)計
上傳時間: 2013-11-16
上傳用戶:穿著衣服的大衛(wèi)
第1章 單片機(jī)系統(tǒng)概述1.1 AVR系列單片機(jī)的特點(diǎn)1.2 AT90系列單片機(jī)簡介第2章 AT90LS8535單片機(jī)的基礎(chǔ)知識2.1 AT90LS8535單片機(jī)的總體結(jié)構(gòu)2.1.1 AT90LS8535單片機(jī)的中央處理器2.1.2 AT90LS8535單片機(jī)的存儲器組織2.1.3 AT90LS8535單片機(jī)的I/O接口2.1.4 AT90LS8535單片機(jī)的內(nèi)部資源2.1.5 AT90LS8535單片機(jī)的時鐘電路2.1.6 AT90LS8535單片機(jī)的系統(tǒng)復(fù)位2.1.7 AT90LS8535單片機(jī)的節(jié)電方式2.1.8 AT90LS8535單片機(jī)的芯片引腳2.2 AT90LS8535單片機(jī)的指令系統(tǒng)2.2.1 匯編指令格式2.2.2 尋址方式2.2.3 偽指令2.2.4 指令類型及數(shù)據(jù)操作方式2.3 應(yīng)用程序設(shè)計2.3.1 程序設(shè)計方法2.3.2 應(yīng)用程序舉例第3章 AT90LS8535單片機(jī)的C編程3.1 支持高級語言編程的AVR系列單片機(jī)3.2 AVR的C編譯器3.3 ICC AVR介紹3.3.1 安裝ICC AVR3.3.2 設(shè)置ICC AVR3.4 用ICC AVR編寫應(yīng)用程序3.5 下載程序文件第4章 數(shù)據(jù)類型、運(yùn)算符和表達(dá)式4.1 ICC AVR支持的數(shù)據(jù)類型4.2 常量與變量4.2.1 常量4.2.2 變量4.3 AT90LS8535的存儲空間4.4 算術(shù)和賦值運(yùn)算4.4.1 算術(shù)運(yùn)算符和算術(shù)表達(dá)式4.4.2 賦值運(yùn)算符和賦值表達(dá)式4.5 邏輯運(yùn)算4.6 關(guān)系運(yùn)算4.7 位操作4.7.1 位邏輯運(yùn)算4.7.2 移位運(yùn)算4.8 逗號運(yùn)算第5章 控制流5.1 C語言的結(jié)構(gòu)化程序設(shè)計5.1.1 順序結(jié)構(gòu)5.1.2 選擇結(jié)構(gòu)5.1.3 循環(huán)結(jié)構(gòu)5.2 選擇語句5.2.1 if語句5.2.2 switch分支5.2.3 選擇語句的嵌套5.3 循環(huán)語句5.3.1 while語句5.3.2 do…while語句5.3.3 for語句5.3.4 循環(huán)語句嵌套5.3.5 break語句和continue語句第6章 函數(shù)6.1 函數(shù)的定義6.1.1 函數(shù)的定義的一般形式6.1.2 函數(shù)的參數(shù)6.1.3 函數(shù)的值6.2 函數(shù)的調(diào)用6.2.1 函數(shù)的一般調(diào)用6.2.2 函數(shù)的遞歸調(diào)用6.2.3 函數(shù)的嵌套使用6.3 變量的類型及其存儲方式6.3.1 局部變量6.3.2 局部變量的存儲方式6.3.3 全局變量6.3.4 全局變量的存儲方式6.4 內(nèi)部函數(shù)和外部函數(shù)6.4.1 內(nèi)部函數(shù)6.4.2 外部函數(shù)第7章 指針第8章 結(jié)構(gòu)體和共用體第9章 AT90LS8535的內(nèi)部資源第10章 AT90LS8535的人機(jī)接口編程第11章 AT90LS8535的外圍擴(kuò)展第12章 AT90LS8535的通信編程第13章 系統(tǒng)設(shè)計中的程序處理方法
標(biāo)簽: avr 單片機(jī)c語言
上傳時間: 2013-10-31
上傳用戶:smthxt
作者:張雄偉 第一章 概述 第二章 DSP芯片的基本結(jié)構(gòu)和特征 第三章 DSP芯片的定點(diǎn)運(yùn)算 第四章 DSP芯片的浮點(diǎn)運(yùn)算 第五章 TMS320DSP芯片的定點(diǎn)軟硬件設(shè)計 第六章 TMS320DSP芯片的浮點(diǎn)軟硬件設(shè)計 第七章 COFF公共目標(biāo)文件格式 第八章 DSP芯片的開發(fā)工具及應(yīng)用 第九章 用C語言開發(fā)DSP芯片 第十章 DSP芯片的C語言和匯編語言的混合開發(fā) 第十一章 DSP芯片的應(yīng)用開發(fā)舉例 第十二章 數(shù)字濾波器的DSP實(shí)現(xiàn) 第十三章 FFT的DSP實(shí)現(xiàn)
上傳時間: 2013-10-12
上傳用戶:dddddd
在了解ARM在UCOS系統(tǒng)移植之前,請先了解本人編寫的一片《周立功NXP LPC21xx22xx系列ARM芯片的啟動程序分解》文件,在此基礎(chǔ)上,需要熟悉以下幾項內(nèi)容: ARM內(nèi)核級LPC系列的芯片內(nèi)部結(jié)構(gòu)知識 了解ADS1.2編譯軟件,其中各種偽指令及與C語言接口資料 閱讀UCOS2.52源碼及結(jié)構(gòu),可參閱本人編寫的《Ucos_II 2.52源碼中文譯注資料》一文
上傳時間: 2013-11-10
上傳用戶:哇哇哇哇哇
松翰 C語言 編程 指導(dǎo)C +Program +Guide
上傳時間: 2013-10-31
上傳用戶:zhaistone
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1