單片機需要的c語言知識,單片機需要的c語言知識

本文目錄一覽:

學單片機需要精通c語言嗎

需要基本的c語言知識,單片機的話需要模電數電做基礎,最好再學會微機原理,能夠更好的了解單片機的內部結構,其實這些都不是最重要的

最重要的是你有一個克服困難的決心

有的人沒有上大學也能很好的學好單片機

沒有基礎可以一邊學一邊補基礎

那裡不懂補那裡

自學是一個非常痛苦的過程

但當你有所收穫的時侯那種快樂也是無法描述的

學單片機需要什麼基礎知識?

學單片機需要學習數字和模擬電子技術等基礎知識,還要有一定的C語言編程能力。

學習初期可以先買一個開發板,先學會單片機開發的環境搭建,主要是單片機集成開發軟件keil的配置,軟件項目的建立,程序的編譯和燒寫,先把點亮LED燈,流水燈和控制蜂鳴器這些最基本的程序完整的實現一遍。

之後可以把LED數碼管顯示,按鍵信號採集,去抖動,串口與PC機通信等例子的程序完整的編寫一遍,並且在開發板上把程序運行一下。

這時你已經對單片機開發有了初步了解了,已經邁出了單片機學習的第一步了。

學習單片機軟件方面需要的基礎知識:

軟件方面需要會寫簡單的C語言程序,雖然說單片機編程也可以使用彙編語言,但C語言在使用的方便性和可移植性上要比彙編語言好很多,所以初學者可以越過彙編語言,而直接學習C語言的單片機編程。

單片機中常用到的C語言是什麼,主要用到哪些。

只需要幾個最常見的語句:if、for、while。

對於單片機的學習,要多動手實踐,多自己琢磨,可以用一個開發板,類似於吳(鑒 鷹)開發板。

單片機c語言編程時會用到哪些常用的C語

關鍵字

用 途

說 明

auto

存儲種類說明

用以說明局部變量,缺省值為此

break

程序語句

退出最內層循環

case

程序語句

Switch語句中的選擇項

char

數據類型說明

單字節整型數或字符型數據

const

存儲類型說明

在程序執行過程中不可更改的常量值

continue

程序語句

轉向下一次循環

default

程序語句

Switch語句中的失敗選擇項

do

程序語句

構成do..while循環結構

double

數據類型說明

雙精度浮點數

else

程序語句

構成if..else選擇結構

enum

數據類型說明

枚舉

extern

存儲種類說明

在其他程序模塊中說明了的全局變量

flost

數據類型說明

單精度浮點數

for

程序語句

構成for循環結構

goto

程序語句

構成goto轉移結構

if

程序語句

構成if..else選擇結構

int

數據類型說明

基本整型數

long

數據類型說明

長整型數

register

存儲種類說明

使用CPU內部寄存的變量

return

程序語句

函數返回

short

數據類型說明

短整型數

signed

數據類型說明

有符號數,二進制數據的最高位為符號位

sizeof

運算符

計算表達式或數據類型的字節數

static

存儲種類說明

靜態變量

struct

數據類型說明

結構類型數據

swicth

程序語句

構成switch選擇結構

typedef

數據類型說明

重新進行數據類型定義

union

數據類型說明

聯合類型數據

unsigned

數據類型說明

無符號數數據

void

數據類型說明

無類型數據

volatile

數據類型說明

該變量在程序執行中可被隱含地改變

while

程序語句

構成while和do..while循環結構

附表1-1 ANSIC標準關鍵字

關鍵字

用 途

說 明

bit

位標量聲明

聲明一個位標量或位類型的函數

sbit

位標量聲明

聲明一個可位尋址變量

Sfr

特殊功能寄存器聲明

聲明一個特殊功能寄存器

Sfr16

特殊功能寄存器聲明

聲明一個16位的特殊功能寄存器

data

存儲器類型說明

直接尋址的內部數據存儲器

bdata

存儲器類型說明

可位尋址的內部數據存儲器

idata

存儲器類型說明

間接尋址的內部數據存儲器

pdata

存儲器類型說明

分頁尋址的外部數據存儲器

xdata

存儲器類型說明

外部數據存儲器

code

存儲器類型說明

程序存儲器

interrupt

中斷函數說明

定義一個中斷函數

reentrant

再入函數說明

定義一個再入函數

using

寄存器組定義

定義芯片的工作寄存器

附表1-2 C51編譯器的擴展關鍵字

附錄二 AT89C51特殊功能寄存器列表(適用於同一架構的芯片)

符 號

地 址

注 釋

*ACC

E0H

累加器

*B

F0H

乘法寄存器

*PSW

D0H

程序狀態字

SP

81H

堆棧指針

DPL

82H

數據存儲器指針低8位

DPH

83H

數據存儲器指針高8位

*IE

A8H

中斷允許控制器

*IP

D8H

中斷優先控制器

*P0

80H

端口0

*P1

90H

端口1

*P2

A0H

端口2

*P3

B0H

端口3

PCON

87H

電源控制及波特率選擇

*SCON

98H

串行口控制器

SBUF

99H

串行數據緩衝器

*TCON

88H

定時器控制

TMOD

89H

定時器方式選擇

TL0

8AH

定時器0低8位

TL1

8BH

定時器1低8位

TH0

8CH

定時器0低8位

TH1

8DH

定時器1高8位

帶*號的特殊功能寄存器都是可以位尋址的寄存器

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/248639.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 13:28
下一篇 2024-12-12 13:28

相關推薦

  • 單片機打印函數

    單片機打印是指通過串口或並口將一些數據打印到終端設備上。在單片機應用中,打印非常重要。正確的打印數據可以讓我們知道單片機運行的狀態,方便我們進行調試;錯誤的打印數據可以幫助我們快速…

    編程 2025-04-29
  • AES加密解密算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES算法,並對實現過程進…

    編程 2025-04-29
  • 學習Python對學習C語言有幫助嗎?

    Python和C語言是兩種非常受歡迎的編程語言,在程序開發中都扮演着非常重要的角色。那麼,學習Python對學習C語言有幫助嗎?答案是肯定的。在本文中,我們將從多個角度探討Pyth…

    編程 2025-04-29
  • Python被稱為膠水語言

    Python作為一種跨平台的解釋性高級語言,最大的特點是被稱為”膠水語言”。 一、簡單易學 Python的語法簡單易學,更加人性化,這使得它成為了初學者的入…

    編程 2025-04-29
  • OpenJudge答案1.6的C語言實現

    本文將從多個方面詳細闡述OpenJudge答案1.6在C語言中的實現方法,幫助初學者更好地學習和理解。 一、需求概述 OpenJudge答案1.6的要求是,輸入兩個整數a和b,輸出…

    編程 2025-04-29
  • Python按位運算符和C語言

    本文將從多個方面詳細闡述Python按位運算符和C語言的相關內容,並給出相應的代碼示例。 一、概述 Python是一種動態的、面向對象的編程語言,其按位運算符是用於按位操作的運算符…

    編程 2025-04-29
  • Python語言由荷蘭人為中心的全能編程開發工程師

    Python語言是一種高級語言,很多編程開發工程師都喜歡使用Python語言進行開發。Python語言的創始人是荷蘭人Guido van Rossum,他在1989年聖誕節期間開始…

    編程 2025-04-28
  • Python語言設計基礎第2版PDF

    Python語言設計基礎第2版PDF是一本介紹Python編程語言的經典教材。本篇文章將從多個方面對該教材進行詳細的闡述和介紹。 一、基礎知識 本教材中介紹了Python編程語言的…

    編程 2025-04-28
  • Python語言實現人名最多數統計

    本文將從幾個方面詳細介紹Python語言實現人名最多數統計的方法和應用。 一、Python實現人名最多數統計的基礎 1、首先,我們需要了解Python語言的一些基礎知識,如列表、字…

    編程 2025-04-28
  • Python作為中心語言,在編程中取代C語言的優勢和挑戰

    Python一直以其簡單易懂的語法和高效的編碼環境而著名。然而,它最近的發展趨勢表明Python的使用範圍已經從腳本語言擴展到了從Web應用到機器學習等廣泛的開發領域。與此同時,C…

    編程 2025-04-28

發表回復

登錄後才能評論