历史上的今天

今天是:2024年11月13日(星期三)

2019年11月13日 | PIC18系列家族指令快速索引

发布者:dst2015 来源: 51hei关键字:PIC18系列  家族指令  快速索引 手机看文章 扫描二维码
随时随地手机看文章

PIC指令

指令

指令說明

影響旗號

參考說明頁數

位元組運算指令 (BYTE-ORIENTED FILE REGISTER OPERATIONS)

ADDWF

f, d, a

將W與f做相加,並將結果放至W或f。

C, DC, Z, OV, N

7

ADDWFC

f, d, a

將W與C做相加,並將結果放至W或f。

C, DC, Z, OV, N

10

ANDWF

f, d, a

將W與f做AND運算,並將結果放至W或f。

Z, N

14

CLRF

f, a

將f內的值都清為0。

Z

31

COMF

f, d, a

將f內的值取補數,並將結果放至W或f。

Z, N

33

CPFSEQ

f, a

若f與W的值相等,則跳過下一個指令。

35

CPFSGT

f, a

若f大於W,則跳過下一個指令。

36

CPFSLT

f, a

若f小於W,則跳過下一個指令。

37

DECF

f, d, a

將f內的值減1,並將結果放至W或f。

C, DC, Z, OV, N

40

DECFSZ

f, d, a

將f內的值減1,若為0則跳過下一個指令,並將結果放至W或f。

43

DCFSNZ

f, d, a

將f內的值減1,若不為0則跳過下一個指令,並將結果放至W或f。

45

INCF

f, d, a

將f內的值加1,並將結果放至W或f。

C, DC, Z, OV, N

48

INCFSZ

f, d, a

將f內的值加1,若為0則跳過下一個指令,並將結果放至W或f。

51

INFSNZ

f, d, a

將f內的值加1,若不為0則跳過下一個指令,並將結果放至W或f。

53

IORWF

f, d, a

將W與f做OR運算,並將結果放至W或f。

Z, N

57

MOVF

f, d, a

將f內的值搬到W或f。

Z, N

61

MOVFF

內的資料搬到中。

63

MOVWF

f, a

將W內的值搬到f中。

66

MULWF

f, a

將W與f做相乘。

68

NEGF

f, a

將f內的值取2的補數。

C, DC, Z, OV, N

70

RLCF

f, d, a

將f內的值與C一起做左移動作,並將結果放至W或f。

C, Z, N

80

RLNCF

f, d, a

將f內的值做左移動作,並將結果放至W或f。

Z, N

82

RRCF

f, d, a

將f內的值與C一起做右移動作,並將結果放至W或f。

C, Z, N

84

RRNCF

f, d, a

將f內的值做右移動作,並將結果放至W或f。

Z, N

86

SETF

f, a

將f內的值設為0xFF。

88

SUBFWB

f, d, a

將W內的值減掉C及f,並將結果放至W或f。

C, DC, Z, OV, N

90

SUBWF

f, d, a

將W內的值減掉f,並將結果放至W或f。

C, DC, Z, OV, N

94

SUBWFB

f, d, a

將f內的值減掉W及C,並將結果放至W或f。

C, DC, Z, OV, N

96

SWAPF

f, d, a

將f內的值高4位元與低4位元對調,並將結果放至W或f。

98

TSTFSZ

f, a

測試f內的值是否等於0,若為0則跳過下一個指令。

105

XORWF

f, d, a

將W與f做XOR運算,並將結果放至W或f。

Z, N

108

位元運算指令 (BIT-ORIENTED FILE REGISTER OPERATIONS)

BCF

f, b, a

將f內某個位元 (Bit) 設定為0。

17

BSF

f, b, a

將f內某個位元 (Bit) 設定為1。

24

BTFSC

f, b, a

測試f內某個位元 (Bit) 的值是否等於0,若為0則跳過下一個指令。

25

BTFSS

f, b, a

測試f內某個位元 (Bit) 的值是否等於1,若為1則跳過下一個指令。

26

BTG

f, d, a

將f內某個位元 (Bit) 做NOT運算。

27

Note:

Ff表示暫存器。

Fd表示資料存放的地方,d = 0表示存放在W累加器;d = 1表示存放在f暫存器。

Fb表示暫存器的第b個位元。


Fk表示8位元常數。

Fa表示資料存放在那個記憶體位置,a = 0表示放在目前的記憶體位置;a = 1表示放在BSR暫存器內所指定的記憶體位置。

Fn表示程式記憶體的位址。









PIC18系列家族指令快速索引 (續)

指令

指令說明

影響旗號

參考說明頁數

程式流程控制指令 (CONTROL OPERATIONS)

BC

n

若C = 1則跳到位址n去。

16

BN

n

若N = 1則跳到位址n去。

18

BNC

n

若C = 0則跳到位址n去。

19

BNN

n

若N = 0則跳到位址n去。

20

BNOV

n

若OV = 0則跳到位址n去。

21

BNZ

n

若Z = 0則跳到位址n去。

22

BOV

n

若OV = 1則跳到位址n去。

28

BRA

n

無條件跳到位址n去 () 。

23

BZ

n

若Z = 1則跳到位址n去。

29

CALL

n, s

將下一個指令的PC值存到堆疊的最上層,並跳到位址n去 () 。

30

CLRWDT


將看門狗計時器清為0。

32

DAW


將W內的值做BCD調整。

38

GOTO

n

無條件跳到位址n去 () 。

47

NOP


空指令。

72

POP


將堆疊最上層的值取出來。

73

PUSH


將下一個指令的PC值存到堆疊的最上層。

74

RCALL

n

將下一個指令的PC值存到堆疊的最上層,並跳到位址n去 () 。

75

RESET


利用軟體將系統重置。

76

RETFIE

s

由中斷副程式返回主程式,並將堆疊最上層的值取出來放至PC中,而主程式由目前PC值開始執行。

77

RETURN

s

由副程式返回主程式,並將堆疊最上層的值取出來放至PC中,而主程式由目前PC值開始執行。

79

SLEEP


進入睡眠狀態。

89

Note:

Ff表示暫存器。

Fd表示資料存放的地方,d = 0表示存放在W累加器;d = 1表示存放在f暫存器。

Fb表示暫存器的第b個位元。


Fk表示8位元常數。

Fn表示程式記憶體的位址。

Fa表示資料存放在那個記憶體位置,a = 0表示放在目前的記憶體位置;a = 1表示放在BSR暫存器內所指定的記憶體位置。








 


PIC18系列家族指令快速索引 (續)

指令

指令說明

影響旗號

參考說明頁數

立即常數定址 (LITERAL OPERATIONS)

ADDLW

k

將常數k與W做相加。

C, DC, Z, OV, N

4

ANDLW

k

將常數k與W做AND運算。

Z, N

12

IORLW

k

將常數k與W做OR運算。

Z, N

55

LFSR

f, k

將常數k (12-bit) 搬到第f個FSR暫存器去 (f = 0 ~ 2 ) 。

59

MOVLB

k

將常數k搬到BSR暫存器去。

64

MOVLW

k

將常數k搬到W去。

65

MULLW

k

將常數k與W做乘法運算。

67

RETLW

k

將堆疊最上層的值取出來放至PC中,並將W的值設為k () ,而主程式由目前PC值開始執行。

78

SUBLW

k

將常數k與W做減法。

C, DC, Z, OV, N

92

XORLW

k

將常數k與W做XOR運算。

Z, N

106

程式記憶體讀寫指令 (DATA MEMORY <-> PROGRAM MEMORY OPERATIONS)

TBLRD*


以TBLPTRH與TBLPTRL記錄器之內容為位址指標,讀取程式記憶體之內容至TABLAT暫存器中。

99

TBLRD*+


以TBLPTRH與TBLPTRL記錄器之內容為位址指標,讀取程式記憶體之內容至TABLAT暫存器中,然後將位址指標自動加1。

99

TBLRD*-


以TBLPTRH與TBLPTRL記錄器之內容為位址指標,讀取程式記憶體之內容至TABLAT暫存器中,然後將位址指標自動減1。

99

TBLRD+*


先將TBLPTRH與TBLPTRL記錄器先加1,然後以TBLPTRH與TBLPTRL記錄器之內容為位址指標,讀取程式記憶體之內容至TABLAT暫存器中。

99

TBLWT*


以TBLPTRH與TBLPTRL記錄器之內容為位址指標,將TABLAT暫存器內的值寫入程式記憶體中。

102

TBLWT*+


以TBLPTRH與TBLPTRL記錄器之內容為位址指標,將TABLAT暫存器內的值寫入程式記憶體中,然後將位址指標自動加1。

102

TBLWT*-


以TBLPTRH與TBLPTRL記錄器之內容為位址指標,將TABLAT暫存器內的值寫入程式記憶體中,然後將位址指標自動減1。

102

TBLWT+*


先將TBLPTRH與TBLPTRL記錄器先加1,然後以TBLPTRH與TBLPTRL記錄器之內容為位址指標,將TABLAT暫存器內的值寫入程式記憶體中。

102

Note:

Ff表示暫存器。

Fd表示資料存放的地方,d = 0表示存放在W累加器;d = 1表示存放在f暫存器。

Fb表示暫存器的第b個位元。


Fk表示8位元常數。

Fn表示程式記憶體的位址。

Fa表示資料存放在那個記憶體位置,a = 0表示放在目前的記憶體位置;a = 1表示放在BSR暫存器內所指定的記憶體位置。








 


指令名稱:ADDLW

原    意:ADD literal to W

語    法:[label]  ADDLW   k

運 算 元:

運算說明:(W) + K -> W

影響旗標:N, OV, C, DC, Z

指令說明:W累加器中的值與k值相加,並將運算結果放回W累加器中。

類    別:立即常數定址法。

組    別:數學運算加法指令。

範例一:

ADDLW   0x11     ;將0x11的值與W累加器相加,結果放回W累加器中。

執行前:

W = 0x1F     ;假設執行前W累加器的值為0x1F。
N = OV = C = DC = Z = 0     ;假設執行前狀態暫存器的值皆為0。

執行後:

W = 0x30     ;執行後W累加器的值為0x30。
N = OV = C = 0,DC = 1     ;半進位旗標等於1,因為低四位元相加之後有進位的情形發生,因此半進位旗標DC等於1其餘旗標狀態不變。


範例二:

ADDLW   0x11     ;將0x11的值與W累加器相加,結果放回W累加器中。

執行前:

W = 0x7F     ;假設執行前W累加器的值為0x7F。

N = OV = C = DC = Z = 0     ;假設執行前狀態暫存器的值皆為0。

執行後:

W = 0x90     ;執行後W累加器的值為0x90。

N = OV = DC = 1,Z = C = 0     ;半進位旗標DC等於1,因為低四位元相加後有進位情形發生;溢位旗標OV等於1,因為兩數相加後第7個位元有進位情形發生;負號旗標N等於1,因為兩數 相加後結果大於127,因為使用2的補數作運算,所以結果大於127便算是負號。

範例三:

ADDLW   0x11     ;將0x11的值與W累加器相加,結果放回W累加器中。

執行前:

W = 0x9F     ;假設執行前W累加器的值為0x9F。

N = OV = C = DC = Z = 0     ;假設執行前狀態暫存器的值皆為0。

執行後:

W = 0xB0     ;執行後W累加器的值為0xB0。

N = DC = 1,OV = Z = C = 0     ;半進位旗標DC等於1,因為低四位元相加後有進位情形發生;負號旗標N等於1,因為使用2的補數作運算,因此兩數相加後結果大於127,N等於1。範例 二與範例三之不同是在於範例二在相加前第七個位元為0,相加後第七個位元為1,因此溢位旗標OV等於1 (根據Microchip的定義) ,而範例三不同的是在相加前第七個位元為1,相加後第七個位元為1,因此溢位旗標OV不變,依然是等於0。

範例四:

ADDLW   0x01     ;將0x01的值與W累加器相加,結果放回W累加器中。

執行前:

W = 0xFF     ;假設執行前W累加器的值為0xFF。

N = OV = C = DC = Z = 0     ;假設執行前狀態暫存器的值皆為0。

執行後:

W = 0x00     ;執行後W累加器的值為0x00,因為累加器為8 bits的暫存器,因此相加後結果超過255 (0xFF) 便會歸0。

N = OV = 0,C = DC = Z = 1     ;由於兩數相加後結果超過255 (0xFF) ,因此進位旗標C會被設定為1;又相加後W累加器的值為0x00,因此零位旗標Z會被設定為1;又由於低四位元相加後有進位情形發生,因此半進位旗標DC 被設定為1。


指令名稱:ADDWF

原    意:ADD W to f

語    法:[label]  ADDWF   f , d, a

運 算 元:

運算說明:(W) + (f) -> dest

影響旗標:N, OV, C, DC, Z

指 令說明:W累加器中的值與f暫存器中的值相加,並將運算結果放回 ’d’ 所指定的暫存器中。若d = 0,則運算後的結果放到W累加器中;若d = 1,則運算後的結果放到f暫存器中,存放運算結果的暫存器若是存放到W累加器中,我們也可以寫成W (表W累加器) ;若存放運算結果的暫存器若是存放到暫存器中,我們也可以寫成F (表暫存器) 。若a = 0,則運算後的結果放到目前RAM的位址中;若a = 1,則運算後的結果放到BSR暫存器所指定的RAM位址中。

類    別:資料轉移指令。

組    別:數學運算加法指令。

範例一:

ADDWF   REG, 0, 0     ;將暫存器 (REG) 的值與W累加器的值相加,結果放回W累加器中。


執行前:

W = 0x11     ;假設執行前W累加器的值為0x11。

REG = 0x0F     ;假設執行前REG暫存器的值為0x0F。

N = OV = C = DC = Z = 0     ;假設執行前狀態暫存器的值皆為0。

執行後:

W = 0x20

REG = 0x0F

N = OV = C = Z = 0,DC = 1

Ø結果放回W累加器中。

範例二:

ADDWF   REG, W, 0

執行前:

W = 0x17

REG = 0xC2

N = OV = C = DC = Z = 0

執行後:

W = 0xD9

REG = 0xC2

N = OV = C = DC = Z = 0

Ø結果放回W累加器中。

範例三:

ADDWF   REG, F, 1 (if BSR = 0x01)

執行前:

W = 0x17

REG = 0xC2

N = OV = C = DC = Z = 0

執行後:

W = 0x17

REG = 0xC2

RAM位址100 = 0xD9

N = OV = C = DC = Z = 0

Ø結果放在BSR暫存器所指定的位址中。

範例四:

ADDWF   REG, W

執行前:

W = 0x17

REG = 0xC2

N = OV = C = DC = Z = 0

執行後:

W = 0xD9

REG = 0xC2

N = OV = C = DC = Z = 0

Ø結果放回W累加器中。

範例五:

ADDWF   REG, F

執行前:

W = 0x01

REG = 0x10

N = OV = C = DC = Z = 0

執行後:

W = 0x01

REG = 0x11

N = OV = C = DC = Z = 0

Ø結果放回暫存器中。


指令名稱:ADDWFC

原    意:ADD W and Carry bit to f

語    法:[label]  ADDWFC   f , d, a

運 算 元:

運算說明:(W) + (f) + (c) -> dest

影響旗標:N, OV, C, DC, Z

指 令說明:W累加器中的值與f暫存器中的值與進位旗標三者相加,並將運算結果放回 ’d’ 所指定的暫存器中。若d = 0,則運算後的結果放到W累加器中;若d = 1,則運算後的結果放到f暫存器中,存放運算結果的暫存器若是存放到W累加器中,我們也可以寫成W (表W累加器) ;若存放運算結果的暫存器若是存放到暫存器中,我們也可以寫成F (表暫存器) 。若a = 0,則運算後的結果放到f所指定的暫存器中;若a = 1為不存在狀態。

類    別:資料轉移指令。

組    別:數學運算加法指令。

範例一:

ADDWFC   REG, 0, 1

執行前:

W = 0x4D

REG = 0x02

Carry=1

N = OV = DC = Z = 0

執行後:

W = 0x50

REG = 0x02

Carry=0

N = OV = DC = Z = 0

Ø結果放回W累加器中,進位旗標C = 0。

範例二:

ADDWFC   REG, F, 0

執行前:

W = 0x4D

REG = 0x02

Carry=1

N = OV = DC = Z = 0

執行後:

W = 0x4D

REG = 0x50

Carry=0

N = OV = DC = Z = 0

Ø結果放回暫存器中,進位旗標C = 0。


指令名稱:ANDLW

原    意:AND literal with W

語    法:[label]  ANDLW   k

運 算 元:

運算說明:(W) .AND. k -> W

影響旗標:N, Z

指令說明:W累加器中的值與k值做邏輯的AND運算,並將運算結果放回W累加器中。

類    別:立即常數定址法。

組    別:邏輯運算AND指令。

範例一:

ANDLW   0x5F

執行前:

W = 0xA3 = 10100011

N = Z = 0

執行後:

W = 0x03

N = Z = 0


範例二:

ANDLW   0x00

執行前:

W = 0x5F = 01011111

N = Z = 0

執行後:

W = 0x00

N = 0;Z=1


指令名稱:ANDWF

原    意:AND W with f

語    法:[label]  ANDWF   f , d, a

運 算 元:

運算說明:(W) .AND. (f) -> dest

影響旗標:N, Z

指 令說明:W累加器中的值與f暫存器中的值做邏輯AND運算,並將運算結果放回 ’d’ 所指定的暫存器中。若d = 0,則運算後的結果放到W累加器中;若d = 1,則運算後的結果放到f暫存器中,存放運算結果的暫存器若是存放到W累加器中,我們也可以寫成W (表W累加器) ;若存放運算結果的暫存器若是存放到暫存器中,我們也可以寫成F (表暫存器) 。若a = 0,則運算後的結果放到f所指定的暫存器中;若a = 1不存在 (系統預設值) 。

類    別:邏輯運算指令。

組    別:邏輯運算AND指令。

範例一:

ANDWF   REG, 0, 0

執行前:

W = 0x17

REG = 0xC2

N = Z = 0


執行後:

W = 0x02

REG = 0xC2

N = Z = 0

Ø結果放回W累加器中。

範例二:

ANDWF   REG, F

執行前:

W = 0x01

REG = 0xFF

N = Z = 0

執行後:

W = 0x01

REG = 0x01

N = Z = 0

Ø結果放回暫存器中。


指令名稱:BC

原    意:Branch if Carry

語    法:[label]  BC   label name

運 算 元:

運算說明:If carry bit is ‘1’, jump to label name.

影響旗標:無

指令說明:當狀態暫存器中的進位旗標C等於1時,就跳到指定的位址。

類    別:程式流程控制指令。

組    別:比較跳躍指令。

範例一:

Here  BC   Lab1     ;若是進位旗標C等於1就跳到Lab1的位址,若是進位旗標C不等於1則程式往下執行。

執行前:

PC = 在目前Here的位址

C = 1

執行後:

PC = 跳到Lab1的位址

C = 1


指令名稱:BCF

原    意:Bit Clear f

語    法:[label]  BCF   f, b

運 算 元:

運算說明:0 -> f < b >

影響旗標:無

指令說明:將暫存器中的某一個位元清除為0。

類    別:位元定址指令。

組    別:單一位元清除指令。

範例一:

BCF   REG,2     ;將REG暫存器的第2個位元清除為0。

執行前:

REG = 11111111 = 0xFF     ;REG暫存器的值為0xFF。

執行後:

REG = 11111011 = 0xFB     ;將REG暫存器的第2個位元清除為0,從右邊算起為第0個位元、第1個位元、第2個位元,以下依此類推。


指令名稱:BN

原    意:Branch if Negative

語    法:[label]  BN   Label name

運 算 元:

運算說明:If negative bit is ‘1’, jump to label name.

影響旗標:無

指令說明:當狀態暫存器中的負號旗標N等於1時,就跳到指定的位址。

類    別:程式流程控制指令。

組    別:比較跳躍指令。

範例一:

Here  BN   Lab1     ;若是負號旗標N等於1就跳到Lab1的位址,若是負號旗標N不等於1則程式往下執行。

執行前:

PC = 在目前Here的位址

N = 1

執行後:

PC = 跳到Lab1的位址

N = 1


指令名稱:BNC

原    意:Branch if Not Carry

語    法:[label]  BNC   label name

運 算 元:

運算說明:If carry bit is ‘0’, jump to label name.

[1] [2] [3] [4] [5] [6] [7]
关键字:PIC18系列  家族指令  快速索引 引用地址:PIC18系列家族指令快速索引

上一篇:超声波PIC单片机C程序
下一篇:最后一页

推荐阅读

全球电子元器件分销商 Digi-Key Electronics 推出了全新的设计工具 DK IoT Studio™。DK IoT Studio 是一个集成开发环境 (IDE),旨在为开发人员和提供商提供一种极致简单的方法来构建物联网解决方案。DK IoT Studio 可在数分钟之内完成从概念到原型的开发,而无需编写任何代码 这一全新的工具由 Digi-Key Electronics 与 Atmosphere IoT...
电气噪声可能是设计师最不想碰到的噩梦,从而会导致系统异常运行,甚至导致难以跟踪的故障。在传统的CMOS逻辑中,噪声会导致信号振荡,从而导致更高的电流消耗甚至产生信号错误。这些错误最终会导致系统故障,严重时可能需要更改设计。许多设计工程师通过使用外部基于输入的施密特触发器输入逻辑缓冲器来消除信号噪声,施密特触发器通过使用两个阈值进行信...
11月12日消息 今天 Counterpoint Research 发文分析了苹果 iPhone 新机移除充电器的做法,并表示安卓厂商很难效仿苹果这样做。苹果将不再提供充电器和耳机在大多数厂商都将快充充电器作为标配的同时,苹果独树一帜,移除了新款 iPhone 12系列以及 iPhone XR、iPhone 11和 iPhone SE 的充电器和耳机。苹果移除配件的原因苹果在发布会上表示,...
11月11日,浙江晶盛机电股份有限公司(证券代码:300316,证券简称:晶盛机电)召开2021年第二次临时股东大会,就《关于公司符合向特定对象发行股票条件的议案》、《关于公司向特定对象发行股票方案的议案》、《关于<浙江晶盛机电股份有限公司向特定对象发行股票预案>的议案》等9项议案进行了审议和投票,爱集微作为其机构股东参与了此次股东大会并投出赞...

史海拾趣

问答坊 | AI 解惑

芯片封装技术简述

【来源:电子技术信息网】 自从美国Intel公司1971年设计制造出4位微处a理器芯片以来,在20多年时间内,CPU从Intel4004、80286、80386、80486发展到Pentium和PentiumⅡ,数位从4位、8位、16位、32位发展到64位;主频从几兆到今天的400MHz以上 ...…

查看全部问答∨

3G LTE新兴技术

在3GPP中,3G LTE的正式名称是3G Long Term Evolution(LTE),即3GPP长期演进(LTE)项目。       3GPP长期演进(LTE)项目是近两年来3GPP启动的最大的新技术研发项目,以OFDM/FDMA为核心的技术,与其说是3G技术的“演进”(evolution) ...…

查看全部问答∨

关于数码管连接问题

我买了单个的数码管,每个上面有10个引脚,不知道怎么连接,请求帮助。最好有电路图。 谢谢~…

查看全部问答∨

负反馈不能产生自激振荡?

模电书上说在负反馈放大电路中,输入信号为零时,因为某种电扰动(如合闸通电),其中含有频率为f0的信号,使得AF的附加相移达到180°或-180°,@负反馈变成了正反馈,如果|AF|>1,则产生了自激振荡。我不明白的是,如果@处条件不成立,也就是不 ...…

查看全部问答∨

使用 LM Flash Programer 下载程序出错

使用 LM Flash Programer 下载程序 错误编号1 [ 本帖最后由 Study_Stellaris 于 2011-9-19 16:52 编辑 ]…

查看全部问答∨

89美金FPGA开发板申请

我想在FPGA世界里遨游,…

查看全部问答∨

adc时钟

adc时钟里面有个uclk,是指哪个时钟?还有他的采样周期怎么算,shot哪个怎么算  谢谢…

查看全部问答∨

【C2000 LaunchPad】单相交流电压+电流表__工程创建篇

总贴位置:https://bbs.eeworld.com.cn/viewthread.php?tid=369113&page=1&extra=page%3D2#pid1466612         【C2000 LaunchPad】单相交流电压+电流表      以前一直用CCS3.3。最近装了个 ...…

查看全部问答∨

MSP430G2542可以支持多少个触摸按键?

如题,我看到一些资料说有的可以支持最多16个触摸按键,是普通的带中断的IO口充放电方式检测的,不知道2542能多少…

查看全部问答∨

攒人气!!晒晒DIY的ALTERA FPGA开发板

攒人气!!晒晒DIY的ALTERA FPGA开发板,希望得到大家指正…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved