附件為:LCD12864顯示漢字和數字的程序與電路 /* 自定義延時子函數 */ void delayms(uchar z) { int x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } /* 判斷LCD忙信號狀態 */ void buys() { int dat; RW=1; RS=0; do { P0=0x00; E=1; dat=P0; E=0; dat=0x80 & dat; } while(!(dat==0x00)); } /* LCD寫指令函數 */ void w_com(uchar com) { //buys(); RW=0; RS=0; E=1; P0=com; E=0; } /* LCD寫數據函數 */ void w_date(uchar date) { //buys(); RW=0; RS=1; E=1; P0=date; E=0; } /* LCD選屏函數 */ void select_screen(uchar screen) { switch(screen) { case 0: //選擇全屏 CS1=0; CS2=0; break; case 1: //選擇左屏 CS1=0; CS2=1; break; case 2: //選擇右屏 CS1=1; CS2=0; break; /* case 3: //選擇右屏 CS1=1; CS2=1; break; */ } } /* LCDx向上滾屏顯示 */ void lcd_rol() { int x; for(x=0;x<64;x++) { select_screen(0); w_com(0xc0+x); delayms(500); } } /* LCD清屏函數:清屏從第一頁的第一列開始,總共8頁,64列 */ void clear_screen(screen) { int x,y; select_screen(screen); //screen:0-選擇全屏,1-選擇左半屏,2-選擇右半屏 for(x=0xb8;x<0xc0;x++) //從0xb8-0xbf,共8頁 { w_com(x); w_com(0x40); //列的初始地址是0x40 for(y=0;y<64;y++) { w_date(0x00); } } } /* LCD顯示漢字字庫函數 */ void lcd_display_hanzi(uchar screen,uchar page,uchar col,uint mun) { //screen:選擇屏幕參數,page:選擇頁參數0-3,col:選擇列參數0-3,mun:顯示第幾個漢字的參數 int a; mun=mun*32; select_screen(screen); w_com(0xb8+(page*2)); w_com(0x40+(col*16)); for ( a=0;a<16;a++) { w_date(hanzi[mun++]); } w_com(0xb8+(page*2)+1); w_com(0x40+(col*16)); for ( a=0;a<16;a++) { w_date(hanzi[mun++]); } } /* LCD顯示字符字庫函數 */ void lcd_display_zifuk(uchar screen,uchar page,uchar col,uchar mun) { //screen:選擇屏幕參數,page:選擇頁參數0-3,col:選擇列參數0-7,mun:顯示第幾個漢字的參數 int a; mun=mun*16; select_screen(screen); w_com(0xb8+(page*2)); w_com(0x40+(col*8)); for ( a=0;a<8;a++) { w_date(zifu[mun++]); } w_com(0xb8+(page*2)+1); w_com(0x40+(col*8)); for ( a=0;a<8;a++) { w_date(zifu[mun++]); } } /* LCD顯示數字字庫函數 */ void lcd_display_shuzi(uchar screen,uchar page,uchar col,uchar mun) { //screen:選擇屏幕參數,page:選擇頁參數0-3,col:選擇列參數0-7,mun:顯示第幾個漢字的參數 int a; mun=mun*16; select_screen(screen); w_com(0xb8+(page*2)); w_com(0x40+(col*8)); for ( a=0;a<8;a++) { w_date(shuzi[mun++]); } w_com(0xb8+(page*2)+1); w_com(0x40+(col*8)); for ( a=0;a<8;a++) { w_date(shuzi[mun++]); } } /* LCD初始化函數 */ void lcd_init() { w_com(0x3f); //LCD開顯示 w_com(0xc0); //LCD行初始地址,共64行 w_com(0xb8); //LCD頁初始地址,共8頁 w_com(0x40); //LCD列初始地址,共64列 } /* LCD顯示主函數 */ void main() { //第一行 int x; lcd_init(); //LCD初始化 clear_screen(0); //LCD清屏幕 lcd_display_shuzi(1,0,4,5); //LCD顯示數字 lcd_display_shuzi(1,0,5,1); //LCD顯示數字 lcd_display_hanzi(1,0,3,0); //LCD顯示漢字 lcd_display_hanzi(2,0,0,1); //LCD顯示漢字 //LCD字符漢字 lcd_display_hanzi(2,0,1,2); //LCD顯示漢字 //第二行 lcd_display_zifuk(1,1,2,0); //LCD顯示字符 lcd_display_zifuk(1,1,3,0); //LCD顯示字符 lcd_display_zifuk(1,1,4,0); //LCD顯示字符 lcd_display_zifuk(1,1,5,4); //LCD顯示字符 lcd_display_shuzi(1,1,6,8); //LCD顯示字符 lcd_display_shuzi(1,1,7,9); //LCD顯示字符 lcd_display_shuzi(2,1,0,5); //LCD顯示字符 lcd_display_shuzi(2,1,1,1); //LCD顯示字符 lcd_display_zifuk(2,1,2,4); lcd_display_zifuk(2,1,3,1); lcd_display_zifuk(2,1,4,2); lcd_display_zifuk(2,1,5,3); //第三行 for(x=0;x<4;x++) { lcd_display_hanzi(1,2,x,3+x); //LCD顯示漢字 } for(x=0;x<4;x++) { lcd_display_hanzi(2,2,x,7+x); //LCD顯示漢字 } //第四行 for(x=0;x<4;x++) { lcd_display_zifuk(1,3,x,5+x); //LCD顯示漢字 } lcd_display_shuzi(1,3,4,7); lcd_display_shuzi(1,3,5,5); lcd_display_shuzi(1,3,6,5); lcd_display_zifuk(1,3,7,9); lcd_display_shuzi(2,3,0,8); lcd_display_shuzi(2,3,1,9); lcd_display_shuzi(2,3,2,9); lcd_display_shuzi(2,3,3,5); lcd_display_shuzi(2,3,4,6); lcd_display_shuzi(2,3,5,8); lcd_display_shuzi(2,3,6,9); lcd_display_shuzi(2,3,7,2); while(1); /* while(1) { // LCD向上滾屏顯示 lcd_rol(); } */ }
上傳時間: 2013-11-08
上傳用戶:aeiouetla
EDA技術課程設計:可控計數器的設計 設計要求:1.設計一個五進制計數器,由兩個控制鍵sel控制不同的計數方式;2.當sel=00時,按0、1、2、3、4、0、1、2、3、4......順序計數;3.當sel=01時,按0、2、4、6、8、0、2、4、6、8......順序計數4.當sel=10時,按1、3、5、7、9、1、3、5、7、9......順序計數5.當sel=11時,按5、4、3、2、1、5、4、3、2、1......順序計數6.由數碼管分別譯碼顯示控制信號和計數狀態,分別用3位數碼管動態顯示;7.給出VHDL設計的源程序。
上傳時間: 2013-12-16
上傳用戶:YYRR
MSP430系列單片機C語言程序設計與開發MSP430系列是一個具有明顯技術特色的單片機品種。關于它的硬件特性及匯編語言程序設計已在《MSP430系列超低功耗16位單片機的原理與應用》及《MSP430系列 FLASH型超低功耗16位單片機》等書中作了全面介紹。《MSP430系列單片機C語言程序設計與開發》介紹IAR公司為MSP430系列單片機配備的C程序設計語言C430。書中敘述了C語言的基本概念、C430的擴展特性及C庫函數;對C430的集成開發環境的使用及出錯信息作了詳盡的說明;并以MSP430F149為例,對各種應用問題及外圍模塊操作提供了典型的C程序例程,供讀者在今后的C430程序設計中參考。 《MSP430系列單片機C語言程序設計與開發》可以作為高等院校計算機、自動化及電子技術類專業的教學參考書,也可作為工程技術人員設計開發時的技術資料。MSP430系列超低功耗16位單片機的原理與應用目錄MSP430系列單片機C語言程序設計與開發 目錄 第1章 C語言基本知識1.1 標識符與關鍵字11.1.1 標識符11.1.2 關鍵字11.2 數據基本類型21.2.1 整型數據21.2.2 實型數據31.2.3 字符型數據41.2.4 各種數據轉換關系61.3 C語言的運算符71.3.1 算術運算符71.3.2 關系運算符和邏輯運算符71.3.3 賦值運算符81.3.4 逗號運算符81.3.5 ? 與 :運算符81.3.6 強制轉換運算符91.3.7 各種運算符優先級列表91.4 程序設計的三種基本結構101.4.1 語句的概念101.4.2 順序結構111.4.3 選擇結構121.4.4 循環結構141.5 函數181.5.1 函數定義181.5.2 局部變量與全局變量191.5.3 形式參數與實際參數201.5.4 函數調用方式201.5.5 函數嵌套調用211.5.6 變量的存儲類別221.5.7 內部函數和外部函數231.6 數組231.6.1 一維數組241.6.2 多維數組241.6.3 字符數組261.7 指針271.7.1 指針與地址的概念271.7.2 指針變量的定義281.7.3 指針變量的引用281.7.4 數組的指針281.7.5 函數的指針301.7.6 指針數組311.8 結構和聯合321.8.1 結構定義321.8.2 結構類型變量的定義331.8.3 結構類型變量的初始化341.8.4 結構類型變量的引用341.8.5 聯合341.9 枚舉361.9.1 枚舉的定義361.9.2 枚舉元素的值371.9. 3 枚舉變量的使用371.10 類型定義381.10.1 類型定義的形式381.10.2 類型定義的使用381.11 位運算391.11.1 位運算符391.11.2 位域401.12 預處理功能411.12.1 簡單宏定義和帶參數宏定義411.12.2 文件包含431.12.3 條件編譯命令44第2章 C430--MSP430系列的C語言2.1 MSP430系列的C語言452.1.1 C430概述452.1.2 C430程序設計工作流程462.1.3 開始462.1.4 C430程序生成472.2 C430的數據表達482.2.1 數據類型482.2.2 編碼效率502.3 C430的配置512.3.1 引言512.3. 2 存儲器分配522.3.3 堆棧體積522.3.4 輸入輸出522.3.5 寄存器的訪問542.3.6 堆體積542.3.7 初始化54第3章 C430的開發調試環境3.1 引言563.1.1 Workbench特性563.1.2 Workbench的內嵌編輯器特性563.1.3 C編譯器特性573.1. 4 匯編器特性573.1.5 連接器特性583.1.6 庫管理器特性583.1.7 C?SPY調試器特性593.2 Workbench概述593.2.1 項目管理模式593.2.2 選項設置603.2.3 建立項目603.2.4 測試代碼613.2.5 樣本應用程序613.3 Workbench的操作623.3.1 開始633.3.2 編譯項目683.3.3 連接項目693.3.4 調試項目713.3.5 使用Make命令733.4 Workbench的功能匯總753.4.1 Workbench的窗口753.4.2 Workbench的菜單功能813.5 Workbench的內嵌編輯器993.5.1 內嵌編輯器操作993.5.2 編輯鍵說明993.6 C?SPY概述1013.6.1 C?SPY的C語言級和匯編語言級調試1013.6.2 程序的執行1023.7 C?SPY的操作1033.7.1 程序生成1033.7.2 編譯與連接1033.7.3 C?SPY運行1033.7.4 C語言級調試1043.7.5 匯編級調試1113.8 C?SPY的功能匯總1133.8.1 C?SPY的窗口1133.8.2 C?SPY的菜單命令功能1203.9 C?SPY的表達式與宏1323.9.1 匯編語言表達式1323.9.2 C語言表達式1333.9.3 C?SPY宏1353.9.4 C?SPY的設置宏1373.9.5 C?SPY的系統宏137 第4章 C430程序設計實例4.1 程序設計與調試環境1434.1.1 程序設計調試集成環境1434.1.2 設備連接1444.1.3 ProF149實驗系統1444.2 數值計算1454.2.1 C語言表達式1454.2.2 利用MPY實現運算1464.3 循環結構1474.4 選擇結構1484.5 SFR訪問1494.6 RAM訪問1504.7 FLASH訪問1514.8 WDT操作1534.8. 1 WDT使程序自動復位1534.8.2 程序對WATCHDOG計數溢出的控制1544.8.3 WDT的定時器功能1554.9 Timer操作1554.9.1 用Timer產生時鐘信號1554.9.2 用Timer檢測脈沖寬度1564.10 UART操作1574.10.1 點對點通信1574.10.2 點對多點通信1604.11 SPI操作1634.12 比較器操作1654.13 ADC12操作1674.13.1 單通道單次轉換1674.13.2 序列通道多次轉換1684.14 時鐘模塊操作1704.15 中斷服務程序1714.16 省電工作模式1754.17 調用匯編語言子程序1764.17.1 程序舉例1764.17.2 生成C程序調用的匯編子程序177第5章 C430的擴展特性5.1 C430的語言擴展概述1785.1.1 擴展關鍵字1785.1.2 #pragma編譯命令1785.1.3 預定義符號1795.1.4 本征函數1795.1.5 其他擴展特性1795.2 C430的關鍵字擴展1795.2.1 interrupt1805.2.2 monitor1805.2.3 no_init1815.2.4 sfrb1815.2.5 sfrw1825.3 C430的 #pragma編譯命令1825.3.1 bitfields=default1825.3.2 bitfields=reversed1825.3.3 codeseg1835.3.4 function=default1835.3.5 function=interrupt1845.3.6 function=monitor1845.3.7 language=default1845.3.8 language=extended1845.3.9 memory=constseg1855.3.10 memory=dataseg1855.3.11 memory=default1855.3.12 memory=no_init1865.3.13 warnings=default1865.3.14 warnings=off1865.3.15 warnings=on1865.4 C430的預定義符號1865.4.1 DATE1875.4.2 FILE1875.4.3 IAR_SYSTEMS_ICC1875.4.4 LINE1875.4.5 STDC1875.4.6 TID1875.4.7 TIME1885.4.8 VER1885.5 C430的本征函數1885.5.1 _args$1885.5.2 _argt$1895.5.3 _BIC_SR1895.5.4 _BIS_SR1905.5.5 _DINT1905.5.6 _EINT1905.5.7 _NOP1905.5.8 _OPC1905.6 C430的匯編語言接口1915.6.1 創建匯編子程序框架1915.6.2 調用規則1915.6.3 C程序調用匯編子程序1935.7 C430的段定義1935.7.1 存儲器分布與段定義1945.7.2 CCSTR段1945.7.3 CDATA0段1945.7.4 CODE段1955.7.5 CONST1955.7.6 CSTACK1955.7.7 CSTR1955.7.8 ECSTR1955.7.9 IDATA01965.7.10 INTVEC1965.7.11 NO_INIT1965.7.12 UDATA0196第6章 C430的庫函數6.1 引言1976.1.1 庫模塊文件1976.1.2 頭文件1976.1.3 庫定義匯總1976.2C 庫函數參考2046.2.1 C庫函數的說明格式2046.2.2 C庫函數說明204第7章 C430編譯器的診斷消息7.1 編譯診斷消息的類型2307.2 編譯出錯消息2317.3 編譯警告消息243附錄 AMSP430系列FLASH型芯片資料248附錄 BProF149實驗系統251附錄 CMSP430x14x.H文件253附錄 DIAR MSP430 C語言產品介紹275
上傳時間: 2014-05-05
上傳用戶:253189838
一:微電腦設計11.1:微電腦基本結構11.2:單芯片微電腦21.3:單芯片微電腦種類3二:MCS51架構介紹62.1:接腳說明62.2:內部構造圖72.3:系統時序82.4:內存結構92.5:系統重制142.6:中斷結構15三:LCD簡介243.1:簡介243.2:內部結構263.3:模塊指令29圖1-1 微電腦基本結構1表1-1 MCS-51 單芯片比較.5圖2-1 MCS-51 接腳圖.6圖2-2 內部結構方塊圖8圖2-3 MCS-51 指令執行時序.9圖2-4 MCS-51 內部數據存儲器.10圖2-5 MCS-51 程序內存結構圖.10圖2-6 MCS-51內部數據存儲器結構11圖2-7 特殊功能緩存器12表2-1 特殊功能緩存器(SFC)初值設定.13圖2-8 數據存儲器結構圖13表2-2 SFR重置設定值.15表2-3 中斷向量17圖2-9 中斷結構方塊圖18表2-4 中斷致能緩存器IE19表2-5 中斷優先權緩存器(IP) .20表2-6 中斷源優先權順序21表2-7 計時/計數控制緩存器TCON.21表2-8 計時/計數模式設定.23圖3-1 LCD 的接口電路方圖24表3-1 LCD 接腳說明25表3-2 控制腳功能25表3-3 LCD 模塊地址對映26表3-4 字符產生器與字型碼對映27表3-5 LCD 內字型表28表3-6 LCD 控制指令表32圖3-2 初始化流程圖33表4-1 功能說明34圖4-1 電路圖35圖4-2 程序流程圖36此篇專題主要研究是利用8051芯片制作出電子鐘,利用LCD當作顯示介面,并且設置有鬧鈴功能,是很可以融入生活的小家電。關鍵詞: AT89C51,LCD,電子鍾,數字鐘,鬧鈴。四:電子鐘344.1:相關知識344.2:功能說明344.3`:流程圖36五:心得感想41六:程序代碼42附錄:MCS51指令集.54參考數據60
上傳時間: 2013-10-11
上傳用戶:butterfly2013
AVR單片機GCC程序設計:第一章 概述1.1 AVR 單片機GCC 開發概述1.2 一個簡單的例子1.3 用MAKEFILE 管理項目1.4 開發環境的配置1.5 實驗板CA-M8第二章 存儲器操作編程2.1 AVR 單片機存儲器組織結構2.2 I/O 寄存器操作2.3 SRAM 內變量的使用2.4 在程序中訪問FLASH 程序存儲器2.5 EEPROM 數據存儲器操作2.6 avr-gcc 段結構與再定位2.7 外部RAM 存儲器操作2.8 堆應用第三章 GCC C 編譯器的使用3.1 編譯基礎3.2 生成靜態連接庫第四章 AVR 功能模塊應用實驗4.1 中斷服務程序4.2 定時器/計數器應用4.3 看門狗應用4.4 UART 應用4.5 PWM 功能編程4.6 模擬比較器4.7 A/D 轉換模塊編程4.8 數碼管顯示程序設計4.9 鍵盤程序設計4.10 蜂鳴器控制第五章 使用C 語言標準I/O 流調試程序5.1 avr-libc 標準I/O 流描述5.2 利用標準I/0 流調試程序5.3 最小化的格式化的打印函數第六章 CA-M8 上實現AT89S52 編程器的實現6.1 編程原理6.2 LuckyProg2004 概述6.3 AT989S52 isp 功能簡介6.4 下位機程序設計第七章 硬件TWI 端口編程7.1 TWI 模塊概述7.2 主控模式操作實時時鐘DS13077.3 兩個Mega8 間的TWI 通信第八章 BootLoader 功能應用8.1 BootLoader 功能介紹8.2 avr-libc 對BootLoader 的支持8.3 BootLoader 應用實例8.4 基于LuckyProg2004 的BootLoader 程序第九章 匯編語言支持9.1 C 代碼中內聯匯編程序9.2 獨立的匯編語言支持9.3 C 與匯編混合編程第十章 C++語言支持附錄 1 avr-gcc 選項附錄 2 Intel HEX 文件格式描述
上傳時間: 2014-04-03
上傳用戶:ligi201200
單片機模糊模糊控制是目前在控制領域所采用的三種智能控制方法中最具實際意義的方法。模糊控制的采用解決了大量過去人們無法解決的問題,并且在工業控制、家用電器和各個領域已取得了令人觸目的成效。本書是一本系統地介紹模糊控制的理論、技術、方法和應用的著作;內容包括模糊控制基礎、模糊控制器、模糊控制系統、模糊控制系統的穩定性、模糊控制系統的開發軟件,用單片微型機實現模糊控制的技術和方法,模糊控制在家用電器和工業上應用的實際例子;反映了模糊控制目前的水平。 單片機模糊模糊控制目錄 : 第一章 模糊邏輯、神經網絡集成電路的發展 1.1 模糊邏輯及其集成電路的發展1.1.1 模糊邏輯的誕生和發展1.1.2 模糊集成電路的發展進程1.2 神經網絡及其集成電路的發展1.2.1 神經網絡的形成歷史1.2.2 神經網絡集成電路的發展1.3 模糊邏輯和神經網絡的結合1.3.1 模糊邏輯和神經網絡結合的意義1.3.2 模糊邏輯和神經網絡結合的前景第二章 模糊邏輯及其理論基礎 2.1 模糊集合與隸屬函數2.1.1 模糊集合概念2.1.2 隸屬函數2.1.3 分解定理與擴張定理2.1.4 模糊數2.2 模糊關系、模糊矩陣與模糊變換2.2.1 模糊關系2.2.2 模糊矩陣2.2.3 模糊變換2.3模糊邏輯和函數2.3.1模糊命題2.3.2模糊邏輯2.3.3模糊邏輯函數2.4模糊語言2.4.1 語言及語言的模糊性2.4.2 模糊語言2.4.3 語法規則和算子2.4.4 模糊條件語句2.5 模糊推理2.5.1 模糊推理的CRI法2.5.2 模糊推理的TVR法2.5.3 模糊推理的直接法2.5.4 模糊推理的精確值法2.5.5 模糊推理的強度轉移法第三章 模糊控制基礎 3.1 模糊控制的系統結構3.2 精確量的模糊化3.2.1 語言變量的分檔3.2.2 語言變量值的表示方法3.2.3 精確量轉換成模糊量3.3 模糊量的精確化3.3.1 最大隸屬度法3.3.2 中位數法3.3.3 重心法3.4 模糊控制規則及控制算法3.4.1 模糊控制規則的格式3.4.2 模糊控制規則的生成3.4.3 模糊控制規則的優化3.4.4 模糊控制算法3.5 模糊控制的神經網絡方法3.5.1 神經元和神經網絡3.5.2 神經網絡的分布存儲和容錯性3.5.3 神經網絡的學習算法3.5.4 神經網絡實現的模糊控制3.5.5 神經網絡構造隸屬函數3.5.6 神經網絡存儲控制規則3.5.7 神經網絡實現模糊化、反模糊化第四章 模糊控制器 4.1 模糊控制器結構4.2 模糊控制器設計4.2.1 常規模糊控制器設計4.2.2 變結構模糊控制器設計4.2.3 自組織模糊控制器設計4.2.4 自適應模糊控制器設計4.3 模糊控制器的數學模型4.3.1 常規模糊控制器的數學模型4.3.2 模糊控制器數學模型的建立第五章 模糊控制系統 5.1 模糊系統的辨識和建模5.1.1 模糊系統辨識的數學基礎5.1.2 基于模糊關系方程的模糊模型辨識5.1.3 基于語言控制規則的模糊模型辨識5.2 模糊控制系統的設計5.2.1 模糊控制系統的一般設計過程5.2.2 模糊控制系統的典型設計5.3 模糊控制系統的穩定性5.3.1 穩定性分析的Lyapunov直接法5.3.2 語言規則描述的模糊控制系統的穩定性5.3.3 關系方程描述的模糊控制系統的穩定性第六章 數字單片機與模糊控制6.1 數字單片機MC68HC705P96.1.1 MC68HC705P9單片機性能概論6.1.2 MC68HC705P9單片機基本結構6.1.3 MC68HC705P9指令系統6.2 數字單片機模糊控制方式6.2.1 數字單片機與模糊控制關系6.2.2 數字單片機模糊控制方式第七章 模糊單片機與模糊控制7.1 模糊單片機NLX2307.1.1 模糊單片機NLX230性能概況7.1.2 NLX230的結構及引腳7.1.3 NLX230的模糊推理方式7.1.4 NLX230的內部寄存器7.1.5 NLX230的操作及接口技術7.2 NLX230開發系統7.3 NLX230應用例子第八章 模糊控制的開發軟件8.1 模糊推理機原理8.2 模糊推理機的算法8.3 模糊推理機結構和清單8.4 模糊邏輯知識基發生器8.5 模糊推理開發環境8.5.1 FIDE的工作條件8.5.2 FIDE的結構8.5.3 FIDE的工作過程第九章 模糊控制在家用電器中的應用9.1 模糊控制的電冰箱9.1.1 電冰箱模糊控制系統結構9.1.2 模糊控制規則和模糊量9.1.3 控制系統的電路結構9.1.4 控制規則的自調整9.2 模糊控制的電飯鍋9.2.1 煮飯的工藝過程曲線9.2.2 模糊控制的邏輯結構9.2.3 模糊量和模糊推理9.2.4 控制軟件框圖9.3 模糊控制的微波爐9.3.1 控制電路的結構框圖9.3.2 微波爐的模糊量與推理9.3.3 微波爐控制電路結構原理9.3.4 控制軟件原理及框圖9.4 模糊控制的洗衣機9.4.1 模糊洗衣機控制系統邏輯結構9.4.2 模糊洗衣機的模糊推理9.4.3 洗衣機物理量檢測方法9.4.4 布質和布量的模糊推理第十章 模糊控制在工程上的應用10.1 模糊參數自適應PID控制器10.1.1 自校正PID控制器10.1.2 模糊參數自適應PID控制系統結構10.1.3 模糊控制規則的產生10.1.4 模糊推理機理及運行結果10.2 恒溫爐模糊控制10.2.1 恒溫爐模糊控制的系統結構10.2.2 模糊控制器及控制規則的形成10.2.3 模糊控制器的校正10.3 感應電機模糊矢量控制10.3.1 模糊矢量控制系統結構10.3.2 矢量控制的基本原理10.3.3 模糊電阻觀測器10.3.4 模糊控制器及運行
上傳時間: 2014-12-28
上傳用戶:semi1981
微機原理及接口技術課件:微機:IBM PC系列機原理:8088匯編語言程序設計接口:半導體存儲器及其接口, I/O接口電路及其與外設連接技術:硬件--接口電路原理 軟件--接口編程方法第1章 基礎知識 4第2章 微型計算機系統結構 6第3章 程序加載并執行 4第4章 微處理器一般指令 6第5章 匯編語言程序設計基礎 4第6章 算術運算與邏輯運算 8第7章 基本輸入與輸出 4第8章 程序流程控制 10第9章 字符串處理 6第10章 宏 4第11章 過程 4第12章 文件處理 4第13章 模塊化程序設計 4
上傳時間: 2013-10-18
上傳用戶:blacklee
微機原理與匯編語言程序設計課件為PPT文件,內容有:第1章 基礎知識 4第2章 微型計算機系統結構 6第3章 程序加載并執行 4第4章 微處理器一般指令 6第5章 匯編語言程序設計基礎 4第6章 算術運算與邏輯運算 8第7章 基本輸入與輸出 4第8章 程序流程控制 10第9章 字符串處理 6第10章 宏 4第11章 過程 4第12章 文件處理 4第13章 模塊化程序設計 4
上傳時間: 2013-10-28
上傳用戶:yanming8525826
微機原理與接口技術精品課程(課件):微機:IBM PC系列機原理:8088匯編語言程序設計接口:半導體存儲器及其接口 I/O接口電路及其與外設連接技術:硬件--接口電路原理軟件--接口編程方法第1章 基礎知識 4第2章 微型計算機系統結構 6第3章 程序加載并執行 4第4章 微處理器一般指令 6第5章 匯編語言程序設計基礎 4第6章 算術運算與邏輯運算 8第7章 基本輸入與輸出 4第8章 程序流程控制 10第9章 字符串處理 6第10章 宏 4第11章 過程 4第12章 文件處理 4第13章 模塊化程序設計 4
上傳時間: 2014-03-17
上傳用戶:894448095
AVR高速嵌入式單片機原理與應用(修訂版)詳細介紹ATMEL公司開發的AVR高速嵌入式單片機的結構;講述AVR單片機的開發工具和集成開發環境(IDE),包括Studio調試工具、AVR單片機匯編器和單片機串行下載編程;學習指令系統時,每條指令均有實例,邊學習邊調試,使學習者看得見指令流向及操作結果,真正理解每條指令的功能及使用注意事項;介紹AVR系列多種單片機功能特點、實用程序設計及應用實例;作為提高篇,講述簡單易學、適用AVR單片機的高級語言BASCOMAVR及ICC AVR C編譯器。 AVR高速嵌入式單片機原理與應用(修訂版) 目錄 第一章ATMEL單片機簡介1.1ATMEL公司產品的特點11.2AT90系列單片機簡介21.3AT91M系列單片機簡介2第二章AVR單片機系統結構2.1AVR單片機總體結構42.2AVR單片機中央處理器CPU62.2.1結構概述72.2.2通用寄存器堆92.2.3X、Y、Z寄存器92.2.4ALU運算邏輯單元92.3AVR單片機存儲器組織102.3.1可下載的Flash程序存儲器102.3.2內部和外部的SRAM數據存儲器102.3.3EEPROM數據存儲器112.3.4存儲器訪問和指令執行時序112.3.5I/O存儲器132.4AVR單片機系統復位162.4.1復位源172.4.2加電復位182.4.3外部復位192.4.4看門狗復位192.5AVR單片機中斷系統202.5.1中斷處理202.5.2外部中斷232.5.3中斷應答時間232.5.4MCU控制寄存器 MCUCR232.6AVR單片機的省電方式242.6.1休眠狀態242.6.2空閑模式242.6.3掉電模式252.7AVR單片機定時器/計數器252.7.1定時器/計數器預定比例器252.7.28位定時器/計數器0252.7.316位定時器/計數器1272.7.4看門狗定時器332.8AVR單片機EEPROM讀/寫訪問342.9AVR單片機串行接口352.9.1同步串行接口 SPI352.9.2通用串行接口 UART402.10AVR單片機模擬比較器452.10.1模擬比較器452.10.2模擬比較器控制和狀態寄存器ACSR462.11AVR單片機I/O端口472.11.1端口A472.11.2端口 B482.11.3端口 C542.11.4端口 D552.12AVR單片機存儲器編程612.12.1編程存儲器鎖定位612.12.2熔斷位612.12.3芯片代碼612.12.4編程 Flash和 EEPROM612.12.5并行編程622.12.6串行下載662.12.7可編程特性67第三章AVR單片機開發工具3.1AVR實時在線仿真器ICE200693.2JTAG ICE仿真器693.3AVR嵌入式單片機開發下載實驗器SL?AVR703.4AVR集成開發環境(IDE)753.4.1AVR Assembler編譯器753.4.2AVR Studio773.4.3AVR Prog783.5SL?AVR系列組態開發實驗系統793.6SL?AVR*.ASM源文件說明81第四章AVR單片機指令系統4.1指令格式844.1.1匯編指令844.1.2匯編器偽指令844.1.3表達式874.2尋址方式894.3數據操作和指令類型924.3.1數據操作924.3.2指令類型924.3.3指令集名詞924.4算術和邏輯指令934.4.1加法指令934.4.2減法指令974.4.3乘法指令1014.4.4取反碼指令1014.4.5取補指令1024.4.6比較指令1034.4.7邏輯與指令1054.4.8邏輯或指令1074.4.9邏輯異或指令1104.5轉移指令1114.5.1無條件轉移指令1114.5.2條件轉移指令1144.6數據傳送指令1354.6.1直接數據傳送指令1354.6.2間接數據傳送指令1374.6.3從程序存儲器直接取數據指令1444.6.4I/O口數據傳送指令1454.6.5堆棧操作指令1464.7位指令和位測試指令1474.7.1帶進位邏輯操作指令1474.7.2位變量傳送指令1514.7.3位變量修改指令1524.7.4其它指令1614.8新增指令(新器件)1624.8.1EICALL-- 延長間接調用子程序1624.8.2EIJMP--擴展間接跳轉1634.8.3ELPM--擴展裝載程序存儲器1644.8.4ESPM--擴展存儲程序存儲器1644.8.5FMUL--小數乘法1664.8.6FMULS--有符號數乘法1664.8.7FMULSU--有符號小數和無符號小數乘法1674.8.8MOVW--拷貝寄存器字1684.8.9MULS--有符號數乘法1694.8.10MULSU--有符號數與無符號數乘法1694.8.11SPM--存儲程序存儲器170 第五章AVR單片機AT90系列5.1AT90S12001725.1.1特點1725.1.2描述1735.1.3引腳配置1745.1.4結構縱覽1755.2AT90S23131835.2.1特點1835.2.2描述1845.2.3引腳配置1855.3ATmega8/8L1855.3.1特點1865.3.2描述1875.3.3引腳配置1895.3.4開發實驗工具1905.4AT90S2333/44331915.4.1特點1915.4.2描述1925.4.3引腳配置1945.5AT90S4414/85151955.5.1特點1955.5.2AT90S4414和AT90S8515的比較1965.5.3引腳配置1965.6AT90S4434/85351975.6.1特點1975.6.2描述1985.6.3AT90S4434和AT90S8535的比較1985.6.4引腳配置2005.6.5AVR RISC結構2015.6.6定時器/計數器2125.6.7看門狗定時器 2175.6.8EEPROM讀/寫2175.6.9串行外設接口SPI2175.6.10通用串行接口UART2175.6.11模擬比較器 2175.6.12模數轉換器2185.6.13I/O端口2235.7ATmega83/1632285.7.1特點2285.7.2描述2295.7.3ATmega83與ATmega163的比較2315.7.4引腳配置2315.8ATtiny10/11/122325.8.1特點2325.8.2描述2335.8.3引腳配置2355.9ATtiny15/L2375.9.1特點2375.9.2描述2375.9.3引腳配置2395 .10ATmega128/128L2395.10.1特點2405.10.2描述2415.10.3引腳配置2435.10.4開發實驗工具2455.11ATmega1612465.11.1特點2465.11.2描述2475.11.3引腳配置2475.12AVR單片機替代MCS51單片機249第六章實用程序設計6.1程序設計方法2506.1.1程序設計步驟2506.1.2程序設計技術2506.2應用程序舉例2516.2.1內部寄存器和位定義文件2516.2.2訪問內部 EEPROM2546.2.3數據塊傳送2546.2.4乘法和除法運算應用一2556.2.5乘法和除法運算應用二2556.2.616位運算2556.2.7BCD運算2556.2.8冒泡分類算法2556.2.9設置和使用模擬比較器2556.2.10半雙工中斷方式UART應用一2556.2.11半雙工中斷方式UART應用二2566.2.128位精度A/D轉換器2566.2.13裝載程序存儲器2566.2.14安裝和使用相同模擬比較器2566.2.15CRC程序存儲的檢查2566.2.164×4鍵區休眠觸發方式2576.2.17多工法驅動LED和4×4鍵區掃描2576.2.18I2C總線2576.2.19I2C工作2586.2.20SPI軟件2586.2.21驗證SLAVR實驗器及AT90S1200的口功能12596.2.22驗證SLAVR實驗器及AT90S1200的口功能22596.2.23驗證SLAVR實驗器及具有DIP40封裝的口功能第七章AVR單片機的應用7.1通用延時子程序2607.2簡單I/O口輸出實驗2667.2.1SLAVR721.ASM 2667.2.2SLAVR722.ASM2677.2.3SLAVR723.ASM2687.2.4SLAVR724.ASM2707.2.5SLAVR725.ASM2717.2.6SLAVR726.ASM2727.2.7SLAVR727.ASM2737.3綜合程序2747.3.1LED/LCD/鍵盤掃描綜合程序2747.3.2LED鍵盤掃描綜合程序2757.3.3在LED上實現字符8的循環移位顯示程序2757.3.4電腦放音機2777.3.5鍵盤掃描程序2857.3.6十進制計數顯示2867.3.7廉價的A/D轉換器2897.3.8高精度廉價的A/D轉換器2947.3.9星星燈2977.3.10按鈕猜數程序2987.3.11漢字的輸入3047.4復雜實用程序3067.4.110位A/D轉換3067.4.2步進電機控制程序3097.4.3測脈沖寬度3127.4.4LCD顯示8字循環3187.4.5LED電腦時鐘3247.4.6測頻率3307.4.7測轉速3327.4.8AT90S8535的A/D轉換334第八章BASCOMAVR的應用8.1基于高級語言BASCOMAVR的單片機開發平臺3408.2BASCOMAVR軟件平臺的安裝與使用3418.3AVR I/O口的應用3458.3.1LED發光二極管的控制3458.3.2簡易手控廣告燈3468.3.3簡易電腦音樂放音機3478.4LCD顯示器3498.4.1標準LCD顯示器的應用3498.4.2簡單游戲機--按鈕猜數3518.5串口通信UART3528.5.1AVR系統與PC的簡易通信3538.5.2PC控制的簡易廣告燈3548.6單總線接口和溫度計3568.7I2C總線接口和簡易IC卡讀寫器359第九章ICC AVR C編譯器的使用9.1ICC AVR的概述3659.1.1介紹ImageCraft的ICC AVR3659.1.2ICC AVR中的文件類型及其擴展名3659.1.3附注和擴充3669.2ImageCraft的ICC AVR編譯器安裝3679.2.1安裝SETUP.EXE程序3679.2.2對安裝完成的軟件進行注冊3679.3ICC AVR導游3689.3.1起步3689.3.2C程序的剖析3699.4ICC AVR的IDE環境3709.4.1編譯一個單獨的文件3709.4.2創建一個新的工程3709.4.3工程管理3719.4.4編輯窗口3719.4.5應用構筑向導3719.4.6狀態窗口3719.4.7終端仿真3719.5C庫函數與啟動文件3729.5.1啟動文件3729.5.2常用庫函數3729.5.3字符類型庫3739.5.4浮點運算庫3749.5.5標準輸入/輸出庫3759.5.6標準庫和內存分配函數3769.5.7字符串函數3779.5.8變量參數函數3799.5.9堆棧檢查函數3799.6AVR硬件訪問的編程3809.6.1訪問AVR的底層硬件3809.6.2位操作3809.6.3程序存儲器和常量數據3819.6.4字符串3829.6.5堆棧3839.6.6在線匯編3839.6.7I/O寄存器3849.6.8絕對內存地址3849.6.9C任務3859.6.10中斷操作3869.6.11訪問UART3879.6.12訪問EEPROM3879.6.13訪問SPI3889.6.14相對轉移/調用的地址范圍3889.6.15C的運行結構3889.6.16匯編界面和調用規則3899.6.17函數返回非整型值3909.6.18程序和數據區的使用3909.6.19編程區域3919.6.20調試3919.7應用舉例*3929.7.1讀/寫口3929.7.2延時函數3929.7.3讀/寫EEPROM3929.7.4AVR的PB口變速移位3939.7.5音符聲程序3939.7.68字循環移位顯示程序3949.7.7鋸齒波程序3959.7.8正三角波程序3969.7.9梯形波程序396附錄1AT89系列單片機簡介398附錄2AT94K系列現場可編程系統標準集成電路401附錄3指令集綜合404附錄4AVR單片機選型表408參 考 文 獻412
上傳時間: 2013-11-08
上傳用戶:xcy122677