参数资料
型号: MD80C32-20/883:D
厂商: ATMEL CORP
元件分类: 微控制器/微处理器
英文描述: 8-BIT, 20 MHz, MICROCONTROLLER, CDIP40
封装: CERAMIC, DIP-40
文件页数: 110/395页
文件大小: 9022K
第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页第154页第155页第156页第157页第158页第159页第160页第161页第162页第163页第164页第165页第166页第167页第168页第169页第170页第171页第172页第173页第174页第175页第176页第177页第178页第179页第180页第181页第182页第183页第184页第185页第186页第187页第188页第189页第190页第191页第192页第193页第194页第195页第196页第197页第198页第199页第200页第201页第202页第203页第204页第205页第206页第207页第208页第209页第210页第211页第212页第213页第214页第215页第216页第217页第218页第219页第220页第221页第222页第223页第224页第225页第226页第227页第228页第229页第230页第231页第232页第233页第234页第235页第236页第237页第238页第239页第240页第241页第242页第243页第244页第245页第246页第247页第248页第249页第250页第251页第252页第253页第254页第255页第256页第257页第258页第259页第260页第261页第262页第263页第264页第265页第266页第267页第268页第269页第270页第271页第272页第273页第274页第275页第276页第277页第278页第279页第280页第281页第282页第283页第284页第285页第286页第287页第288页第289页第290页第291页第292页第293页第294页第295页第296页第297页第298页第299页第300页第301页第302页第303页第304页第305页第306页第307页第308页第309页第310页第311页第312页第313页第314页第315页第316页第317页第318页第319页第320页第321页第322页第323页第324页第325页第326页第327页第328页第329页第330页第331页第332页第333页第334页第335页第336页第337页第338页第339页第340页第341页第342页第343页第344页第345页第346页第347页第348页第349页第350页第351页第352页第353页第354页第355页第356页第357页第358页第359页第360页第361页第362页第363页第364页第365页第366页第367页第368页第369页第370页第371页第372页第373页第374页第375页第376页第377页第378页第379页第380页第381页第382页第383页第384页第385页第386页第387页第388页第389页第390页第391页第392页第393页第394页第395页
198
ATmega64A [DATASHEET]
8160D–AVR–02/2013
any operation as long as the TWINT bit in TWCR is set. Immediately after the application has cleared
TWINT, the TWI will initiate transmission of the address packet.
4.
When the address packet has been transmitted, the TWINT flag in TWCR is set, and TWSR is updated with
a status code indicating that the address packet has successfully been sent. The status code will also
reflect whether a slave acknowledged the packet or not.
5.
The application software should now examine the value of TWSR, to make sure that the address packet
was successfully transmitted, and that the value of the ACK bit was as expected. If TWSR indicates other-
wise, the application software might take some special action, like calling an error routine. Assuming that
the status code is as expected, the application must load a data packet into TWDR. Subsequently, a spe-
cific value must be written to TWCR, instructing the TWI hardware to transmit the data packet present in
TWDR. Which value to write is described later on. However, it is important that the TWINT bit is set in the
value written. Writing a one to TWINT clears the flag. The TWI will not start any operation as long as the
TWINT bit in TWCR is set. Immediately after the application has cleared TWINT, the TWI will initiate trans-
mission of the data packet.
6.
When the data packet has been transmitted, the TWINT flag in TWCR is set, and TWSR is updated with a
status code indicating that the data packet has successfully been sent. The status code will also reflect
whether a slave acknowledged the packet or not.
7.
The application software should now examine the value of TWSR, to make sure that the data packet was
successfully transmitted, and that the value of the ACK bit was as expected. If TWSR indicates otherwise,
the application software might take some special action, like calling an error routine. Assuming that the sta-
tus code is as expected, the application must write a specific value to TWCR, instructing the TWI hardware
to transmit a STOP condition. Which value to write is described later on. However, it is important that the
TWINT bit is set in the value written. Writing a one to TWINT clears the flag. The TWI will not start any oper-
ation as long as the TWINT bit in TWCR is set. Immediately after the application has cleared TWINT, the
TWI will initiate transmission of the STOP condition. Note that TWINT is NOT set after a STOP condition
has been sent.
Even though this example is simple, it shows the principles involved in all TWI transmissions. These can be sum-
marized as follows:
When the TWI has finished an operation and expects application response, the TWINT flag is set. The SCL line
is pulled low until TWINT is cleared.
When the TWINT flag is set, the user must update all TWI registers with the value relevant for the next TWI bus
cycle. As an example, TWDR must be loaded with the value to be transmitted in the next bus cycle.
After all TWI Register updates and other pending application software tasks have been completed, TWCR is
written. When writing TWCR, the TWINT bit should be set. Writing a one to TWINT clears the flag. The TWI will
then commence executing whatever operation was specified by the TWCR setting.
In the following an assembly and C implementation of the example is given. Note that the code below assumes that
several definitions have been made for example by using include-files.
Assembly code example(1)
C example(1)
Comments
1
ldi
r16, (1<<TWINT)|(1<<TWSTA)|
(1<<TWEN)
out
TWCR, r16
TWCR = (1<<TWINT)|(1<<TWSTA)|
(1<<TWEN)
Send START condition
2
wait1:
in
r16,TWCR
sbrs
r16,TWINT
rjmp
wait1
while
(!(TWCR & (1<<TWINT)))
;
Wait for TWINT flag set. This
indicates that the START
condition has been transmitted
3
in
r16,TWSR
andi
r16, 0xF8
cpi
r16, START
brne
ERROR
if
((TWSR & 0xF8) != START)
ERROR();
Check value of TWI Status
Register. Mask prescaler bits. If
status different from START go to
ERROR
相关PDF资料
PDF描述
MD80C52TXXX-25SCD 8-BIT, MROM, 25 MHz, MICROCONTROLLER, CDIP40
MD80C52CXXX-12SHXXX 8-BIT, MROM, 12 MHz, MICROCONTROLLER, CDIP40
MR80C52XXX-16P883 8-BIT, MROM, 16 MHz, MICROCONTROLLER, CQCC44
MF280C51-12R 8-BIT, MROM, 12 MHz, MICROCONTROLLER, PQFP44
M43C505F 4-BIT, MROM, 2 MHz, MICROCONTROLLER
相关代理商/技术参数
参数描述
MD80C32-25 制造商:未知厂家 制造商全称:未知厂家 功能描述:8-Bit Microcontroller
MD80C32-30 制造商:未知厂家 制造商全称:未知厂家 功能描述:8-Bit Microcontroller
MD80C51 制造商:TEMIC 制造商全称:TEMIC Semiconductors 功能描述:CMOS 0 to 44 MHz Single-Chip 8 Bit Microcontroller
MD80C51BH 制造商:ROCHESTER 制造商全称:ROCHESTER 功能描述:CMOS SINGLE - CHIP 8-BIT MICROCOMPUTER 64K program Memory Space
MD80C51FB 制造商:Rochester Electronics LLC 功能描述: