I2C Module Addre" />
鍙冩暩(sh霉)璩囨枡
鍨嬭櫉锛� DSPIC30F3014-30I/ML
寤犲晢锛� Microchip Technology
鏂囦欢闋佹暩(sh霉)锛� 147/153闋�
鏂囦欢澶�?銆�?/td> 0K
鎻忚堪锛� IC DSPIC MCU/DSP 24K 44QFN
鐢�(ch菐n)鍝佸煿瑷撴ā濉婏細 Serial Communications using dsPIC30F I2C
Serial Communications using dsPIC30F SPI
Serial Communications using dsPIC30F UART
dsPIC30F 12 bit ADC - Part 2
dsPIC30F Addressing Modes - Part 1
dsPIC30F Architecture - Part 1
dsPIC30F DSP Engine & ALU
dsPIC30F Interrupts
dsPIC30F Motor Control PWM
dsPIC Timers
Asynchronous Stimulus
dsPIC30F Addressing Modes - Part 2
dsPIC30F Architecture - Part 2
dsPIC30F 12-bit ADC Part 1
妯欐簴鍖呰锛� 45
绯诲垪锛� dsPIC™ 30F
鏍稿績铏曠悊鍣細 dsPIC
鑺珨灏哄锛� 16-浣�
閫熷害锛� 30 MIP
閫i€氭€э細 I²C锛孲PI锛孶ART/USART
澶栧湇瑷倷锛� 娆犲妾㈡脯/寰╀綅锛孭OR锛孭WM锛學DT
杓稿叆/杓稿嚭鏁�(sh霉)锛� 30
绋嬪簭瀛樺劜鍣ㄥ閲忥細 24KB锛�8K x 24锛�
绋嬪簭瀛樺劜鍣ㄩ鍨嬶細 闁冨瓨
EEPROM 澶�?銆�?/td> 1K x 8
RAM 瀹归噺锛� 2K x 8
闆诲 - 闆绘簮 (Vcc/Vdd)锛� 2.5 V ~ 5.5 V
鏁�(sh霉)鎿�(j霉)杞�(zhu菐n)鎻涘櫒锛� A/D 13x12b
鎸暕鍣ㄥ瀷锛� 鍏�(n猫i)閮�
宸ヤ綔婧害锛� -40°C ~ 85°C
灏佽/澶栨锛� 44-VQFN 瑁搁湶鐒婄洡
鍖呰锛� 绠′欢
鐢�(ch菐n)鍝佺洰閷勯爜闈細 651 (CN2011-ZH PDF)
閰嶇敤锛� XLT44QFN2-ND - SOCKET TRAN ICE 44QFN/40DIP
AC164322-ND - MODULE SOCKET MPLAB PM3 28/44QFN
DV164005-ND - KIT ICD2 SIMPLE SUIT W/USB CABLE
鍏跺畠鍚嶇ū锛� DSPIC30F301430IML
绗�1闋�绗�2闋�绗�3闋�绗�4闋�绗�5闋�绗�6闋�绗�7闋�绗�8闋�绗�9闋�绗�10闋�绗�11闋�绗�12闋�绗�13闋�绗�14闋�绗�15闋�绗�16闋�绗�17闋�绗�18闋�绗�19闋�绗�20闋�绗�21闋�绗�22闋�绗�23闋�绗�24闋�绗�25闋�绗�26闋�绗�27闋�绗�28闋�绗�29闋�绗�30闋�绗�31闋�绗�32闋�绗�33闋�绗�34闋�绗�35闋�绗�36闋�绗�37闋�绗�38闋�绗�39闋�绗�40闋�绗�41闋�绗�42闋�绗�43闋�绗�44闋�绗�45闋�绗�46闋�绗�47闋�绗�48闋�绗�49闋�绗�50闋�绗�51闋�绗�52闋�绗�53闋�绗�54闋�绗�55闋�绗�56闋�绗�57闋�绗�58闋�绗�59闋�绗�60闋�绗�61闋�绗�62闋�绗�63闋�绗�64闋�绗�65闋�绗�66闋�绗�67闋�绗�68闋�绗�69闋�绗�70闋�绗�71闋�绗�72闋�绗�73闋�绗�74闋�绗�75闋�绗�76闋�绗�77闋�绗�78闋�绗�79闋�绗�80闋�绗�81闋�绗�82闋�绗�83闋�绗�84闋�绗�85闋�绗�86闋�绗�87闋�绗�88闋�绗�89闋�绗�90闋�绗�91闋�绗�92闋�绗�93闋�绗�94闋�绗�95闋�绗�96闋�绗�97闋�绗�98闋�绗�99闋�绗�100闋�绗�101闋�绗�102闋�绗�103闋�绗�104闋�绗�105闋�绗�106闋�绗�107闋�绗�108闋�绗�109闋�绗�110闋�绗�111闋�绗�112闋�绗�113闋�绗�114闋�绗�115闋�绗�116闋�绗�117闋�绗�118闋�绗�119闋�绗�120闋�绗�121闋�绗�122闋�绗�123闋�绗�124闋�绗�125闋�绗�126闋�绗�127闋�绗�128闋�绗�129闋�绗�130闋�绗�131闋�绗�132闋�绗�133闋�绗�134闋�绗�135闋�绗�136闋�绗�137闋�绗�138闋�绗�139闋�绗�140闋�绗�141闋�绗�142闋�绗�143闋�绗�144闋�绗�145闋�绗�146闋�鐣跺墠绗�147闋�绗�148闋�绗�149闋�绗�150闋�绗�151闋�绗�152闋�绗�153闋�
2010 Microchip Technology Inc.
DS70138G-page 93
dsPIC30F3014/4013
14.2
I2C Module Addresses
The I2CADD register contains the Slave mode
addresses. The register is a 10-bit register.
If the A10M bit (I2CCON<10>) is 鈥�0鈥�, the address is
interpreted by the module as a 7-bit address. When an
address is received, it is compared to the 7 LSbs of the
I2CADD register.
If the A10M bit is 鈥�1鈥�, the address is assumed to be a
10-bit address. When an address is received, it is com-
pared with the binary value, 鈥�11110 A9 A8鈥� (where A9
and A8 are two Most Significant bits of I2CADD). If that
value matches, the next address is compared with the
Least Significant 8 bits of I2CADD, as specified in the
10-bit addressing protocol.
14.3
I2C 7-Bit Slave Mode Operation
Once enabled (I2CEN = 1), the slave module waits for
a Start bit to occur (i.e., the I2C module is 鈥業dle鈥�). Follow-
ing the detection of a Start bit, 8 bits are shifted into
I2CRSR, and the address is compared against
I2CADD. In 7-bit mode (A10M = 0), bits I2CADD<6:0>
are compared against I2CRSR<7:1> and I2CRSR<0>
is the R_W bit. All incoming bits are sampled on the
rising edge of SCL.
If an address match occurs, an Acknowledgement is
sent and the Slave Event Interrupt Flag (SI2CIF) is set
on the falling edge of the ninth (ACK) bit. The address
match does not affect the contents of the I2CRCV buf-
fer or the RBF bit.
14.3.1
SLAVE TRANSMISSION
If the R_W bit received is a 鈥�1鈥�, the serial port goes into
Transmit mode. It sends an ACK on the ninth bit and
then holds SCL to 鈥�0鈥� until the CPU responds by writing
to I2CTRN. SCL is released by setting the SCLREL bit,
and 8 bits of data are shifted out. Data bits are shifted
out on the falling edge of SCL, such that SDA is valid
during SCL high. The interrupt pulse is sent on the
falling edge of the ninth clock pulse, regardless of the
status of the ACK received from the master.
14.3.2
SLAVE RECEPTION
If the R_W bit received is a 鈥�0鈥� during an address
match, then Receive mode is initiated. Incoming bits
are sampled on the rising edge of SCL. After 8 bits are
received, if I2CRCV is not full or I2COV is not set,
I2CRSR is transferred to I2CRCV. ACK is sent on the
ninth clock.
If the RBF flag is set, indicating that I2CRCV is still
holding data from a previous operation (RBF = 1), then
ACK is not sent; however, the interrupt pulse is gener-
ated. In the case of an overflow, the contents of the
I2CRSR are not loaded into the I2CRCV.
14.4
I2C 10-Bit Slave Mode Operation
In 10-bit mode, the basic receive and transmit opera-
tions are the same as in the 7-bit mode. However, the
criteria for address match is more complex.
The I2C specification dictates that a slave must be
addressed for a write operation with two address bytes
following a Start bit.
The A10M bit is a control bit that signifies that the
address in I2CADD is a 10-bit address rather than a 7-bit
address. The address detection protocol for the first byte
of a message address is identical for 7-bit and 10-bit
messages, but the bits being compared are different.
I2CADD holds the entire 10-bit address. Upon receiv-
ing an address following a Start bit, I2CRSR <7:3> is
compared against a literal 鈥�11110鈥� (the default 10-bit
address) and I2CRSR<2:1> are compared against
I2CADD<9:8>. If a match occurs and if R_W = 0, the
interrupt pulse is sent. The ADD10 bit is cleared to indi-
cate a partial address match. If a match fails or
R_W = 1, the ADD10 bit is cleared and the module
returns to the Idle state.
The low byte of the address is then received and com-
pared with I2CADD<7:0>. If an address match occurs,
the interrupt pulse is generated and the ADD10 bit is
set, indicating a complete 10-bit address match. If an
address match did not occur, the ADD10 bit is cleared
and the module returns to the Idle state.
14.4.1
10-BIT MODE SLAVE TRANSMISSION
Once a slave is addressed in this fashion with the full
10-bit
address
(we
refer
to
this
state
as
鈥淧RIOR_ADDR_MATCH鈥�), the master can begin
sending data bytes for a slave reception operation.
TABLE 14-1:
7-BIT I2C SLAVE
ADDRESSES SUPPORTED BY
dsPIC30F
0x00
General Call Address or Start Byte
0x01-0x03
Reserved
0x04-0x07
HS mode Master Codes
0x08-0x77
Valid 7-Bit Addresses
0x78-0x7b
Valid 10-Bit Addresses (lower 7 bits)
0x7c-0x7f
Reserved
Note:
The I2CRCV is loaded if the I2COV bit = 1
and the RBF flag = 0. In this case, a read
of the I2CRCV was performed but the
user did not clear the state of the I2COV
bit before the next receive occurred. The
acknowledgement is not sent (ACK = 1)
and the I2CRCV is updated.
鐩搁棞PDF璩囨枡
PDF鎻忚堪
ATMEGA168V-10MI IC AVR MCU 16K 10MHZ 32-QFN
PIC16F873A-I/SO IC MCU FLASH 4KX14 EE 28SOIC
PIC16F873A-I/SP IC MCU FLASH 4KX14 EE 28DIP
PIC32MX320F032H-40V/PT IC MCU 32BIT 32KB FLASH 64TQFP
ATMEGA3290-16AI IC AVR MCU 32K 16MHZ 100TQFP
鐩搁棞浠g悊鍟�/鎶€琛撳弮鏁�(sh霉)
鍙冩暩(sh霉)鎻忚堪
dsPIC30F3014T-20E/ML 鍔熻兘鎻忚堪:鏁�(sh霉)瀛椾俊铏熻檿鐞嗗櫒鍜屾帶鍒跺櫒 - DSP, DSC 44LD 20MIPS 24 KB RoHS:鍚� 鍒堕€犲晢:Microchip Technology 鏍稿績:dsPIC 鏁�(sh霉)鎿�(j霉)绺界窔瀵害:16 bit 绋嬪簭瀛樺劜鍣ㄥぇ灏�:16 KB 鏁�(sh霉)鎿�(j霉) RAM 澶у皬:2 KB 鏈€澶ф檪閻橀牷鐜�:40 MHz 鍙法绋嬭几鍏�/杓稿嚭绔暩(sh霉)閲�:35 瀹氭檪鍣ㄦ暩(sh霉)閲�:3 瑷倷姣忕鍏嗘寚浠ゆ暩(sh霉):50 MIPs 宸ヤ綔闆绘簮闆诲:3.3 V 鏈€澶у伐浣滄韩搴�:+ 85 C 灏佽 / 绠遍珨:TQFP-44 瀹夎棰ㄦ牸:SMD/SMT
dsPIC30F3014T-20E/PT 鍔熻兘鎻忚堪:鏁�(sh霉)瀛椾俊铏熻檿鐞嗗櫒鍜屾帶鍒跺櫒 - DSP, DSC 20MIPS 24 KB RoHS:鍚� 鍒堕€犲晢:Microchip Technology 鏍稿績:dsPIC 鏁�(sh霉)鎿�(j霉)绺界窔瀵害:16 bit 绋嬪簭瀛樺劜鍣ㄥぇ灏�:16 KB 鏁�(sh霉)鎿�(j霉) RAM 澶у皬:2 KB 鏈€澶ф檪閻橀牷鐜�:40 MHz 鍙法绋嬭几鍏�/杓稿嚭绔暩(sh霉)閲�:35 瀹氭檪鍣ㄦ暩(sh霉)閲�:3 瑷倷姣忕鍏嗘寚浠ゆ暩(sh霉):50 MIPs 宸ヤ綔闆绘簮闆诲:3.3 V 鏈€澶у伐浣滄韩搴�:+ 85 C 灏佽 / 绠遍珨:TQFP-44 瀹夎棰ㄦ牸:SMD/SMT
DSPIC30F3014T-20I/ML 鍔熻兘鎻忚堪:IC DSPIC MCU/DSP 24K 44QFN RoHS:鍚� 椤炲垾:闆嗘垚闆昏矾 (IC) >> 宓屽叆寮� - 寰帶鍒跺櫒锛� 绯诲垪:dsPIC™ 30F 鐢�(ch菐n)鍝佸煿瑷撴ā濉�:XLP Deep Sleep Mode 8-bit PIC® Microcontroller Portfolio 妯欐簴鍖呰:22 绯诲垪:PIC® XLP™ 18F 鏍稿績铏曠悊鍣�:PIC 鑺珨灏哄:8-浣� 閫熷害:48MHz 閫i€氭€�:I²C锛孲PI锛孶ART/USART锛孶SB 澶栧湇瑷倷:娆犲妾㈡脯/寰╀綅锛孭OR锛孭WM锛學DT 杓稿叆/杓稿嚭鏁�(sh霉):14 绋嬪簭瀛樺劜鍣ㄥ閲�:8KB锛�4K x 16锛� 绋嬪簭瀛樺劜鍣ㄩ鍨�:闁冨瓨 EEPROM 澶у皬:256 x 8 RAM 瀹归噺:512 x 8 闆诲 - 闆绘簮 (Vcc/Vdd):1.8 V ~ 5.5 V 鏁�(sh霉)鎿�(j霉)杞�(zhu菐n)鎻涘櫒:A/D 11x10b 鎸暕鍣ㄥ瀷:鍏�(n猫i)閮� 宸ヤ綔婧害:-40°C ~ 85°C 灏佽/澶栨:20-DIP锛�0.300"锛�7.62mm锛� 鍖呰:绠′欢 鐢�(ch菐n)鍝佺洰閷勯爜闈�:642 (CN2011-ZH PDF) 閰嶇敤:DV164126-ND - KIT DEVELOPMENT USB W/PICKIT 2DM164127-ND - KIT DEVELOPMENT USB 18F14/13K50AC164112-ND - VOLTAGE LIMITER MPLAB ICD2 VPP
DSPIC30F3014T-20I/PT 鍔熻兘鎻忚堪:IC DSPIC MCU/DSP 24K 44TQFP RoHS:鍚� 椤炲垾:闆嗘垚闆昏矾 (IC) >> 宓屽叆寮� - 寰帶鍒跺櫒锛� 绯诲垪:dsPIC™ 30F 鐢�(ch菐n)鍝佸煿瑷撴ā濉�:XLP Deep Sleep Mode 8-bit PIC® Microcontroller Portfolio 妯欐簴鍖呰:22 绯诲垪:PIC® XLP™ 18F 鏍稿績铏曠悊鍣�:PIC 鑺珨灏哄:8-浣� 閫熷害:48MHz 閫i€氭€�:I²C锛孲PI锛孶ART/USART锛孶SB 澶栧湇瑷倷:娆犲妾㈡脯/寰╀綅锛孭OR锛孭WM锛學DT 杓稿叆/杓稿嚭鏁�(sh霉):14 绋嬪簭瀛樺劜鍣ㄥ閲�:8KB锛�4K x 16锛� 绋嬪簭瀛樺劜鍣ㄩ鍨�:闁冨瓨 EEPROM 澶у皬:256 x 8 RAM 瀹归噺:512 x 8 闆诲 - 闆绘簮 (Vcc/Vdd):1.8 V ~ 5.5 V 鏁�(sh霉)鎿�(j霉)杞�(zhu菐n)鎻涘櫒:A/D 11x10b 鎸暕鍣ㄥ瀷:鍏�(n猫i)閮� 宸ヤ綔婧害:-40°C ~ 85°C 灏佽/澶栨:20-DIP锛�0.300"锛�7.62mm锛� 鍖呰:绠′欢 鐢�(ch菐n)鍝佺洰閷勯爜闈�:642 (CN2011-ZH PDF) 閰嶇敤:DV164126-ND - KIT DEVELOPMENT USB W/PICKIT 2DM164127-ND - KIT DEVELOPMENT USB 18F14/13K50AC164112-ND - VOLTAGE LIMITER MPLAB ICD2 VPP
dsPIC30F3014T-30I/ML 鍔熻兘鎻忚堪:鏁�(sh霉)瀛椾俊铏熻檿鐞嗗櫒鍜屾帶鍒跺櫒 - DSP, DSC 44LD 30MIPS 24 KB RoHS:鍚� 鍒堕€犲晢:Microchip Technology 鏍稿績:dsPIC 鏁�(sh霉)鎿�(j霉)绺界窔瀵害:16 bit 绋嬪簭瀛樺劜鍣ㄥぇ灏�:16 KB 鏁�(sh霉)鎿�(j霉) RAM 澶у皬:2 KB 鏈€澶ф檪閻橀牷鐜�:40 MHz 鍙法绋嬭几鍏�/杓稿嚭绔暩(sh霉)閲�:35 瀹氭檪鍣ㄦ暩(sh霉)閲�:3 瑷倷姣忕鍏嗘寚浠ゆ暩(sh霉):50 MIPs 宸ヤ綔闆绘簮闆诲:3.3 V 鏈€澶у伐浣滄韩搴�:+ 85 C 灏佽 / 绠遍珨:TQFP-44 瀹夎棰ㄦ牸:SMD/SMT