µn¤J
¡U
µù¥U
¡U
·|û¤¤¤ß
¡U
µ²±b
¡U
°ö°V½Òµ{
Å]ªk§Ì¤l
¡U
¦Û¸ê¥Xª©
¡U
¹q¤l®Ñ
¡U
«ÈªA¤¤¤ß
¡U
´¼¼z«¬¥ßÊ^·|û
®Ñ¦W
¥Xª©ªÀ
§@ªÌ
isbn
½s¸¹
5050Å]ªk²³Äw
|
NG®Ñ«°
|
°ê»Ú¯Å«~µP½Òµ{
|
Àu´f³qª¾
|
ÅRÆE^¶¯µ¼Öºë¿ï
|
89S51/52 ³æ´¹¤ù»P±MÃD»s§@³Ì¨Î½d¥»¡G¨Ï¥ÎKeil(ªþ½d¨Òµ{¦¡ÀɮפÎKeil C³nÅé)
¡D
FPGA¼Æ¦ìIC¤ÎM
¡D
CPLD¼Æ¦ì¹q¸ô³]p
¡D
TMS320F240
¤å¾Ç¤p»¡
¤å¾Ç
¡U
¤p»¡
°ÓºÞ³Ð§ë
°]¸g§ë¸ê
¡U
¦æ¾P¥øºÞ
¤H¤åÃÀ§{
©v±Ð¡Bõ¾Ç
ªÀ·|¡B¤H¤å¡B¥v¦a
ÃÀ³N¡B¬ü¾Ç
¡U
¹q¼vÀ¸¼@
Ày§Ó¾i¥Í
ÂåÀø¡B«O°·
®Æ²z¡B¥Í¬¡¦Ê¬ì
±Ð¨|¡B¤ß²z¡BÀy§Ó
¶i׾Dzß
¹q¸£»Pºô¸ô
¡U
»y¨¥¤u¨ã
Âø»x¡B´Á¥Z
¡U
x¬F¡Bªk«ß
°Ñ¦Ò¡B¦Ò¸Õ¡B±Ð¬ì¥Î®Ñ
¬ì¾Ç¤uµ{
¬ì¾Ç¡B¦ÛµM
¡U
¤u·~¡B¤uµ{
®a®x¿Ë¤l
®a®x¡B¿Ë¤l¡B¤H»Ú
«C¤Ö¦~¡Bµ£®Ñ
ª±¼Ö¤Ñ¦a
®È¹C¡B¦a¹Ï
¡U
¥ð¶¢®T¼Ö
º©µe¡B´¡¹Ï
¡U
¨î¯Å
AVR °ª³t16¦ì¤¸PD³æ´¹¤ù·L±±¾¹À³¥Î¡G°ò¦½g¡]×qª©¡^
§@ªÌ¡G
林容益
¤ÀÃþ¡G
¤u·~¡E¤uµ{
¡þ
¹q¤l¡E¹q¾÷
¥Xª©ªÀ¡G
¥þµØ¹Ï®Ñ
¥Xª©¤é´Á¡G1999/10/1
ISBN¡G9572126555
®ÑÄy½s¸¹¡Gsb0061220
¶¼Æ¡G608
©w»ù¡G
450
¤¸
Àu´f»ù¡G
88
§é
396
¤¸
®Ñ»ùY¦³²§°Ê¡A¥H¥Xª©ªÀ¹ê»Ú©w»ù¬°·Ç
µ´ª©®Ñ
µ´ª©®Ñ¡G½T©w¤£¦Aª©ªº°Ó«~¡A¶È´£¨Ñ®ÑÄy¸ê°T°Ñ¦Ò¡C
µû»ù¼Æ¡G
(½Ð±N·Æ¹«²¾¦Ü¬P¬P³B¶i¦æµû»ù)
¥Ø«e¥§¡µû»ù¡G
¤å¦r³sµ²
½Æ»s»yªk
AVR °ª³t16¦ì¤¸PD³æ´¹¤ù·L±±¾¹À³¥Î¡G°ò¦½g¡]×qª©¡^
¤º®e²¤¶
¦PÃþ±ÀÂË
● 內容簡介 ●
本書是一本°w對最新快³tRISC單晶片AVR的精¸Ô中文書籍¡C對AVR的特殊I/O架構¡B多功¯àp時p數器¡B含捕抓器ICP¡B比¸û器COMP¡BPWM以及串列UART¡BSPI界±¡BEEPROM和Ãþ比比¸û器¡BWDR等³£有¸Ô盡的介紹¡C本書¾A合微控器初學ªÌ或已學¹L微控器ªÌ»P專科¡B技³N學°|¹q子科的學生¾\Ū¡C
■ 目¿ý
1 ATMEL的AVR系統單晶片微¹q¸£簡介 1-1 引 ¨¥ 1-1 1-2 發展工具及實Åç³]備 1-6 2 AVR AT90S系列單晶片微¹q¸£結構 2-1 AVR AT90S系列方塊結構簡介 2-1 2-2 AVR AT90S的°O憶Åé對應結構 2-15 2-2-1 ³q用暫存器R00-R31(R00H-R1FH) 2-20 2-2-2 ¶¡接指標暫存器X(R1AH-R1BH) ¡@¡@¡@¡@¡@¡@ Y(R1CH-R1DH) Z(R1EH-R1FH) 2-21 2-2-3 I/O暫存器($00H-$3FH) 2-22 2-2-4 內³¡一¯ëSRAM及外加SRAM 2-23 2-2-5 EEPROM 2-24 2-2-6 程式°O憶Åé 2-24 2-3 AVR指令及定址模式 2-26 2-4 AVR的指令分Ãþªí 2-43 2-4-1 暫存器¡ASRAM及程式°O憶Åé內含¸ê料 ¡@¡@¡@¡@¡@ Âà移指令(MOV¡ALD¡AST)等等 2-44 2-4-2 AVR算³N及ÅÞ¿è¹B算指令 ¡@¡@¡@¡@¡@ (ADD¡ASUB¡AINC¡ADEC)等等 2-46 2-4-3 AVR執¦æ程式°O憶Åé定址分歧(Branch)指令 ¡@¡@¡@¡@¡@ (JMP¡ACALL¡ARET及SKIP¡ABR) 2-49 2-4-4 AVR對應各暫存器位元¹B作指令 ¡@¡@¡@¡@¡@ (LSR¡AROR¡ASWA¡APBS¡AETB¡ACLR¡A ¡@¡@¡@¡@¡@ SBI¡ACBI) 2-53 2-5 AVR指令執¦æ時序 2-57 2-5-1 單一執¦æ¶g期指令分析 2-57 2-5-2 內³¡¸ê料SRAM的存取Âù執¦æ¶g期指令 ¡@¡@¡@¡@¡@ 時序分析 2-60 2-5-3 對應外³¡SRAM¸ê料的存取執¦æ¶g期指令 ¡@¡@¡@¡@¡@ 時序分析 2-61 2-6 AVR I/O特殊功¯à暫存器之簡介 2-64 2-6-1 AVR之I/O埠控制暫存器簡介 2-64 2-6-2 AVR之p數p時器TC(Timer/Counter)控制 ¡@¡@¡@¡@¡@ 暫存器簡介 2-65 2-6-3 AVR之串列傳¿é¶gÃä(UART及SPI)控制 ¡@¡@¡@¡@¡@ 暫存器簡介 2-66 2-6-4 AVR之Ãþ比比¸û器控制及EEPROM的Ū寫 ¡@¡@¡@¡@¡@ 控制暫存器簡介 2-68 2-6-5 AVR之中斷³]定控制及其它I/O暫存器簡介 2-70 2-7 以AVR暫存器為導向之指令功¯à分析 2-77 2-8 最新含多³q¹DA/DÂà換器的AVR接¸}圖及其功¯à ¡@¡@¡@¡@¡@ 簡介 2-82 2-9 AVR的指令總列ªí 2-88 3 AVR的«³]看ªù狗p時控制及I/O特性和應用 3-1 AVR的«³]控制¹q¸ô 3-1 3-1-1 ¹q源ON的啟動«³] 3-3 3-1-2 外³¡/RESET的t¹q位啟動«³] 3-5 3-1-3 看ªù狗p時器溢位的«³]控制 3-7 3-2 AVR的I/O架構及其對應功¯à»¡明 3-9 3-2-1 埠A的¹q¸ô架構功¯à 3-11 3-2-2 埠B的¹q¸ô架構功¯à 3-18 3-2-3 埠C的¹q¸ô架構功¯à 3-24 3-2-4 埠D的¹q¸ô架構功¯à 3-26 3-3 對應I/O埠的¿é出入控制應用程式例 3-34 3-3-1 實Åç一¡G對應PA¡APB¡APC¡APD的I/O埠¸ê 3-3-2 料¿é出入控制例 3-35 3-4 看ªù狗p時器作¹q¸ô或程式監控及對應I/O埠之 ¡@¡@¡@¡@¡@ ¿é出入控制應用 3-48 3-4-1 實Åç二¡G以WDT作程式監控保Å@之8515 ¡@¡@¡@¡@¡@ ¿é出入I/O控制程式例 3-52 3-4-2 實Åç三¡G以LPM指令作程式¸ê料ªí取出 ¡@¡@¡@¡@¡@ °e到I/O端的¶¶序控制應用例 3-58 3-5 AVR的工作ÀW率及«³](RESET)的控制³]定 3-67 4 AVR的p時p數器¡B比¸û器¡B捕抓器¡B PWM等及其控制應用 4-1 p時p數器的¹w°£控制 4-2 4-2 p時p數器0(Timer/Counter0) 4-3 4-3 p時p數器1(Timer/Counter1) 4-7 4-3-1 p時p數器1(Timer/Counter1)p時p數工作 4-9 4-3-2 p時p數器1(Timer/Counter1)的¿é出比¸û ¡@¡@¡@¡@¡@ 控制 4-11 4-3-3 TCNT1的Ū取(READ) 4-14 4-3-4 TCNT1的寫入(WRITE) 4-15 4-3-5 p時p數器1(Timer/Counter1)的¿é入捕抓 ¡@¡@¡@¡@¡@ 控制 4-16 4-3-6 PWM控制模式¹q¸ô 4-19 4-4 實Åç四¡Gp時器0作1秒p時之時ÄÁp數應用例 4-24 4-5 實Åç五¡Gp時器1作1秒之精確p時並予以¿é出 ¡@¡@¡@¡@¡@ 到PA¡APB¡APC¡APD之時ÄÁ應用例 4-30 4-6 實Åç六¡Gp時器1作1秒之精確p時並Âà成十¶i位 ¡@¡@¡@¡@¡@ 之時ÄÁp數應用例 4-35 4-7 實Åç七¡Gp時器1外³¡ICP的¿é入控制作精確的 ¡@¡@¡@¡@¡@ ¶g期p數應用例 4-47 4-7-1 實Åç八¡Gp時器1外³¡ICP的¿é入¯ß½Ä2次 ¡@¡@¡@¡@¡@ 捕抓控制作精確的¶g期p數應用例 4-56 4-7-2 實Åç九¡Gp時器1外³¡ICP的¿é入¯ß½Ä2次 ¡@¡@¡@¡@¡@ 捕抓控制作精確的¶g期p數十¶i位¿é出Åã示 ¡@¡@¡@¡@¡@ 應用例(AVRTD7.ASM) 4-62 4-7-3 實Åç十¡G利用ICP對應¿é入ÀW率以TC1的p時 ¡@¡@¡@¡@¡@ 中斷捕抓作³s續ÀW率的¶q測 4-64 4-7-4 實Åç十一¡Gp時器1外³¡ICP的¿é入¯ß½Ä2次 ¡@¡@¡@¡@¡@ 捕抓控制作精確的¯ß½Ä寬¶q測之十¶i位¿é出 ¡@¡@¡@¡@¡@ Åã示應用例 4-67 4-8 實Åç十二¡Gp時器1Âù比¸û器¿é入¹w³]作外³¡p數 ¡@¡@¡@¡@¡@ ¶qp數控制應用例 4-70 4-9 實Åç十三¡Gp時器1Âù比¸û器¿é入¹w³]作PWM¿é ¡@¡@¡@¡@¡@ 出控制應用例 4-76 4-10 AVR的中斷³B理 4-80 4-10-1 GIMSK/GIFR³q用中斷¾B罩及³q用中斷旗¸¹ ¡@¡@¡@¡@¡@ 暫存器 4-81 4-10-2 TIMSK/TIFRp時p數器中斷¾B罩及其對應 中斷旗¸¹暫存器 4-82 4-11 MCU控制暫存器MCUCR(MCU Control Register) 4-83 4-12 AVR省¹q睡眠態之控制應用程式例 4-87 4-13 AVRp時器等I/O暫存器各位元功¯à簡ªí 4-90 5 AVR串列傳¿é埠UARTA¡BSPI及Ãþ比比¸û 器和EEPROM 5-1 UART串列傳¿é控制¹q¸ô 5-2 5-1-1 ¸ê料傳出¹q¸ô 5-2 5-1-2 ¸ê料接收¹q¸ô 5-5 5-1-3 UART的控制 5-8 5-1-4 UART的包德率產生器 5-15 5-2 串列¶gÃä界±(Serial Peripheral Interface) 5-18 5-2-1 次控¿ï擇³]定¿é入¸}/SS(Slave Slect Input) 5-23 5-2-2 SPI的¸ê料IJ發移位模式 5-24 5-2-3 SPI控制暫存器SPCR 5-26 5-2-4 SPI的狀態暫存器(SPI Status Register)SPSR 及SPI的¸ê料暫存器SPDR 5-29 5-3 AVR的Ãþ比比¸û器 5-31 5-4 AVR的EEPROM的Ū寫控制 5-35 5-5 程式應用例 5-39 5-5-1 實Åç十四¡GEPROM的Ū寫控制及應用 5-39 5-5-2 實Åç十五¡GÃþ比比¸û器作D/A比¸û之SAC 式ADC控制及應用 5-47 5-5-3 實Åç十六¡GÃþ比比¸û器作³s續D/A¿é出比¸û 中斷控制之ADC控制及應用 5-53 5-5-4 實Åç十七¡GÃþ比比¸û器作線性³s續充¹q¿é出 比¸û中斷控制之ADC及應用 5-56 5-6 串列傳¿é埠之同步SPI及«D同步UART的控制 ¡@¡@¡@¡@¡@ 應用 5-62 5-6-1 實Åç十八¡GSPI同步串列埠¸ê料傳¿é中斷 控制及其應用 5-63 5-7 AVR直接ÅX動多位數七段LEDÅã示掃描控制及 ¡@¡@¡@¡@¡@ 應用 5-73 5-7-1 實Åç十九¡G簡易AVR直接掃描七段LED 控制實Åç 5-75 5-7-2 多位數七段LED掃描Åã示之控制應用及 功¯à»¡明 5-78 5-7-3 實Åç二十¡G由七段LED作每位之段慢³t Åã示及字元快³t控制實Åç 5-79 5-8 實Åç二十一¡GUART«D同步串列埠¸ê料傳¿é中斷 ¡@¡@¡@¡@¡@ 控制及其應用 5-87 5-8-1 實Åç二十二¡GUART«D同步串列埠¸ê料傳¿é »PPC³s線控制應用 5-104 5-9 AVR的Ãþ比比¸û器¡AUART¡ASPI列傳¿é和 ¡@¡@¡@¡@¡@ EEPROM的相Ãö暫存器總ªí列 5-112 6 AVR的編¿è¡B組Ķ及模擬¡B°£¿ù和燒¿ý 6-1 概 z 6-1 6-2 AVR的程式編¿è 6-2 6-2-1 暫存器及參ÅÜ數的符¸¹標示和³]定 6-2 6-2-2 程式p數器PC的定址宣告及EEPROM和 SRAM的¸ê料Ū寫定址³]定 6-3 6-2-3 引含副程式(INCLUDE)或宣告微指令 (MACRO)及³]定(SET)ªí示式之編¿è 6-7 6-2-4 AVR組Ķ器的ªí示式編¿è 6-13 6-3 ATMEL提供之AVR組Ķ器WAVRASM之操作 ¡@¡@¡@¡@¡@ 應用 6-21 6-4 ATMEL的AVR Studio³nÅé模擬(Simulation)及 ¡@¡@¡@¡@¡@ 硬Åé¹q¸ô模擬(Emulation) 6-36 6-4-1 AVR的程式執¦æ相Ãö暫存器(Register)¡AI/O ¶gÃä及PC執¦æ狀態的µø窗Æ[察 6-37 6-4-2 AVR程式執¦æ相Ãöp時器(Timer)¡ASPI及 UART串列¶gÃä狀態µø窗Æ[察 6-40 6-4-3 AVR程式°O憶ÅéPC及EEPROM和SRAM或 I/O等°O憶Åé³]定及檢µø 6-43 6-4-4 AVR的I/O埠¿é出ÅÜ化»x°O存檔(Log File)及 ¿é入激發(Stimuli)³]定檔¿é入 6-45 6-5 AVR的程式°£¿ù執¦æ斷ÂI(Breakpoint)³]定和單步 ¡@¡@¡@¡@¡@ 執¦æ°lÂÜ(Trace)控制 6-48 6-5-1 AVR的程式°£¿ù執¦æ«³](Reset) 6-48 6-5-2 AVR的程式斷ÂI(Brdakpoint)³]定 6-49 6-6 AVR的程式執¦æ(Go)¡A中斷執¦æ(Break)及°lÂÜ ¡@¡@¡@¡@¡@ (Trace)等³]定控制 6-51 6-7 AVR的¸ê料燒¿ý¡BŪ取¡BÅçÃÒ及編¿è 6-55 6-7-1 檔案的Ū取¡B編¿è和修改 6-56 6-7-2 AVR程式或EEPROM的燒¿ý¡BŪ取¡B以及 ¡@¡@¡@¡@¡@ ÅçÃÒ¡B清洗和檢測空白 6-62 7 模擬亂數ÅÜ化¸ê料¿é出及LED°}列控制應用 7-1 實Åç二十三¡GAVR模擬亂數產生ÅÜ化¸ê料依序 ¿é出之星星燈控制 7-2 7-2 實Åç二十四¡G8*8 LED°}列掃描Åã示控制應用 7-7 8 AVR的LCD字形ÅX動 8-1 LCDÅã示器L2021介±模組 8-1 8-1-1 LCDÅã示器介±模組簡介 8-1 8-1-2 LCDÅã示器介±模組接¸}»¡明 8-5 8-1-3 內³¡¹B作»¡明 8-6 8-1-4 指令¹B作控制(INSTRUCTION) 8-8 8-1-5 介±¹q¸ô 8-10 8-1-6 LCDM 2021之四位元界±控制 8-13 8-2 實Åç二十五¡G以AVR AT90S2313或85185作 LCDÅã示字形之¸Ñ»¡器實Åç 8-17
¥b¾ÉÅé²£·~·§½×
¾÷¾¹¾Ç²ß¡G±q²z½×¨ì¹ê
¥b¾ÉÅé¿nÅé¹q¸ô»sµ{§Þ
LabVIEWµ{¦¡³]
¹q¤l¾Ç(°ò¦·§©À)(
¬Ý¹Ï¾ÇC»y¨¥»P¹Bºâ«ä
¹q¸£ºô»Úºô¸ô¡G¥Ñ¤W¦Ó
LabVIEW»P·P´ú
¹Ï¸Ñ¹qºÏ¾Ç¡G±q·§©À¨ì
¶W¹Ï¸Ñ¹q°Ê¨®ªººc³y»P
¬°¤F«O»Ù±zªºÅv¯q¡A·sµ·¸ôºô¸ô®Ñ©±©ÒÁʶRªº°Ó«~§¡¨É¦³¨ì³f¤C¤ÑªºÅ²½à´Á¡]§t¨Ò°²¤é¡^¡C°h¦^¤§°Ó«~¥²¶·©óŲ½à´Á¤º±H¦^¡]¥H¶lÂW©Î¦¬°õÁp¬°¾Ì¡^¡A¥B°Ó«~¥²¶·¬O¥þ·sª¬ºA»P§¹¾ã¥]¸Ë(°Ó«~¡Bªþ¥ó¡B¤º¥~¥]¸Ë¡BÀH³f¤å¥ó¡BÃØ«~µ¥)¡A§_«h®¤¤£±µ¨ü°h³f¡C