《ATmega16單片機C語言程式設計經典實例》

《ATmega16單片機C語言程式設計經典實例》

ATmega16單片機C語言程式設計經典實例》


GITHUB: https://github.com/jash-git/Jash-good-idea-20220101-001/tree/main/HW/Arduino


封面; 1

版權頁; 2

前言; 3

目錄; 5

專案一 單片機及最小應用系統; 8

    任務1 認識單片機; 8

    任務2 AVR列單片機的識讀; 13

    任務3 單片機最小系統及系統控制; 23

    任務4 自製下載線; 30

專案二 單片機系統開發軟體的應用; 33

    任務1 CVAVR編譯軟體的使用; 33

    任務2 AVR Studio集成開發軟體的使用; 41

    任務3 PonyProg2000下載軟體的使用; 46

    任務4 Proteus 7.10模擬軟體的使用; 48

專案三 AVR單片機C語言程式設計基礎; 57

    任務1 C語言程式組成的識讀; 57

    任務2 運算子和運算式; 67

    任務3 程式結構及流程控制; 74

    任務4 陣列與指標; 84

    任務5 函數與編譯預處理; 91

專案四 LED廣告燈的設計; 99

    任務1 LED控制原理認知; 99

    任務2 閃燈廣告燈的設計; 105

    任務3 流水廣告燈的設計; 109

    任務4 拉幕式與閉幕式廣告燈的設計; 113

    任務5 複雜廣告燈的設計; 117

專案五 按鍵控制與LED數碼管顯示; 122

    任務1 按鍵控制原理認知; 122

    任務2 LED數碼管顯示原理認知; 124

    任務3 單個LED數碼管顯示設計; 128

    任務4 多個LED數碼管顯示設計; 132

    任務5 條形LED花樣選擇顯示; 138

    任務6 查詢式按鍵設計; 141

    任務7 LED數碼管顯示矩陣鍵盤按鍵的設計; 144

    任務8 矩陣鍵盤按鍵控制LED+條形LED的設計; 151

    任務9 簡單撥號鍵盤的設計; 158

專案六 中斷控制的應用設計; 165

    任務1 中斷控制原理; 165

    任務2 帶中斷控制的LED花樣燈; 172

    任務3 採用外中斷控制的條形LED彩燈設計; 175

    任務4 採用兩個外中斷的條形LED彩燈控制; 179

    任務5 採用兩個外中斷實現LED鍵控移位; 183

    任務6 採用外中斷實現計數; 186

    任務7 採用外中斷進行計數和清零控制; 191

專案七 計時器/計數器控制的應用設計; 196

    任務1 計時器/計數器控制原理認知; 196

    任務2 T/C0實現簡單計數; 212

    任務3 T/C0實現流水燈控制; 216

    任務4 T/C0CTC模式輸出方波; 219

    任務5 T/C0的快速PWM模式實現調光控制; 222

    任務6 T/C0的相位修正PWM模式實現調光控制; 227

    任務7 T/C1計數功能實現數控分頻; 230

    任務8 T/C1實現預置值計時器的設計; 234

    任務9 T/C1CTC模式實現LED滾動閃爍控制; 240

    任務10 T/C1的快速PWM模式輸出占空比可調方波; 244

    任務11 T/C1的相位修改PWM模式輸出占空比可調方波; 249

    任務12 T/C1的輸入捕捉模式測量低頻脈衝週期; 253

    任務13 T/C2實現簡單門鈴控制; 257

    任務14 T/C2的非同步計數功能實現59s計時器; 261

專案八 單片機串列通信設計; 267

    任務1 單片機串列通信原理認知; 267

    任務2 甲機通過串口控制乙機LED顯示狀態; 278

    任務3 甲機通過串口控制乙機計時; 282

    任務4 單片機雙機通信; 290

    任務5 單片機自發自收資料; 298

專案九 LED點陣顯示器的設計; 305

    任務1 LED點陣顯示器控制原理認知; 305

    任務2 一個5×7 LED點陣字元顯示; 307

    任務3 一個8×8 LED點陣字串顯示; 310

    任務4 兩個8×8 LED點陣字串顯示; 317

    任務5 兩個8×8 LED點陣滾動顯示; 324

    任務6 一個16×16 LED點陣漢字顯示; 328

    任務7 一個16×16 LED點陣漢字移位元顯示; 334

    任務8 兩個16×16 LED點陣漢字顯示; 337

    任務9 兩個16×16 LED點陣漢字分批顯示; 343

    任務10 兩個16×16 LED點陣漢字移位元顯示; 347

專案十 LCD顯示設計; 352

    任務1 LCD顯示原理認知; 352

    任務2 字元式LCD顯示字串; 358

    任務3 字元式LCD顯示漢字; 361

    任務4 字元式LCD顯示可調數位鐘; 367

    任務5 字元式LCD滾動顯示; 373

    任務6 字元式LCD移位元顯示; 376

項目十一 內置模擬比較器和A/D轉換器的應用設計; 382

    任務1 內置類比比較器和A/D轉換器; 382

    任務2 系統電源電壓監測器的設計; 392

    任務3 低壓報警器的設計; 395

    任務4 簡易電壓表的設計; 398

    任務5 電壓監控器的設計; 403

專案十二 SPI串列匯流排的應用; 408

    任務1 SPI匯流排基礎知識認知; 408

    任務2 74LS164驅動數碼管顯示可調數位鐘; 412

    任務3 74HC595驅動1位元數碼管顯示; 420

    任務4 74HC595驅動數碼管動態顯示; 423

    任務5 74HC595驅動8位元數碼管靜態顯示; 428

    任務6 MAX7219驅動數碼管動態顯示; 434

專案十三 TWI串列匯流排的應用; 442

    任務1 TWI匯流排基礎知識; 442

    任務2 24C256開啟次數讀/寫控制; 451

    任務3 PCF857驅動8位元數碼管顯示; 458

專案十四 D/A轉換器的應用; 463

    任務1 DAC0832 D/A轉換; 463

    任務2 TLC5615 D/A轉換; 468

    任務3 MAX515 D/A轉換; 474

專案十五 綜合應用設計; 478

    任務1 籃球計分器的設計; 478

    任務2 按鍵選播電子音樂; 488

    任務3 DS1302時鐘日曆的設計; 496

附錄A Proteus常用快速鍵; 507

附錄B CodeVisionAVR編譯器常用庫函數簡介; 508

參考文獻; 525

反侵權盜版聲明; 526

ATmega16單片機C語言程式設計經典實例》; 527

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *