欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 11182|回復(fù): 2
收起左側(cè)

Mpu6050的I2C控制技術(shù)詳解以及單片機(jī)例程

[復(fù)制鏈接]
ID:296396 發(fā)表于 2018-3-24 16:24 | 顯示全部樓層 |閱讀模式
C總線協(xié)議與MPU6050
  • others->bit型變量的強(qiáng)制類(lèi)型轉(zhuǎn)換規(guī)則:
在keil c里bit是一位的,屬于對(duì)標(biāo)準(zhǔn)c擴(kuò)展的數(shù)據(jù)類(lèi)型。我舉個(gè)例子說(shuō)明bit的強(qiáng)制轉(zhuǎn)換規(guī)則,例如有變量unsigned char num,變量bit tmp,那么tmp =(bit) num就是把unsigned char型變量強(qiáng)制轉(zhuǎn)換為bit型,不過(guò)規(guī)則有點(diǎn)和一般的強(qiáng)制轉(zhuǎn)換不一樣,bit進(jìn)行強(qiáng)制轉(zhuǎn)換時(shí),只要num不等于0(或者0x00),那么tmp =(bit) num的結(jié)果就是1,自然地如果num=0,那么tmp=0。
  • intrins.h里面包含這樣一個(gè)函數(shù):_nop_();,代表延時(shí)一個(gè)機(jī)器周期。
         機(jī)器周期=晶振周期*12;
  • C總線傳輸?shù)睦蹋?/font>
  1. #include <reg52.h>
  2. #include <intrins.h>      //包含機(jī)器周期延時(shí)函數(shù)_nop_()
  3. #define OP_READ 0xa1    //器件地址以及讀取操作 1010 0001B
  4. #define OP_WRITE 0xa0   //器件地址以及寫(xiě)入操作 1010 0000B
  5. /*說(shuō)明:器件地址為前7位,最低一位為選擇讀或?qū)?/
  6. sbit SDA=P3^5;
  7. sbit SCL=P3^4;
  8. /* 延時(shí)1ms*/
  9. void delay1ms()
  10. {
  11. unsigned char I,j;
  12. for(i=0;i<10;i++)
  13. for(j=0;j<33;j++)
  14. ;
  15. }
  16. /*延時(shí)若干毫秒*/
  17. void delayms(unsigned char n)
  18. {
  19. Unsigned char j;
  20. For(i=0;i<n;i++)
  21. Delay1ms();
  22. }
  23. /*開(kāi)始數(shù)據(jù)傳送的前期準(zhǔn)備*/
  24. Void start()
  25. {
  26. SDA=1;      //SDA初始化為高電平
  27. SCL=1;      //SCL初始化為高電平
  28. _nop_();
  29. _nop_();
  30. _nop_();
  31. _nop_();
  32. SDA=0;    //在SCL為高電平時(shí),SDA由1置0被認(rèn)為是開(kāi)始信號(hào)
  33. _nop_();
  34. _nop_();
  35. _nop_();
  36. _nop_();
  37. SCL=0;   //SCL變?yōu)榈碗娖剑_(kāi)始傳送數(shù)據(jù)
  38. }
  39. /*結(jié)束數(shù)據(jù)傳送*/
  40. Void stop()
  41. {
  42. SDA=0;   //SDA初始化為低電平,準(zhǔn)備發(fā)出終止信號(hào)
  43. SCL=1;   //SCL變成高電平,此時(shí)SDA的一切變化都將被認(rèn)為是開(kāi)始或終止信號(hào)
  44. _nop_();
  45. _nop_();
  46. _nop_();
  47. _nop_();
  48. SDA=1;    //在SCL為高電平時(shí),SDA由0置1被認(rèn)為是終止信號(hào)
  49. _nop_();
  50. _nop_();
  51. _nop_();
  52. _nop_();
  53. SCL=0;   
  54. SDA=0;    //解除總線的占用
  55. }

  56. /*從子器件讀取數(shù)據(jù)*/
  57. Unsigned char ReadData()
  58. {
  59. Unsigned char i,x;  //規(guī)定兩個(gè)中間變量用于暫時(shí)存儲(chǔ)數(shù)據(jù)
  60. For(i=0;i<8;i++)    //循環(huán)8次,剛好記錄一個(gè)字節(jié)
  61. {
  62.               SCL=1;    //先不允許SDA變化,便于記錄數(shù)據(jù)
  63.               X <<=1;     //將x各二進(jìn)制位向左移一位
  64. X |=(unsigned char)SDA;   //將SDA的數(shù)據(jù)存到X里
  65. /***說(shuō)明: X有定義之后默認(rèn)為0x00,SDA為從最高位向最低位變化,所以左移可以將數(shù)據(jù)按從高到低存儲(chǔ)在x里;
  66. SDA為一個(gè)二進(jìn)制位,轉(zhuǎn)換成unsigned char 之后變成字節(jié)的最低位,所以按位與運(yùn)算之后可將SDA當(dāng)前數(shù)據(jù)存儲(chǔ)在X的當(dāng)前最低位*******/
  67. SCL=0;   //允許SDA變換到下一位
  68. }
  69. Return (x);  //將最終記錄好的X值返回給外函數(shù)變量
  70. }


  71. /* 向從機(jī)寫(xiě)入數(shù)據(jù)*/
  72. //調(diào)用該函數(shù)之前要先調(diào)用start(),所以SCL=0;
  73. Bit WriteCurrent(unsigned char y)
  74. {
  75. Unsigned char i;
  76. Bit ack_bit;          //儲(chǔ)存應(yīng)答位
  77. For(i=0;i<8;i++)
  78. {
  79.               SDA=(bit)(y&0x80);
  80. /**先與0x80按位與運(yùn)算以得到最高位信息(發(fā)送時(shí)仍先發(fā)送最高位),再按照bit 的強(qiáng)制類(lèi)型轉(zhuǎn)換規(guī)則,如果得到1000 0000,則最高位為1,此時(shí)SDA為1;如果得到0000 0000,則最高位為0,SDA=0**/
  81.               _nop_();
  82. SCL=1;    //不允許SDA變化,方便從機(jī)記錄數(shù)據(jù)
  83.               _nop_();
  84. _nop_();
  85.               SCL=0;  //從機(jī)記錄完成該位,可變換為下一位
  86.               Y<<=1;   //讓次高位位變成最高位以進(jìn)行下一次數(shù)據(jù)傳輸
  87. }
  88. /*開(kāi)始檢測(cè)應(yīng)答位*/
  89. SDA=1;    //初始化SDA,并讓其自由變換
  90. _nop_();
  91. _nop_();
  92. SCL=1;   //SCL置1,開(kāi)始檢測(cè)是否應(yīng)答(SDA的值在這之前已經(jīng)變化完成)
  93. _nop_();
  94. _nop_();
  95. _nop_();
  96. _nop_();
  97. Ack_bit=SDA;  //記錄應(yīng)答位的值
  98. SCL=0;     
  99. return ack_bit;   //返回應(yīng)答位的值,讓外部得知是否應(yīng)答
  100. }

  101. /* 向指定從機(jī)寫(xiě)入地址和數(shù)據(jù),add存儲(chǔ)指定地址,dat存儲(chǔ)待寫(xiě)入的數(shù)據(jù)*/
  102. Void WriteSet(unsigned char add,unsigned char dat)
  103. {
  104. Start();  //初始化總線
  105. WriteCurrent(OP_WRITE);  //選擇從機(jī)并告知要對(duì)它寫(xiě)入數(shù)據(jù)
  106. WriteCurrent(add);    //寫(xiě)入指定地址
  107. WriteCurrent(dat);    //寫(xiě)入數(shù)據(jù)
  108. Stop();    //停止數(shù)據(jù)傳輸
  109. Delayms(4);    //一個(gè)字節(jié)的寫(xiě)入周期為1ms,所以最好延時(shí)1ms以上
  110. }
  111. /**從從機(jī)的當(dāng)前地址讀取數(shù)據(jù)**/
  112. Unsigned char ReadCurrent()
  113. {
  114. Unsigned char x;
  115. Start();    //初始化總線
  116. WriteCurrent(OP_READ);   //選擇從機(jī)并告知要讀取數(shù)據(jù)
  117. X=ReadData();    //將讀取的數(shù)據(jù)存入x
  118. Stop();         //終止數(shù)據(jù)傳輸
  119. Return x;    //返回讀取數(shù)據(jù)
  120. }
  121. /**從從機(jī)中的某個(gè)地址讀取數(shù)據(jù),set_addr為地址**/
  122. Unsigned char ReadSet(unsigned char set_addr)
  123. {
  124. Start();    //初始化總線
  125. WriteCurrent(OP_WRITE);    //選擇從機(jī)并告知要寫(xiě)入數(shù)據(jù)
  126. WriteCurrent(set_addr);    //寫(xiě)入指定地址
  127. return(ReadCurrent());    //從指定地址讀取數(shù)據(jù)并返回
  128. }
  129. /*主函數(shù)*/
  130. Main(void)
  131. {
  132. SDA=1;    //使主從設(shè)備處于空閑狀態(tài)
  133. SCL=1;
  134. WriteSet(add,dat);    //例如:在指定地址“0x36”中寫(xiě)入數(shù)據(jù)“0x0f”
  135. 完成其他功能
  136. }
復(fù)制代碼

從機(jī)整個(gè)有一個(gè)地址OP,從機(jī)內(nèi)部有多個(gè)寄存器,所以地址要寫(xiě)兩個(gè),即先寫(xiě)整個(gè)的,再寫(xiě)寄存器的。
MPU6050的R/W位是最低位,如圖
SPI Address format
MSB
LSB
A6
A5
A4
A3
A2
A1
A0
R/W
SPI Data format
MSB
LSB
D7
D6
D5
D4
D3
D2
D1
D0
MPU-60X0的Slave地址為b110100X,7位字長(zhǎng),最低有效位X由AD0管腳上的邏輯電平?jīng)Q定。這樣就可以允許兩個(gè)MPU-60X0連接到同一條I2C總線,此時(shí),一個(gè)設(shè)備的地址為b1101000(AD0為邏輯低電平),另一個(gè)為b1101001(
AD0為邏輯高)。
MPU6050的默認(rèn)SLAVE地址的高七位是1101000(),最低位默認(rèn)為0,有需要時(shí)置1;
WHO_AM_I寄存器的低七位的高6位存放的是110100,最低位存放的是AD0引腳電平,它的最高位(第八位)沒(méi)有任何作用,不用管。
WHO_AM_I 的寄存器地址為0x75,默認(rèn)值就是0x68
陀螺儀角速度量程:?jiǎn)挝粸?度每秒(°/s),指的是如果陀螺儀每秒轉(zhuǎn)動(dòng)不超過(guò)多少度則陀螺儀可以測(cè)量。比如±125,就是在每秒轉(zhuǎn)動(dòng)125°之內(nèi)的能測(cè)出來(lái)。陀螺儀量程越大,精度越低。
陀螺儀加速度量程:?jiǎn)挝粸橛?jì)數(shù)單位為g(重力加速度).
陀螺儀角速度靈敏度:?jiǎn)挝粸?LSB/(°/s),LSB是數(shù)字輸出方式下的最小有效位,在這里就是一個(gè)二進(jìn)制位。
    所以靈敏度=65536/量程的區(qū)間長(zhǎng)度(比如量程為100°/s,則除以200);
陀螺儀的加速度靈敏度:可以用LSB/g來(lái)表示,則靈敏度可以表示為:
65536/加速度量程區(qū)間長(zhǎng)度(比如量程是g,則除以4)
加速度:1g代表一個(gè)重力加速度,即以9.8m/s為單位大小。
在數(shù)字輸出方式下,陀螺儀靈敏度可用mg/LSB來(lái)表示。
陀螺儀輸出的ADC角速度值與°/s(角速度)之間的換算:輸出的ADC值的單位是LSB,則
某一個(gè)軸的角速度=ADC值/角速度靈敏度;
陀螺儀輸出的ADCRx加速度值與g之間的換算:
某一個(gè)軸的加速度=ADCRx值/加速度靈敏度;
MPU6050的重要寄存器:
  • WHO_AM_I:  地址0x75,默認(rèn)值0x68
WHO_AM_I寄存器的低七位的高6位存放的是110100,最低位存放的是AD0引腳電平,它的最高位(第八位)沒(méi)有任何作用,不用管。
  • PWR_MGMT_1:  地址0x6b,默認(rèn)值0x40,使用時(shí)置0x00
用于配置電源模式和時(shí)鐘源。提供了一位用來(lái)重置整個(gè)儀器,以及一位用來(lái)禁用溫度傳感器。

Register(Hex)

Register(Decimal)

Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
6B
107
DEVICE
_RESET
SLEEP
CYCLE
-
TEMP_DIS
CLKSEL[2:0]
7:置1時(shí)所有寄存器復(fù)位,然后自動(dòng)置0.
6:置1時(shí)進(jìn)入低電壓休眠狀態(tài);當(dāng)SLEEP1時(shí),若CYCLE1,則進(jìn)入循環(huán)模式。在循環(huán)模式下,儀器將在睡眠和活動(dòng)狀態(tài)下來(lái)回轉(zhuǎn)換來(lái)從活動(dòng)狀態(tài)的傳感器獲取一個(gè)數(shù)據(jù)樣本,其頻率由LP_WAKE_CTRL決定。為了配置喚醒頻率,需要配合使用LP_WAKE_CTRL和兩個(gè)電源管理寄存器。
31時(shí)禁用溫度傳感器。
210:選擇時(shí)鐘源。                                   
CLKSEL
Clock Source
000
內(nèi)部8MHZ振蕩器,平時(shí)用這個(gè)即可
001
具有X軸陀螺基準(zhǔn)的鎖相環(huán)
010
具有Y軸陀螺基準(zhǔn)的鎖相環(huán)
011
具有Z軸陀螺基準(zhǔn)的鎖相環(huán)
100
PLL with external 32.768kHz reference
101
PLL with external 19.2MHz reference
110
儲(chǔ)存保留
111
停止時(shí)鐘并讓計(jì)時(shí)發(fā)生器保持重置狀態(tài)
  • SMPLRT_DIV:地址0x19,默認(rèn)值0x00
Register(Hex)
Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
19
SMPLRT_DIV[7:0]
用于指定陀螺儀的采樣率。
采樣速率=陀螺儀輸出速率/(1+SMPLRT_DIV)
其中,當(dāng)DLPF_CFG=000或111時(shí)(詳情見(jiàn)CONFIG寄存器),陀螺儀輸出速率=8KHZ;當(dāng)數(shù)字低通濾波器(DLPF)被禁用時(shí),陀螺儀輸出頻率是1KHZ(平時(shí)禁用就行了);
注意:加速度計(jì)的輸出頻率是1KHZ。這意味著當(dāng)采樣速率高于1KHZ時(shí),同樣的加速度計(jì)采樣江北輸出到FIFO,DMP,和不止一個(gè)寄存器中。
3:CONFIG:地址0x1a,默認(rèn)值0x00

Register(Hex)

Register(Decimal)

Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
1A
26
-
-
EXT_SYNC_SET[2:0]
DLPF_CFG[2:0]
此寄存器用于配置外部幀同步引腳采樣,以及 陀螺儀和加速度計(jì)的 數(shù)字低通濾波器的相關(guān)設(shè)置。
與FSYNC引腳鏈接的外部信號(hào)可以被EXT_SYNC_SET采樣。
FSYNC引腳的信號(hào)變化會(huì)被鎖存,這樣就可以獲得很短的頻閃信號(hào)。被鎖存的FSYNC引腳數(shù)據(jù)會(huì)被認(rèn)為是采樣率,就像SMPLRT_DIV里定義的那樣。采樣過(guò)后,鎖存器會(huì)重置成當(dāng)前的FSYNC信號(hào)狀態(tài)。
采樣值將被反饋到由EXT_SYNC_SET的值決定的傳感器的數(shù)據(jù)寄存器的最低有效位。   
位5,4,3:EXT_SYNC_SET
EXT_SYNC_SET
FSYNC Bit Location
0
禁止輸入,平時(shí)用這個(gè)
1
TEMP_OUT_L[0]   溫度傳感器的低八位寄存器的最低有效位
2
GYRO_XOUT_L[0]    陀螺儀X軸
3
GYRO_YOUT_L[0]     陀螺儀Y軸
4
GYRO_ZOUT_L[0]     陀螺儀Z軸
5
ACCEL_XOUT_L[0]    加速度計(jì)X軸
6
ACCEL_YOUT_L[0]    加速度計(jì)Y軸
7
ACCEL_ZOUT_L[0]    加速度計(jì)Z軸
位2,1,0:DLPF_CFG,用于設(shè)置陀螺儀和加速度計(jì)的數(shù)字低通濾波頻率(DLPF)
,如下表:
DLPF_CFG

加速度計(jì) (Fs  = 1kHz)

                       陀螺儀
Bandwidth(帶寬)(Hz)
Delay (ms)
Bandwidth (Hz)
Delay (ms)
Fs (kHz)
000
260
0
256
0.98
8
001
184
2.0
188
1.9
1
010
94
3.0
98
2.8
1
011
44
4.9
42
4.8
1
100
21
8.5
20
8.3
1
101
10
13.8
10
13.4
1
110,平時(shí)用這個(gè)
5
19.0
5
18.6
1
111
RESERVED(保留)
RESERVED(保留)
8
  • GYRO_CONFIG: 地址0x1b,默認(rèn)值0x00
  • Register(Hex)

Register(Decimal)

Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
1B
27
XG_ST
YG_ST
ZG_ST
FS_SEL[1:0]
-
-
-
這個(gè)寄存器用于觸發(fā)陀螺儀自檢,以及配置陀螺儀量程。
陀螺儀自檢的作用:允許用戶檢測(cè)陀螺儀的機(jī)械和電氣部分。陀螺儀的每個(gè)軸的自檢可以通過(guò)控制XG_ST,YG_ST和ZG_ST來(lái)激活。每個(gè)軸的自檢可以同時(shí)獨(dú)立運(yùn)行。
當(dāng)自檢被激活時(shí),在線的電氣部分將會(huì)驅(qū)動(dòng)合適的傳感器。這種驅(qū)動(dòng)將移動(dòng)傳感器的依據(jù)質(zhì)量在相當(dāng)于一個(gè)預(yù)先定義的科里奧利力的距離。這個(gè)依據(jù)質(zhì)量的取代將會(huì)導(dǎo)致傳感器輸出的變化,而這又將導(dǎo)致輸出信號(hào)被反射。輸出信號(hào)被用來(lái)觀察自檢響應(yīng)情況。平時(shí)不用自檢。
自檢響應(yīng)的定義如下:
   自檢響應(yīng)=自檢允許情況下的傳感器輸出值-自檢不允許情況下的傳感器輸出值
當(dāng)自檢響應(yīng)值被限制在最小或者最大產(chǎn)品規(guī)格時(shí),該部分已通過(guò)自檢。當(dāng)自檢響應(yīng)超過(guò)產(chǎn)品規(guī)格文檔中指定的最小/最大值時(shí),該部分被視為自檢失敗。
位4,3(FS_SEL):是用來(lái)選擇陀螺儀的量程的,具體見(jiàn)下表:
FS_SEL
Full Scale Range
00
± 250 °/s
01
± 500 °/s
10
± 1000 °/s
11
± 2000 °/s,平時(shí)用這個(gè)
            
  • ACCEL_CONFIG:地址0x1c,默認(rèn)值0x00

Register(Hex)

Register(Decimal)

Bit7
Bit6
Bit5
Bit4
Bit3
Bit2
Bit1
Bit0
1C
28
XA_ST
YA_ST
ZA_ST
AFS_SEL[1:0]
ACCEL_HPF[2:0]
此寄存器用于啟動(dòng)加速度計(jì)自檢以及配置加速度計(jì)的量程。也用于配置數(shù)字高通濾波器(DHPF)。
(說(shuō)明同GYRO_CONFIG,平時(shí)不自檢)
   位4,3(AFS_SEL):用于設(shè)置加速度計(jì)量程,具體如下表:
AFS_SEL
Full Scale Range
00
± 2g平時(shí)用這個(gè)
01
± 4g
10
± 8g
11
± 16g
位2,1,0(ACCEL_HPF):用于配置數(shù)字高通濾波器(DHPF)的路徑可用并導(dǎo)致運(yùn)動(dòng)探測(cè)器(自由落體,運(yùn)動(dòng)閾值和零運(yùn)動(dòng))。高通濾波器的輸出對(duì)于數(shù)據(jù)寄存器來(lái)說(shuō)并不可用(詳情見(jiàn)產(chǎn)品規(guī)格說(shuō)明書(shū)第八部分)。
高通濾波器有三種模式:
1.Reset: 濾波器輸出在一個(gè)采樣中歸零。這可以有效的禁用高通濾波器。此模式可以切換快速解決濾波器。
2.On:     數(shù)字高通濾波器會(huì)讓頻率高過(guò)截止頻率的信號(hào)通過(guò)。
3.Hold:  切換到此模式時(shí),濾波器將保持現(xiàn)有采樣。濾波器輸出將會(huì)是輸入采樣和保持采樣之間的區(qū)別。
      具體如下表:
ACCEL_HPF
Filter Mode
Cut-off Frequency(高通濾波頻率)
000
Reset
None
001
On
5Hz,平時(shí)用這個(gè)
010
On
2.5Hz
011
On
1.25Hz
100
On
0.63Hz
111
Hold
None
                     
   ACCEL_XOUT_H:地址0x3b:加速度計(jì)X軸高八位
   ACCEL_XOUT_L:     0x3c: 加速度計(jì)X軸低八位
   ACCEL_YOUT_H:     0x3d: 加速度計(jì)Y軸高八位
   ACCEL_YOUT_L:     0x3e: 加速度計(jì)Y軸低八位                   初始值0x00
   ACCEL_ZOUT_H:     0x3f: 加速度計(jì)Z軸高八位
   ACCEL_ZOUT_L:     0x40: 加速度計(jì)Z軸低八位
用于存儲(chǔ)加速度計(jì)的最近測(cè)量值,所記錄的數(shù)據(jù)是以LSB為單位的加速度值。
加速度傳感器內(nèi)部寄存器組中的數(shù)據(jù)總是以采樣速率更新,同時(shí),當(dāng)串行接口空閑時(shí),面向用戶的讀寄存器組重復(fù)內(nèi)部寄存器組的數(shù)據(jù)值,這保證了傳感器寄存器的突發(fā)讀取將讀取來(lái)自同一采樣時(shí)刻的測(cè)量。
每一個(gè)加速度計(jì)測(cè)量器偶有一個(gè)在ACCEL_FS寄存器里定義的滿刻度。對(duì)于每一個(gè)滿刻度設(shè)置,每LSB的加速度計(jì)靈敏度如下表:
AFS_SEL
量程
LSB 靈敏度
00
±2g
16384 LSB/mg
01
±4g
8192 LSB/mg
10
±8g
4096 LSB/mg
11
±16g
2048 LSB/mg
TEMP_OUT_H:地址0x41:溫度傳感器測(cè)量值寄存器高八位              初始值0x00
TEMP_OUT_L:地址0x42:溫度傳感器測(cè)量值寄存器低八位
GYRO_XOUT_H:地址0x43
GYRO_XOUT_L:     0x44
GYRO_YOUT_H:     0x45                    用于記錄陀螺儀各軸測(cè)量值,默認(rèn)值0x00
GYRO_YOUT_L:     0x46
GYRO_ZOUT_H:     0x47
GYRO_ZOUT_L:     0x48
同加速度計(jì)測(cè)量值寄存器,量程與LSB表示的靈敏度關(guān)系如下表:
FS_SEL
Full Scale Range
LSB Sensitivity
0
± 250 °/s
131 LSB/°/s
1
± 500 °/s
65.5 LSB/°/s
2
± 1000 °/s
32.8 LSB/°/s
3
± 2000 °/s
16.4 LSB/°/s
這幾個(gè)寄存器的數(shù)據(jù)的含義是以LSB為單位的角速度值。

完整的Word格式文檔51黑下載地址:
I2C總線協(xié)議與MPU6050.docx (121.53 KB, 下載次數(shù): 65)



回復(fù)

使用道具 舉報(bào)

ID:277818 發(fā)表于 2018-3-24 22:41 來(lái)自觸屏版 | 顯示全部樓層
沒(méi)看懂
回復(fù)

使用道具 舉報(bào)

ID:606481 發(fā)表于 2019-9-6 09:46 | 顯示全部樓層
下載下來(lái)看一下
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表